linux的日常管理
(1)w 自左到右分别为系统时间、系统运行时间、登录用户数、1分钟内的平均负载、5分钟内的平均负载、15分钟内的平均负载;
平均负载表示单位时间内使用 CPU的进程数;
(2)top 每3s更新一次状态;默认按CPU使用率排序,使用shift+m可以切换成以内存使用率排序;
第一行与w内容相同;
第二行Tasks表示进程状态;
第三行CPU使用率:us用户占用、sy系统占用、id空闲、wa等待占用(主要指IO、网络导致的)
第四行内存状态,buffers表示CPU和内存之间的缓冲区,cached表示内存和IO之间的缓存区;
第五行交换区状态;
PID进程ID;USER表示运行该进程的用户;PR是运行优先级;NI是运行优先值,取值-20到19,值越低,优先级越高;VIRT虚拟内存;RES 实际使用内存;SHR共享内存; S运行状态;
top -bn1 可以直接打印出所有状态;
cat /proc/cpuinfo 查看cpu信息
(3)vmstat
r r==Run,表示处在run状态的进程数;
b b==block,表示处在阻塞状态的进程数;
压测命令:
dd if=/dev/zero of=/root/1.log bs=1M count=1000 &
其中&表示后台运行,此时可以看到b的数值增大了,如果b没变化,说明压力还不够;
swpd 表示交换区大小,si表示in,进入内存,so表示out,从内存出来;
io bi表示读,从硬盘读到内存;bo表示写,从内存写到硬盘,上个压力测试中,可以观察到bo的数值因为在写数据增大了很多;
system in表示中断数;cs表示进程上下切换数;us表示CPU占用率;wa表示等待的进程所占百分比;
(4)ps aux列出所有进程 ;
ps -l列出当前终端运行的进程;
ps -le 列出所有服务的进程;
STAT : S表示sleep休眠,s表示是父进程,<表示是高优先级,N表示低优先级 ,+表示前台运行的,R表示running运行中,l表示多线程进程,L表示lock,Z表示僵尸进程
pstree 树状显示
free -m查看内存情况
netstat -lnp 列出系统所有的监听端口
netstat -a 查看系统所有TCP/IP状态
netstat -an|wc -l 查看连接数
sar -n DEV 1 10查看网卡流量
IFACE表示接口,rxpck表示收到包数,txpck表示发送包数,rxkb表示接受流量,单位KB,txkb表示发送流量,单位KB;