进程查看
ps aux
ps
是process status
的缩写,也就是进程状态的意思.
参数信息
a
:all
显示所用进程,不仅显示当前用户启动的进程u
:以user
为主的格式输出进程信息x
:显示当前用户所有终端下的进程
返回信息
USERPID %CPU %MEMVSZRSS TTYSTAT STARTTIME COMMAND root10.00.2446723864 ?Ss1月150:02 /usr/lib/syste root20.00.000 ?S1月150:00 [kthreadd] root40.00.000 ?S<1月150:00 [kworker/0:0H]
USER
启动该进程的用户PID
进程号%CPU
cpu占有率(%)%MEM
内存占有率(%)VSZ
占用虚拟内存(swap空间)的大小RSS
占用常驻内存(物理内存)的大小TTY
进程在哪个终端上运行,?
代表未知或不需要终端STAT
表示进程状态
S
睡眠R
运行Z
僵死<
高优先级N
低优先级s
父进程+
前台进程
START
进程开始的时间TIME
进程执行了多长时间COMMAND
启动该进程的命令ps ef
参数信息
e
:显示系统内所有进程的信息f
:full
使用完整格式显示进程信息
显示信息
基本与aux
类似
top
显示信息
top - 01:25:39 up5:25,4 users,load average: 0.03, 0.06, 0.07 Tasks: 101 total,4 running,97 sleeping,0 stopped,0 zombie %Cpu(s):1.3 us,1.7 sy,0.0 ni, 97.0 id,0.0 wa,0.0 hi,0.0 si,0.0 st KiB Mem :1882012 total,404536 free,199104 used,1278372 buff/cache KiB Swap:0 total,0 free,0 used.1486184 avail Mem PID USERPRNIVIRTRESSHR S %CPU %MEMTIME+ COMMAND 1056 root200511361112772 R0.70.12:33.37 rshim 1 root2004467238642444 S0.00.20:02.64 systemd
- 第一行,任务队列信息,和
uptime
命令执行的结果相同
系统时间: 01:25:39
运行时间: up 5:25
当前登录用户: 4 users
负载均衡: load average: 0.03, 0.06, 0.07 三个数字分别表示 1分钟 5分钟 15分钟的负载
- 第二行,任务
Tasks: 101 total, 4 running, 97 sleeping, 0 stopped, 0 zombie 总进程:101 运行:4 休眠:97 停止:0 僵尸进程:0
- 第三行,cpu占有率
%Cpu(s): 1.3 us, 1.7 sy, 0.0 ni, 97.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
- us - 用户空间(user space):1.3%
- sy - 内核空间(sysctl):1.7%
- ni - 改变过优先级的进程(nice):0.0%
- id - 空闲cpu(idol):97.0%
- wa - io等待(wait):0.0%
- hi - 硬中断占用(Hardware IRQ):0.0%
- si - 软中断占用(Software Interrupts):0.0%
- 第四行,内存状态
KiB Mem : 1882012 total, 404536 free, 199104 used, 1278372 buff/cache 总内存量 = 空闲内存 + 被使用内存 + 缓存的内存量
- 第五行,swap交换分区信息
KiB Swap: 0 total, 0 free, 0 used. 1486184 avail Mem
?linux
为了提高读写效率和速度,会将文件在内存中进行缓存,这一部分就是缓存内存cache memory
,即使你的程序运行结束后这部分内存也不会被释放,这就导致你的linux
系统中程序频繁读写文件后,可用物理内存变少,当变少到物理内存不够用时,就需要物理内存释放出来一部分空间,这部分被释放出来的空间信息会暂时被保留在swap
空间当中,等到程序要运行需要这部分数据时,再从Swap
分区中将其恢复到内存当中,所以当Swap
的used
值在频繁变化时,就说明此时,系统的物理内存不够用了.
- 第六行,字段含义与
ps aux
基本相似top -p 进程pid
可以只看对应pid
的进程信息
- 第六行,字段含义与
nice -n 10 XXX
: 将xxx
进程启动时使用nice
命令可以设置它的优先级为10,这个数值的范围是(-20~19),数值越小,优先级越高.renice -n -20 17265
:将pid = 17265
的进程的优先级重新设置为-20
进程作业控制
./xxx.sh &
将要启动的进程,后台运行.jobs
可以查看后台运行的进程.
[2]+ 运行中 nice -n 10 ./minio server /data/minio.data/ &
fg 2
:fg
+jobs编号
将进程提到前台.ctrl + z
: 将进程变为停止状态.bg 2
:bg
+jobs编号
后台运行这个程序.
服务管理工具service
和systemctl
是Linux
管理服务的两种方式.
- 第一行,任务队列信息,和
service
实际上是去/etc/init.d
目录下去执行相关程序
service redis start 等同于 /etc/init.d/redis start
service xxx start
开启服务
service xxx stop
关闭服务
service xxx restart
重启服务
service xxx status
查看服务状态
systemctl
是Linux
最新的初始化系统init
,作用是提高系统的启动速度,systemctl
也兼容service
命令,即systemctl
也会到init.d
目录下去执行相关程序.
systemctl start xxx
开启服务
systemctl stop xxx
关闭服务
systemctl restart xxx
重启服务
systemctl status xxx
查看服务状态
systemctl reload xxx
重新加载服务
systemctl enable xxx
开机启动服务
【Linux-进程管理】systemctl disable xxx
开机停止服务