查看系统负载情况

1、w    (使用w命令查看负载情况)

查看load average 行查看1分钟负载情况 5分钟负载情况 15分钟负载情况,如果数值超过CPU核数,则说明现在CPU使用过程中有排队现象,核数不够

2、uptime    (查看当前系统负载情况)

同w命令

vmstat    (查看)

使用方法:

vmstat 1 5    (每隔一秒显示linux的负载状态,一共显示5次)

spacer.gif

r:一秒内平均进程

b:有多少任务被磁盘IO,网络阻塞

swpd:有多少数据量被交换,如果swpd值很大,且不断变更,内存有可能不够或内存溢出

free:空闲的物理内存数(是真正的空闲,未被任何程序占用)

buff:磁盘缓存(Buffer Cache)的大小(可提高系统I/O调用的性能)

cache:磁盘缓存(Page Cache)的大小(可提高系统I/O调用的性能)

si:swpd in 进入到内存    (如果不变说明内存稳定,如果总是变化则说明内存不够)

so:swpd out 从内存出来的(如果不变说明内存稳定,如果总是变化则说明内存不够)

bi:写入磁盘内容    (普通服务器如果持续超过1000则有可能有压力,频繁读写)

bo:读取磁盘内容    (普通服务器如果持续超过1000则有可能有压力,频繁读写)

in:每秒CPU的中断次数,包括时间中断

cs:每秒上下文切换次数

us:用户CPU时间。

sy:系统CPU时间,如果太高,表示系统调用时间长,例如是IO操作频繁。

id:空闲 CPU时间。

wt:等待IO CPU时间。

st:被偷走的cpu

top    (动态查看当前哪个进程占用CPU或内存最多)

使用方法:

top

    shift+m    (查看内存占用最多的进程)

PID    (进程ID)

USER    (那个用户运行的进程)

PR    (进程处理优先级,越小排的越靠前)

NI    (负值表示高优先级,正值表示低优先级)

VIRT    (进程使用的虚拟内存总量,单位kb)

RES    (进程使用的、未被换出的物理内存大小,单位kb)

S    (进程状态:D=不可中断的睡眠状态;R=运行;S=睡眠;T=跟踪/停止;Z=僵尸进程

%CPU    (上次更新到现在的CPU时间占用百分比)

%MEM    (进程使用的物理内存百分比)

TIME+    (进程使用的CPU时间总计,单位1/100秒)

COMMAND    (命令名)

top -bn1    (静态一次性显示当前服务器情况,可写入脚本中)

top -c -d 1    (-c是COMMAND显示更全,-d是1秒刷新1次)


sar    (查看磁盘,CPU,网卡等历史使用情况)

使用方法:

sar -n DEV    (查看今天的网卡流量使用情况,10分钟一次)

sar -n DEV 1 10    (查看现在网卡的使用情况,每一秒显示一次,一共显示10次)

    主要看rxbyt/s和txbyt/s这两列,分别是上行流量和下行流量

/var/log/sa/下有历史数据,历史数据以sa开头

sar -n DEV -f sa22    (查看历史记录)

sar -q    (查看历史负载)

sar -b    (查看磁盘历史使用)

sar    (与top等命令类似)


free    (查看当前系统还有多少剩余内存)

buffers    (缓冲区,CPU处理完的数据存到内存中,再由内存写入磁盘)

cached    (高速缓冲区,由磁盘读取到内存中供CPU处理)

ps    (查看系统当中的所有进程)

使用方法:

ps aux    (显示系统当前的所有进程)

USER    (该进程的用户)

PID    (进程ID)

%CPU    (占用CPU的百分比)

%MEM    (占用内存的百分比)

VSZ    (占用虚拟内存的大小)

RSS    (占用真正内存的大小)

TTY    (终端设备,?:在后台运行;pst/0:正在运行)

STAT    (表示进程状态:S:睡眠;s:主进程;<:优先级高;N:低优先级;+:前台运行的进程;R:正在运行的进程;L:内存分页;l:多线程进程;Z:僵尸进程;X:已经死掉的进程;T:暂停的进程;D:不能中断的进程)

START    (启动日期)

TIME    (一共占用CPU的时间)

COMMAND    (进程的命令)

ps -elf    (显示系统当前的所有进程)

ps aux |grep php    (过滤PHP进程)



crontab    (任务计划)

crontab -u root -l    (列出root用户的计划任务有哪些)

crontab -e    (添加任务计划)

任务计划时间为分,时,日,月,周

0 0 2 * *     (每月2号0点0分执行计划)

0 */8 * * *    (每隔八小时备份一次)

0 1,12,18 * * *    (每天1,12,18点执行一次)

30 9-18 * * *    (每天9:30-18:30,每小时执行一次)


linux系统服务

ntsysv    (查看并调整启动服务,调整完后需重启)

chkconfig    (查看在所有运行级别下有哪些服务开启)

chkconfig atd off    (将atd服务在2345级别下关闭)

chkconfig --list atd    (查看atd服务列表)

chkconfig --level 34 atd on    (将atd服务在运行3和4级别下打开)

系统启动服务列表位置:/etc/init.d/

chkconfig --add 123    (将123服务添加到启动服务中;123文件需要有执行权限)

chkconfig --del 123    (将123服务从启动服务中删除)


linux系统日志

/etc/logrotate.conf    (日志切割的配置文件)

/var/log/message    (jilu系统内核相关的日志)

/var/log/wtmp    (记录用户登陆历史)

    last    (查看用户登录历史命令)

/var/log/btmp    (记录无效用户登陆历史)

    lastb    (查看用户无效登陆历史)

/var/log/maillog    (记录邮件的发送情况)

/var/log/secure    (记录记录系统的登录信息,如ftp服务中的用户登陆情况)

var/log/dmesg    (记录启动过程中的硬件日志)

    dmesg    (查看当前的硬件情况)


kill    (杀死一个进程)

kill pid    (杀死某一个进程)

kill -9 pid    (强制杀死一个进程,杀不死的情况下)

kill -HUP ******    (重新加载某一个服务)

killall httpd    (杀死httpd服务)

killall -9 httpd    (强制杀死httpd服务)


文件改名、复制、备份操作

使用方法:

find /var/log/ -type f -mtime +10 -exec cp {} {}.bak \;    (将/var/log/下超过10天的文件找出,在该文件夹下将所有文件都进行备份,备份为.bak文件;{}表示之前的文件名,{}.bak表示被分为"文件名+.bak")

find /var/log/ -type f -mtime +10 |xargs -i cp {} {}.bak    (功能同上)

ls *.txt |xargs rm    (删除ls查找到的以txt为结尾的文件)

ls *.txt |xargs -i cp {} {}.bak    (备份所有txt文件)

nohup    (进程后台执行)

使用方法:

nohup sleep 100    (将sleep进程放到后台处理,并将进程输出的内容写入到nohup.out中)

screen

yum install -y screen

使用方法:

screen    (创建一个新的虚拟终端)

    ctrl + a + d    (暂时退出该终端)

    exit    或    crtl + d    (永久退出该终端)

screen -ls    (查看当前都有哪些虚拟终端)

screen -r 1529    (回到ID号为1529的screen虚拟终端下)

screen -S test    (创建一个名为test的虚拟终端)

screen -r test    (回到名字为test的虚拟终端下)

curl    (访问工具)

使用方法:

curl www.baidu.com    (访问百度网页,源代码)

curl -I www.baidu.com    (查看百度的当前状态)

200 访问正常;301,302 在服务端设定了跳转;

curl -x61.135.169.125:80 www.baidu.com -I    (访问指定IP的指定端口)

curl -u username: password: http://www.baidu.com    (访问需要输入用户名和密码的网址)

curl -o baidulogo.png www.baidu.com/img/bd_logo1.png    (下载百度的logo,并以baidulogo.png命名

curl -O www.baidu.com/img/bd_logo1.png    (下载百度的logo,以默认bd_logo1.png命名)