一.查看文件状态
1.df 显示磁盘用量
例子: df -h(human 以人类可读方式显示磁盘用量)
2.du 计算目录下文件占用磁盘的大小
例子: du aaa.tar.gz 查看文件真实大小
du -s Desktop/ 查看文件夹真实大小
du -sh Desktop/ 以人类可读方式查看文件夹真实大小
3.free 查看内存的大小,有没有剩余
例子: free
4./proc文件系统 查看内核参数
5.系统日志
常见系统日志放在var/log/目录下
二.进程相关
进程的状态:
S -- sleeping
T -- stop
R -- running
D -- deepsleeping深度睡眠,一般为正在读写硬盘的进程
Z -- 僵尸进程,进程失去控制
< -- 高优先级进程
N -- 低优先级进程
1.top命令 能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。
top显示
PID(进程ID) user(进程拥有者) pr(优先级) ni virt(占用虚拟内存大小) res(占用实际内存大小) shr(共享内存大小) s(状态) %cpu(占用cpu大小) %mem(占用内存百分比) time+ command(执行了什么命令)
top是交互式命令
输入M 按内存大小排序
输入k再输入进程id,可以结束某个进程 默认发15号信号如不响应就发第9号信号强制杀掉该进程
输入q 退出
输入? 看帮助
输入>和< 来回翻页
输入r 把进程优先级调高或调低,输入进程号,输入优先级。
2.kill命令家族 专门给进程发信号
例子:
kill -l 可以看kill命令能发哪些信号
kill pid 默认发15号信号结束某pid进程
kill -9 pid 发9号信号强制结束某pid进程
killall httpd 干掉所有名字叫httpd的进程
killall -9 httpd 强制干掉所有名字叫httpd的进程
skill shrek 干掉用户shrek下的所有进程
skill -9 shrek 强制干掉用户shrek下的所有进程
skill -9 pts/2 强制干掉控制台pts/2下的所有进程
pkill -u shrek 更精确的指定干掉用户shrek下的所有进程
3.ps命令 显示目前系统运行的各个进程
例子:
ps 显示当前登陆用户下运行的进程
ps aux 显示所有控制台和后台的进程
ps auxf 显示所有控制台和后台的进程和父子关系(进程id叫PID,该进程的父进程id叫PPID,所有进程的父进程为init)
ps -ef 也是显示所有控制台和后台的进程,只是显示的列数和ps aux有差别。(unix系统常用)
4.pstree命令 以树形的方式显示所有父子进程.
5.进程的优先级(哪个进程能更优先抢到CPU)
反映在top命令里面的ni值,范围 -20(优先级最高)到19(优先级最低)
6.进程的前台后台
在命令后面加&符号,可丢到后台.
例子:
ls -l & 丢到后台
ls -l 前台运行
输入jobs命令,可以查看系统所有后台任务,任务有任务ID.
kill %2 杀掉2号任务
fg %3 把第3号任务拿到前台运行起来
命令耗时较长可以CTRL+Z将命令暂停并丢在后台,
bg %3 把第3号任务拿到后台运行起来
nohup updatedb &
将updatedb命令丢到后台运行,即使退出控制台(shell退出后)该进程也仍然运行.
实际上这时updatedb已不是控制台的子进程而是init的子进程了,作为系统进程。