Spiga

Linux关于TOP命令

Linux一般查看应用进程cpu或mem占用情况用pstop两个命令,但ps(ps -aux或ps -tax)只提供系统进程过去一段时间的一次性快照,要获得系统实时信息就需要用top命令了。
top命令输出:
top - 01:50:44 up 23 days, 14:52, 14 users, load average: 0.00, 0.00, 0.02
Tasks: 171 total, 1 running, 163 sleeping, 1 stopped, 6 zombie
Cpu(s): 3.5%us, 4.4%sy, 0.0%ni, 91.3%id, 0.1%wa, 0.0%hi, 0.7%si, 0.0%st
Mem: 2074988k total, 1666204k used, 408784k free, 287252k buffers
Swap: 4194296k total, 176748k used, 4017548k free, 1021808k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 2112 260 232 S 0 0.0 0:11.78 init
2 root 15 -5 0 0 0 S 0 0.0 0:00.00 kthreadd
3 root RT -5 0 0 0 S 0 0.0 0:00.72 migration/0
4 root 15 -5 0 0 0 S 0 0.0 0:04.70 ksoftirqd/0
5 root RT -5 0 0 0 S 0 0.0 0:00.11 watchdog/0

这里我主要讲top命令的内存mem的查看方法,top输出的VIRT列出了每个进程分配的虚拟内存,RES列出了驻留集内存,这个两个数字都包括了像库这样的共享资源,不准确。DATA列里则是更直接的实际内存值,要显示DATA列,需在执行top之后键入f,再从列表中选择DATA,DATA值就是每个进程数据和堆栈占用的内存量,因此这个值更准确。
带DATA列的输出:
top - 01:52:13 up 23 days, 14:53, 15 users, load average: 0.20, 0.05, 0.03
Tasks: 173 total, 1 running, 165 sleeping, 1 stopped, 6 zombie
Cpu(s): 0.3%us, 0.5%sy, 0.0%ni, 98.8%id, 0.3%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 2074988k total, 1666836k used, 408152k free, 287256k buffers
Swap: 4194296k total, 176748k used, 4017548k free, 1021860k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ DATA COMMAND
31542 hobbes 20 0 5900 1936 1456 R 0 0.1 0:00.02 700 top
1 root 20 0 2112 260 232 S 0 0.0 0:11.78 240 init
2 root 15 -5 0 0 0 S 0 0.0 0:00.00 0 kthreadd

献给汶川地震中死难的孩子

让人感动得哭的一首诗!

天堂路上的母子对话 

――献给地震中死难的孩子 
 孩子 
快抓紧妈妈的手
去天堂的路
太黑了
妈妈怕你
碰了头
快抓紧妈妈的手
让妈妈陪你走

妈妈
我怕
天堂的路
太黑
我看不见你的手
自从
倒塌的墙
把阳光夺走
我再也看不见
你柔情的眸

孩子
你走吧
前面的路
再也没有忧愁
没有读不完的课本
和爸爸的拳头
你要记住
我和爸爸的模样
来生还要一起走

妈妈
别担忧
天堂的路有些挤
有很多同学朋友
我们说
不哭
哪一个人的妈妈都是我们的妈妈
哪一个孩子都是妈妈的孩子
没有我的日子
你把爱给活的孩子吧
妈妈
你别哭
泪光照亮不了
我们的路
让我们自己
慢慢的走
妈妈
我会记住你和爸爸的模样
记住我们的约定
来生一起走------

(注:这首诗是我在新浪网上看到的,作者不详)

深圳红树林


去年在深圳红树林同学聚会时照的,风景很不错的地方,临海!
Posted by Picasa

sysctl.conf文件里的参数解释

sysctl.conf文件里的参数解释

引用自:FreeBSD下构建安全的Web服务器
作者:heiyeluren

一般优化系统主要是重新编译内核,去掉一些不要的驱动等等,你可以参考我在我Blog上写的关于编译内核的文章。我们这里对网络和内核一些选项进行优化和安全设置。编辑 /etc/sysctl.conf 文件,在里面加入如下内容:(有注释)

#最大的待发送TCP数据缓冲区空间
net.inet.tcp.sendspace=65536

#最大的接受TCP缓冲区空间
net.inet.tcp.recvspace=65536

#最大的接受UDP缓冲区大小
net.inet.udp.sendspace=65535

#最大的发送UDP数据缓冲区大小
net.inet.udp.maxdgram=65535

#本地套接字连接的数据发送空间
net.local.stream.sendspace=65535

#加快网络性能的协议
net.inet.tcp.rfc1323=1
net.inet.tcp.rfc1644=1
net.inet.tcp.rfc3042=1
net.inet.tcp.rfc3390=1

#最大的套接字缓冲区
kern.ipc.maxsockbuf=2097152

#系统中允许的最多文件数量
kern.maxfiles=65536

#每个进程能够同时打开的最大文件数量
kern.maxfilesperproc=32768

#当一台计算机发起TCP连接请求时,系统会回应ACK应答数据包。该选项设置是否延迟ACK应答数据包,把它和包含数据的数据包一起发送,在高速网络和低负载的情况下会略微提高性能,但在网络连接较差的时候,对方计算机得不到应答会持续发起连接请求,反而会降低性能。
net.inet.tcp.delayed_ack=0

#屏蔽ICMP重定向功能
net.inet.icmp.drop_redirect=1
net.inet.icmp.log_redirect=1
net.inet.ip.redirect=0
net.inet6.ip6.redirect=0

#防止ICMP广播风暴
net.inet.icmp.bmcastecho=0
net.inet.icmp.maskrepl=0

#限制系统发送ICMP速率
net.inet.icmp.icmplim=100

#安全参数,编译内核的时候加了options TCP_DROP_SYNFIN才可以用
net.inet.icmp.icmplim_output=0
net.inet.tcp.drop_synfin=1

#设置为1会帮助系统清除没有正常断开的TCP连接,这增加了一些网络带宽的使用,但是一些死掉的连接最终能被识别并清除。死的TCP连接是被拨号用户存取的系统的一个特别的问题,因为用户经常断开modem而不正确的关闭活动的连接
net.inet.tcp.always_keepalive=1

#若看到net.inet.ip.intr_queue_drops这个在增加,就要调大net.inet.ip.intr_queue_maxlen,为0最好
net.inet.ip.intr_queue_maxlen=1000

#防止DOS攻击,默认为30000
net.inet.tcp.msl=7500

#接收到一个已经关闭的端口发来的所有包,直接drop,如果设置为1则是只针对TCP包
net.inet.tcp.blackhole=2

#接收到一个已经关闭的端口发来的所有UDP包直接drop
net.inet.udp.blackhole=1

#为网络数据连接时提供缓冲
net.inet.tcp.inflight.enable=1

#如果打开的话每个目标地址一次转发成功以后它的数据都将被记录进路由表和arp数据表,节约路由的计算时间,但会需要大量的内核内存空间来保存路由表
net.inet.ip.fastforwarding=0

#kernel编译打开options POLLING功能,高负载情况下使用低负载不推荐SMP不能和polling一起用
#kern.polling.enable=1

#并发连接数,默认为128,推荐在1024-4096之间,数字越大占用内存也越大
kern.ipc.somaxconn=32768

#禁止用户查看其他用户的进程
security.bsd.see_other_uids=0

#设置kernel安全级别
kern.securelevel=0

#记录下任何TCP连接
net.inet.tcp.log_in_vain=1

#记录下任何UDP连接
net.inet.udp.log_in_vain=1

#防止不正确的udp包的攻击
net.inet.udp.checksum=1

#防止DOS攻击
net.inet.tcp.syncookies=1

#仅为线程提供物理内存支持,需要256兆以上内存
kern.ipc.shm_use_phys=1

# 线程可使用的最大共享内存
kern.ipc.shmmax=67108864

# 最大线程数量
kern.ipc.shmall=32768

# 程序崩溃时不记录
kern.coredump=0

# lo本地数据流接收和发送空间
net.local.stream.recvspace=65536
net.local.dgram.maxdgram=16384
net.local.dgram.recvspace=65536

# 数据包数据段大小,ADSL为1452。
net.inet.tcp.mssdflt=1460

# 为网络数据连接时提供缓冲
net.inet.tcp.inflight_enable=1

# 数据包数据段最小值,ADSL为1452
net.inet.tcp.minmss=1460

# 本地数据最大数量
net.inet.raw.maxdgram=65536

# 本地数据流接收空间
net.inet.raw.recvspace=65536

#ipfw防火墙动态规则数量,默认为4096,增大该值可以防止某些病毒发送大量TCP连接,导致不能建立正常连接
net.inet.ip.fw.dyn_max=65535

#设置ipf防火墙TCP连接空闲保留时间,默认8640000(120小时)
net.inet.ipf.fr_tcpidletimeout=864000

无须紧张,无须强硬,外国已经乱套 (转)

       关于西藏暴乱,我当时是在法国,通过youtube也看到了很多后续事件,就在几天前,大概是18号左右。法国国际广播电台出了一个节目,是两个法国教授在电台上辩论西藏问题,有亲中国派的,有亲独立派的。而后两个人基本上是吵起来了。而后世界报,法国大报纸全都开始骂总统撒科齐,因为他一直没有发表看法,报纸都有浅意思说他不敢于表明立场。而法国报纸普遍认为法国中国最亲密的西方国家,法国中国有别的国家没有的影响力。无论是支持或者反对,法国都应该表态,以显示大国地位。反倒西藏问题实质没有那么重要,这个和德国是完全不一样的。事不凑巧,法国正在地方选举,选举市长和地方政府。反对派,在大选中落选的罗亚尔女士先出来发表了看法,为了选表和政治资本。所以西藏问题反倒成了法国内部政治派系混战的天下了。总统当然不会坐以待毙,然后就发表了个声明。当然对中国北京是没好处的,但是法国总统自己也因为这个又开始被法国报纸追杀。罗亚尔果然厉害,自己不是总统不会被邀请,她当然可以随便说了,但是撒科齐就没有那个运气了。而真正的法国人是怎么想的?其实社会的左派和右派民众都认为,其实西藏就根本不是问题。一向认为巴黎第四大学(索帮大学,左派)是法国社会民族政治的中心,那里的观点就是,中国正在民主化,需要时间和理解。而政治精英派的大本营巴黎政治学院(右派),疯狂说西藏,只是政治精英想在国际政治上有所表演,因为法国影响力衰退是大家都承认的事情。所以就因为这样,总统处于自己,以及被巴黎政治学院从背后吹风。 波兰的表态更是在法国民众中被耻笑。因为法国人精明的看到波兰的表态只是想讨好欧盟,尤其是法德中心体,尤其上这两国的中央政府法国巴黎政治学院当然喜欢听到自己有支持者,但是民众都看太明白了。

在这次根本和法国没关系的事件中,大家都看到了,西方本国自己的政治都打成了一团。只是为了个自的政治利益而已。

而欧盟的两个表态又重撮了欧盟本身,在欧盟一体化的危机刚过,法国的地位受到挑战,而后科所窝的独立,西班牙等国家的强烈反对,以及德国的支持,都让欧盟感觉到政治无力,而这次在斯洛文尼亚的会议,更让欧盟难过,因为显示了欧盟无法达成统一的政治力量。英国处于对自身将举行奥运,以及本身就有分裂问题(北爱尔兰)所以力挺北京,bbc作为传统的反本国政府的东西,就更有理由追杀英国首相,另外外相本身就是亲中国的,所以这个声明和他也脱不了关系。而在野党和工党的大战一触即发,北爱尔兰也在暗涌。英国内部的政治斗争才刚开始。

而后的德国,这次比较厉害是因为2007年的外交对抗的结果,德国社会是完全右倾的,议会里,右派占了400多席次,左派才80多。所以这次的事件对德国民众冲击比较大。但是德国急于表态是因为他们有恢复大国政治的想法。因为只有能冲击包括中国,俄罗斯,美国这三个国家的事件出现后,德国才有表现的机会,因为只有足够的大事件才能表现出他足够大的声音。而民间估计错了政府的考虑,因为2007政府和商业界受到教训,所以他们不敢有所表示,也只能在欧盟声明中略微表现而已,所以德国媒体不仅夸大事实,也追杀起政府。因为民间确实很着急他们德国的政治前途。这个德国是我们最应该注意和防范的,因为他的情况和法国正好相反。
西 班牙和葡萄牙,都有分裂问题,所以西班牙和葡萄牙的支持可以理解。尤其是西班牙反对科所窝的独立,已经看出西班牙一贯的反独立立场了。意大利因为和法国有 敏感的高斯岛问题(高斯是法国的分裂问题,有很多年了,分裂后的最大主张就是加入意大利)所以意大利也无从表态,如果反对北京,那么它就是给法国了一个大 难题,高斯岛分裂的可能性变大。如果赞成的话,那刚好在欧盟内和法国唱了反调。显然意大利在欧盟中的地位不及法,德,英。出于梵蒂冈的考虑,梵蒂冈也很沉 默,而意大利更是要看北京的法国的后续才敢于表态。所以意大利是最沉默的。当然做法和德国一样,在欧盟宣言下偷偷表述一下而已。

美 国现在也是护不了那么多了,美国1年的大选就在民主党内斗里动荡呢。因为台湾大选后,美国开始了对中国政策的调整,而忙于国内政治斗争还转不过身来说这个 问题。共和党的布什表态的话,说不好被民主党骂,加上他的战争情形,估计党内会和他算账。而民主党内斗的一片狼及,更不会回应海外问题,因为噢巴马一回答,希拉里就要心里偷笑了。

新德里当然是最应该注意的,但是印度自己的社会机构也成了他们自己的一个问题,第一是印度人大多数是印度教徒,对佛教根本不理睬。而印度也缺少资源对西藏问题发表言论。不过城门失火殃及鱼池。1955年被印度入侵成了保护国的尼不尔也暴乱了。很有可能,这次事件会波及本来印度自己身的利益地区。所以印度也不敢多说话。

总上,外国,尤其是西方都在各国本国政治厮杀而大打西藏的事情。大家无须自乱,只要保持西藏发展,大家都知道这个只能是一个美国制造,印度参与,欧盟远观的不是问题的问题。而dl无论他内心如何考虑,其实他一死,就无所谓这样的事情了。

理想的分析后,我们无需变成鹰派,我们只要依法治理好自己的事情,让事件平息,而后让那些想大捞政治资本人的失去他们的法宝,才是最应该做的。