小Q:酸甜苦辣自己尝,喜怒哀乐自己扛,你就是自己的太阳,无需借别人的光。
==========================================================
今天开始接触维护服务器时候的日常管理,当然只是看了第一阶段,总的来说今天的进度稍微慢了点,晚上跟人出去吃了个饭;主要是一些命令去查看系统里的一些参数,期间接触了一些常识,在下一篇再写。
查看系统负载: uptime w
查看cpu状况 : cat /proc/cpuinfo
系统负载对应 cpu 核数,负载大于核数,负载就偏高了,否则偏低;
cpu 只能处理自己能接受到的进程,进程太多,会让他们等待,每个进程有固定执行时间,超过后就被挂起,轮过一圈再继续执行;
可以理解为:限时打电话的电话亭,一个核对应一个 u,一个进程一个人,排队打
查看系统负载: vmstat
vmstat 1 6 :1表示1秒钟显示一次,5表示一共显示5次。也可以不加1或者5
r:在跑这多少进程 b:被阻塞的进程,一般是因为网速或者磁盘io跟不上cpu
swpd:多少数据被交换(kb) si:进入内存中的数据量 so:来自内存的数据量
bi:理解为读磁盘 bo:写磁盘 in:中断次数 us:占用cpu的百分比
扩展:http://blog.chinaunix.net/uid-22741583-id-3087675.html
动态查看具体进程:top
cpu% + mem% 重点看,默认cpu使用排序,而 M 或 shift +m 按men%使用排序
用户态的cpu使用:us 内核态的cpu使用:sy
PR :0~39 NI -20~19 vipT:虚拟内存
RES:物理内存 SHR:共享内存
选项: -bn1 不动态,一次性显示,用于写脚本
-c 显示最后一列使用进程的详细信息
-d 1 默认三秒更新一次进程,此选项即设置 1 秒更新一次
查看PID:ls /proc 每个PID 是一个进程,里边包含多个目录和文件
扩展:http://www.cnblogs.com/fengyv/archive/2012/07/11/2585666.html
更多的查看状态 sar:
查看系统状态信息:不止可以显示cpu 磁盘 内存等信息,还可以查看网卡的使用情况,被称“瑞士×××”
网卡的带宽以 bite 为单位,而计算机以 Byte(=8bite)为单位;
显示网卡信息: sar -n DEV 主要查看进网口 rxbyt 和出网卡 txbyt ;
查看洗盘使用: sar -b
查看cpu使用 : sar -p 或直接 sar
查看历史负载: sar -q
安装: yum install -y sysstat 存放路径: /var/sa/
可以在每个命令后面加两列数字,如:sar -p 1 10 表示每秒更新一次,打印十次
扩展:http://blog.chinaunix.net/uid-23177306-id-2531032.html
查看内存 free:
以kb为单位,可以加选项 -m -g
buffer是即将写入到磁盘里去的数据暂存的内存区域,
cached是从磁盘里读出来的数据暂存的内存区域。
扩展:http://os.51cto.com/art/201004/193160.htm
查看进程: ps
ps aux = ps -elf
RSS :表示内存使用量 TIME:占用 cpu 多久了
STAT: S 进程在休眠 s 父进程 < 高优先级 N 低优先级
+ 前台运行 L 多线程 R 正在运行 L 被锁定
x 以被杀死 T 被暂停 D 不可被中断 Z僵尸进程
扩展:http://www.360doc.com/content/10/0301/14/61497_17201579.shtml
查看网络状态 netstat:
查看系统当前监听端口 netstat -lnp
查看系统网络连接状况 netstat -an
所谓服务与客户的通信就是在监听端口;-an的目的就是为了 cs (client和searve)
监听端口内容:
rsync 同步数据 sendmail 发送邮件 ngnix web服务 memcached 缓存服务
netstat -an 为了看 tcpip 和 socket,后者是Linux和unix特有的实现通信的软件
一般过虑查看某个端口的并发量,如:netstat -an | grep IP:端口 | grep -ic 服务名
根据并发量观看系统压力。
扩展:http://www.cnblogs.com/ggjucheng/archive/2012/01/08/2316661.html
抓包工具 tcpdump和tshark:
有时候带宽突然被跑满,就需要抓一下包,如果来源IP与目的IP太多,就可能被***了。
安装: yum install tcpdump
直接 tcpdump 不显示号,只显示域名和端口名等
选项:-c 100 指定抓包数量 -nn 更直观的显示包中流向的内容
-i eth0 指定查询的网卡 -s0 使得包中的内容更完整
-r 1.cap 查看包中流向内容
包中流向内容:
时间 毫秒数 来源IP(host) 目的IP(host) 状态 数量······
比如: tcpdump -nn -i eth0 -c 100 tcp port 80 host
192.168.1.12 -w 1.cap
tcp:网络协议类型 port 80 抓80端口 host IP 指定来源IP
-w 1.cap 将真实内容写入1.cap;若改为 (> 1.cap)则只是将流量内容写进1.cap 后者可用 cat 查看,前者必须借用软件来看
安装抓包工具 tshark:
yum install -y wireshark
更加直观的查看包中流向内容的命令如下
tshark -n -t a -R http.request -T fields -e "frame.time" -e "ip.src" -e "http.host" -e "http.requeste.time" -e "ip.src" -e "http.host" -e "http.request.method" -e "http.request.uri"
扩展:http://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html
好: http://blog.csdn.net/fengye245/article/details/5507371
常见的问题:
转载于:https://blog.51cto.com/tengxiansheng/1697972