1. 引言
当有人问你的常用的几个Linux命令时候,不要说你会ls,cd ..的,这样逼格不够高。
2. Linux高端命令使用
2.1 top命令
top程序提供运行系统的动态实时视图,它可以显示系统概要信息以及当前由Linux内核当前管理的任务列表。
(1)界面的命令使用说明,其他可看help
1. 回车 / 空格都可以刷新显示
2. u 匹配用户
3. k 杀死进程
4. q 退出界面
5. m Memory/Swap Usage的开关
6. t Task/CPU States的开关
7. z 彩色/单色开关
8. 按1 可以展开多核cpu的情况
(2)扩展问题
在Linux系统中一个进程最多可以使用100%CPU吗?
答案是可以的,比如说4核的CPU,那么上限是400%。
注意:load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。
2.2 vmstat命令
vmstat(Virtual Memory Statistics 虚拟内存统计) 命令用来显示Linux系统虚拟内存状态,也可以报告关于进程、内存、I/O等系统整体运行状态。
-
-a:显示活跃和非活跃内存
-
-f:显示从系统启动至今的fork数量 。
-
-m:显示slabinfo
-
-n:只在开始时显示一次各字段名称。
-
-s:显示内存相关统计信息及多种系统活动数量。
-
delay:刷新时间间隔。如果不指定,只显示一条结果。
-
count:刷新次数。如果不指定刷新次数,但指定了刷新时间间隔,这时刷新次数为无穷。
-
-d:显示磁盘相关统计信息。
-
-p:显示指定磁盘分区统计信息
-
-S:使用指定单位显示。参数有 k 、K 、m 、M 默认单位为K(1024 bytes)
-
-V:显示vmstat版本信息。
vmstat -d 查看磁盘读写
[fanl@centos7 ~]$ vmstat -d disk- ------------reads------------ ------------writes----------- -----IO------ total merged sectors ms total merged sectors ms cur sec sda 7908 19 388593 10845 757 139 90012 12888 0 10 sr0 18 0 2056 17 0 0 0 0 0 0 dm-0 5762 0 323884 10665 851 0 59101 18976 0 10 dm-1 90 0 4920 12 0 0 0 0 0 0 [fanl@centos7 ~]$
2.3 df命令
Linux中df命令的功能是用来检查linux服务器的文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
[fanl@centos7 ~]$ df 文件系统 1K-块 已用 可用 已用% 挂载点 /dev/mapper/centos-root 17811456 4564120 13247336 26% / devtmpfs 919456 0 919456 0% /dev tmpfs 931624 0 931624 0% /dev/shm tmpfs 931624 9696 921928 2% /run tmpfs 931624 0 931624 0% /sys/fs/cgroup /dev/sda1 1038336 148728 889608 15% /boot tmpfs 186328 0 186328 0% /run/user/1000 [fanl@centos7 ~]$
在df -h 和df -i 显示使用率100%,基本解决方法都是删除文件。
df -h 是去删除比较大无用的文件-----------大文件占用大量的磁盘容量。
df -i 则去删除数量过多的小文件-----------过多的文件占用了大量的inode号
2.4 ps命令
要对系统中进程进行监测控制,用 ps 命令满足你。
ps 是显示瞬间行程的状态,并不动态连续;如果想对进程运行时间监控,应该用 top 工具。
[fanl@centos7 ~]$ ps l F UID PID PPID PRI NI VSZ RSS WCHAN STAT TTY TIME COMMAND 0 1000 16298 16297 20 0 115440 2052 do_wai Ss pts/0 0:00 -bash 0 1000 16385 16298 20 0 153236 1524 - R+ pts/0 0:00 ps l [fanl@centos7 ~]$ ps -w PID TTY TIME CMD 16298 pts/0 00:00:00 bash 16386 pts/0 00:00:00 ps [fanl@centos7 ~]$ ps f PID TTY STAT TIME COMMAND 16298 pts/0 Ss 0:00 -bash 16387 pts/0 R+ 0:00 \_ ps f [fanl@centos7 ~]$
我们常用的选项是组合是 aux 或 lax,还有参数 f 的应用。
和grep命令的一起使用,ps -aux | grep test 找到test进程信息
2.5 free命令
free命令可以显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer
[fanl@centos7 ~]$ free total used free shared buff/cache available Mem: 1863252 284144 1333384 9696 245724 1394652 Swap: 2097148 0 2097148 [fanl@centos7 ~]$
2.6 其他系统监控工具
像netstat、iostat、pidstat,如果没有的可以安装,然后不懂的命令可以用man查看手册。