内存
命令:free -m 查看内存等信息
mem:显示内存的信息 total:内存的总大小
used:使用了多少 free:剩余了多少
shared:共享内存 buff/cache:缓存
available:可用内存的大小 swap:交换分区(相当于Windows里的虚拟内存)
交换分区使用的越少越好,使用的少表示内存够用
进程
命令:top 动态方式显示系统的信息(每隔几秒刷新一次)
第一行:
top - 03:06:42 up 6min,
当前时间 运行时间
2 users, loadaverage(平均负载): 0.12, 0.47, 0.31
当前2个用户在线 cpu在过去1分钟、5分钟、15分钟的负载
第二行:
Tasks: 200 total, 1 running, 199 sleeping,
目前一共有200个进程 1个进程在运行 199个在休眠状态(休眠状态分为可中断睡眠和不可中断睡眠,这里是不可中断睡眠)
0 stopped, 0 zombie
停止状态的进程数量 僵死/尸状态的进程数
第三行:
Cpu(s): 2.3%us, 0.7%sy,
用户空间进程占用cpu比例 内核空间进程占用cpu比例
0.0%ni, 97.0%id,
调整过优先级(nice值)的进程占用cpu比例 空闲的cpu比例
0.0%wa,
cpu等待IO完成的时间比例(该值大,那么说明磁盘太慢,或者内存不足)
0.0%hi, 0.0%si, 0.0%st
表示硬中断和软中断的比例 CPU被偷走的时间比例
第四行: 总大小 使用大小 剩余大小 (信息参考内存解释)
Mem: 995672 total, 659096 used, 76228 free, 260348 buffers
Swap: 2097148 total, 3336 used, 2093812 free, 173996 cached
正文信息说明
PID USER PR NI VIRT RES
7 root 20 0 0 0
SHR S %CPU %MEM TIME+ COMMAND
0 S 0.7 0.0 3:04.04 events/0
PID:进程ID USER:运行进程的用户 PR:优先级
NI:nice值(负值表示高优先级,正值表示低优先级)
VIRT:进程使用的虚拟内存总量(虚拟内存中数据可以清除且不影响系统运行)
RES:进程使用的物理内存总量(常驻内存中数据不能清除)
SHR:共享空间数据占用的内存大小
S:进程状态(S=休眠,R=运行,Z=僵尸进程,N=低优先级进程)
%CPU:CPU使用率 %MEM:内存使用率 TIME+:使用cpu的时长
COMMAND:哪个命令发起的进程
平均负载
单核cpu: 双核cpu:
1:表示当前是满负载 2:表示当前是满负载
小于1:表示是还没有达到最大负载 小于2:表示是还没有达到最大负载
大余1:表示已经超负载 大余2:表示已经超负载
ps命令:
ps aux:列出所有进程终端 ps -elf:列出所有进程
ps aux为标准格式输出:
USER , PID , %CPU , %MEM , VSZ , RSS , TTY , STAT , START , TIME , COMMAND
ps -elf为bsd格式输出:UID , PID , PPID , C , STIME , TTY , TIME , CMD
F:进程的标识 S:进程的状态 UID:发起进程的用户【运行这个程序的用
PID:进程的id PPID:这个进程的父进程的ID【没有进程都有其父进程】
SZ:进程占用的内存大小 TTY:表示进程是终端相关进程还是终端无关进程
tty* / pts/*是相关进程 ?是无关进程
终端相关进程:终端一旦关闭,进程就结束了
两个文件
/proc/meminfo /proc/cpuinfo
伪文件系统:/proc /sys
伪文件不是真实的文件,是物理硬件设备的映射 伪文件都是保存在内存中的
伪文件是在系统开始的时候生成,在系统关机的时候自动删除
伪文件可以用cat进行查看,但是不能用vi进行编辑
结束进程
kill(一定能用) killall / pkill(可能用不了:没有安装或者功能异常)
使用格式:kill 信号 进程id
信号:-9:立刻杀死进程 -15:等待用户访问结束以后,才杀死进程
killall:以名字方式来杀死进程 pkill:是ps命令和kill命令的结合,用来杀死指定进程
有的进程只能短暂杀死一瞬间,再查询还是会通过其他进程编号存在,这种进程称为看门狗进程
计划任务
定时完成一个特定操作
分为:一次性计划任务 周期性计划任务
at计划任务
在某个时间节点,执行一个操作
安装at:yum install at -t
启动at: at为软件名 atd为服务名
systemctl start atd 启动服务
systemctl enable atd 下次开机自动启动服务
systemctl status atd 查看服务状态
创建一个计划任务,任务要求是5分钟后
创建一个文件,名1。接着删除文件,名1。新建一个用户b 。删除一个用户b
使用at -c 编号查看任务内容,上图显示任务编号为2
at -c 2:
删除任务:atrm 编号
周期性计划任务
可以周而复始的执行
安装组件:yum install crontabs
启动服务:
systemctl start crond
systemctl enable crond
systemctl status crond
crontab的配置文件:/etc/crontab
创建计划任务:crontab -e 查看计划任务:crontab -l
时间: 分钟 小时 日 月 周 命令:
第一颗星对应分钟,值为0~59。 第二颗星对应小时,值为0~23。
第三颗星对应日期,值为1~31。 第四颗星对应月份,值为1~12。
第五颗星对应星期几,值为0~6。星期日=0或7
上图是我刚刚写的4个计划任务,从上往下,依次表示:
1、每隔5分钟创建一个名为12.txt的文件
2、每隔6分钟删除一个名为12.txt的文件
3、每年4月3日2点1分创建一个名为3.txt的文件
4、每年5月的每周2的3点2分删除一次名为3.txt的文件
删除任务:crontab -e 进入后,选择删除不需要的任务
今天就到这里,谢谢各位阅读,下篇见。