Linux 常见高危操作

1. 直接操作设备文件描述符

我们知道/dev目录下存放的是设备的文件描述符。直接往设备描述符中写入数据,将破坏整个设备,如:对于硬盘设备映射到/dev/目录下的文件描述符写入数据,将破坏该磁盘设备上面的文件系统,或者已有的数据。

echo  “ ”> /dev/sda,这样一个简单的命令就可以破坏整个磁盘上面的数据;
mkfs.ext3 /dev/sda1,创建文件系统;
fdisk /dev/sda ,重建分区;
dd if=/dev/zero of=/dev/sda,直接写入数据到磁盘设备文件描述符。

这些对于已经存在数据的硬盘而言,都是致命的。

2. rm -rf

通常,为了,一条命令就能删除一个目录下的所有文件,以及整个目录,我们会直接使用:rm -rf,有时还会给出这样的代码:rm –rf /$SOME_DIR_TOBE_DEL/,如果SOME_DIR_TOBE_DEL变量未被赋值,那么这条命令将会执行:rm –rf /,将整个Linux系统的根文件目录都删掉了,后果可想而知。

3. 重定向命令使用不当

正确的重定向标准输出和标准错误的方法是:>/dev/null 2>&1 ,关于连环重定向,可以参考这里的解释:>/dev/null 2>&1 含义。如果一不小心,可能会导致/dev/null 被重定向到0,1或2,导致整个系统异常。

| 1 分2 分3 分4 分5 分 (4.91- 11票) Loading ... Loading ... | 归档目录:实用脚本, 软件技术 | 标签: , |

WordPress “相关阅读”插件功能增强

本站用到了“相关阅读”插件,在文章尾部显示相关文章的链接,该插件非常实用。但是最近发现一个问题,就是当新的文章发布时,新文章尾部可以关联到已有文章,但是在老文章的相关阅读的列表并没有加入新发布的文章。感觉,应该是发布了新文章后,没有重建整个关联关系。插件本身为了性能考虑,应该只刷新了当前文章的关联信息,而没有刷新其他文章的。下面的代码分析也印证了这一点。

首先需要了解插件的运行流程,这里顺带发一下Yet Another Related Posts Plugin的代码分析。

阅读全文 »

| 1 分2 分3 分4 分5 分 (4.83- 12票) Loading ... Loading ... | 归档目录:建站技术 | 标签: , , |

每个程序员都应该知道的一些访问时延值

继续翻老文章,首先是从Jeff Dean的一篇PPT演示文稿中看到了这一页,觉得对这些数值形成概念还是挺有用的,就转过来了,经常拿出来看一下,最终能做到熟记于心,并能在理论分析和程序设计时用上。

numbers_everyone_should_know

尽管是大神给出的数据,也还是想考证一下数字的出处,于是又在搜索引擎中找了一下。找到了对这个数据比较好的总结和归纳:链接。还有一处:链接2。也附一下传说中的大神的介绍:Jeff Dean。坊间关于Jeff的传说也是非常多了,诸如,Jeff这个月写的代码量下降了,是因为他换了一幅新的键盘。

| 1 分2 分3 分4 分5 分 (4.85- 13票) Loading ... Loading ... | 归档目录:架构设计, 软件技术 | 标签: , , |

[转]每个Web开发者都应该知道的URL编码知识

每个web开发者都应该知道的url编码知识

原文路径:What every web developer must know about URL encoding
译文路径:每个 Web 开发者都应该知道的关于 URL 编码的知识
译文PDF下载

| 1 分2 分3 分4 分5 分 (4.33- 6票) Loading ... Loading ... | 归档目录:WEB网络 | 标签: , , |

每个程序员都应该知道的内存知识(PDF,英文)

每个程序员都应该知道的内存知识

非常经典的文章了,全面系统的介绍了计算机如何使用内存、缓存,内存控制器的原理等。适合各个层次的程序员研读。共分7大部分,有一部分被翻译成了中文:每个程序员都应该了解的内存知识【第一部分】,百度文库上面有整理好的第一部分的PDF:下载。英文汇总版:What every programmer should know about memory

| 1 分2 分3 分4 分5 分 (4.38- 8票) Loading ... Loading ... | 归档目录:架构设计 | 标签: , , |

微信后台存储架构

微信后台存储架构

腾讯微信架构师许家滔在2014年QCon上的演讲话题:微信后台KV存储架构,这里是演讲PPT

| 1 分2 分3 分4 分5 分 (4.64- 11票) Loading ... Loading ... | 归档目录:架构设计 | 标签: , , |

TCP/IP路由技术(卷1,第2版)

image

清晰无水印扫描版版:下载

| 1 分2 分3 分4 分5 分 (4.50- 8票) Loading ... Loading ... | 归档目录:WEB网络, 架构设计 | 标签: |

[转自林仕鼎]系统架构领域的一些学习材料

系统架构是一个工程和研究相结合的领域,既注重实践又依赖理论指导,入门容易但精通很难,有时候还要讲点悟性,很具有“伪科学”的特征。要在此领域进阶,除了要不断设计并搭建实际系统,也要注意方法论和设计理念的学习和提炼。

经常有同学询问如何学习,特贴一篇学习材料,供大家参考。09年时写的,在系统领域浩如烟海的文献中提取了一些我认为值得研究和学习的项目,没包括近几年出现的一些工作,也不够全面。不过,其实也足够了,看paper是一个从少到多再到少的过程。对问题本质、背景和发展历史有大致了解,再辅以hands-on的实践(长期的真正的实践),足以摸到本领域的门径。

阅读全文 »

| 1 分2 分3 分4 分5 分 (4.60- 10票) Loading ... Loading ... | 归档目录:架构设计, 软件技术 | 标签: , |

[转]TCP协议疑难杂症全景解析

说明:

1) 本文以TCP的发展历程解析容易引起混淆,误会的方方面面
2) 本文不会贴大量的源码,大多数是以文字形式描述,我相信文字看起来是要比代码更轻松的
3) 针对对象:对TCP已经有了全面了解的人。因为本文不会解析TCP头里面的每一个字段或者3次握手的细节,也不会解释慢启动和快速重传的定义
4) 除了《TCP/IP详解》(卷一,卷二)以及《Unix网络编程》以及Linux源代码之外,学习网络更好的资源是RFC
5) 本文给出一个提纲,如果想了解细节,请直接查阅RFC
6) 翻来覆去,终于找到了这篇备忘,本文基于这篇备忘文档修改。

阅读全文 »

| 1 分2 分3 分4 分5 分 (4.57- 7票) Loading ... Loading ... | 归档目录:IO编程, WEB网络 | 标签: |

DRBD源码分析(四)——activelog

大概有半年时间没有分析过DRBD的源码了。今天又翻出了DRBD的代码,想看一下activelog的作用和原理。

首先是看DRBD手册中关于activelog的介绍:http://www.drbd.org/users-guide-8.3/s-activity-log.html

手册的内容很精炼,只是简单介绍了工作原理,activelog中记录的是最近写入磁盘中的IO,每一条activelog对应着一个4M的数据块。62条这样的日志组成一个512bit的sector,整个activelog由若干个这样的sector组成。activelog的条数是可以指定的,在drbd.conf文件中可以配置,配置值为:activelog能记录的数据块的大小,注意不是日志的条数。该值的含义也就是:当出现故障重启时,需要在主备两端同步的数据块的总大小。

阅读全文 »

| 1 分2 分3 分4 分5 分 (4.50- 12票) Loading ... Loading ... | 归档目录:DRBD, 存储技术 | 标签: , , |
返回顶部