Linux中一切皆文件
(文件:读写执行(查看,创建,删除,移动,复制,编辑),权限(用户、用户组)。系统:(磁盘,进程))
对于我们开发人员来说,其实Linux更多偏向于使用即可!
基本概念
1、在Linux中,每一个程序都是有自己的一个进程,每一个进程都有一个id号!
2、每一个进程呢,都会有一个父进程!
3、进程可以有两种存在方式:前台!后台运行!
4、一般系统的服务都是后台运行的,而且都会常驻在系统中,只有关机才会结束。基本的程序都是前台运行的!
查看进程 ps
选项
-a 显示当前终端运行的所有的进程信息(当前的进程一个)-u 以用户的信息显示进程-x 显示后台运行进程的参数!
查看所有进程
ps -A
查看特定的进程。java进程。父进程id是7807
ps -ef | grep java
结果显示:
root 8104 7807 0 14:05 pts/1 00:00:00 grep --color=auto java
显示所有进程信息,连同命令行
ps -ef
--结果显示:
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 10:12 ? 00:00:01 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root 2 0 0 10:12 ? 00:00:00 [kthreadd]
root 3 2 0 10:12 ? 00:00:00 [ksoftirqd/0]
root 5 2 0 10:12 ? 00:00:00 [kworker/0:0H]
--字段含义
UID:表示用户ID
PID:表示进程ID
PPID:表示父进程号
C:表示CPU的占用率
STIME:进程的启动时间
TTY:登入者的终端机位置
TIME:表示进程执行起到现在总的CPU占用时间
CMD:表示启动这个进程的命令
显示所有进程更详细的信息,包括进程占用CPU、内存
ps -aux|grep sshd
--结果显示:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.6 127980 6544 ? Ss 10:12 0:01 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root 2 0.0 0.0 0 0 ? S 10:12 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 10:12 0:00 [ksoftirqd/0]
root 5 0.0 0.0 0 0 ? S< 10:12 0:00 [kworker/0:0H]
--字段含义:
USER:表示哪个用户启动了这个进程
PID :进程ID
%CPU:进程CPU的占用率
%MEM:进程物理内存的占用率
VSZ :进程占用的虚拟内存量 (Kbytes)
RSS :进程当前实际上占用了多少内存
TTY :进程是在哪个终端机上面运作,若与终端机无关,则显示 ?,另外, tty1-tty6 是本机上面的登入者程序,若为 pts/0 等等的,则表示为由网络连接进主机的程序。
STAT:该程序目前的状态,主要的状态有
R :运行;该程序目前正在运作,或者是可被运作
D:不可中断:一般是IO进程
S :中断;该程序目前正在睡眠当中 (可说是 idle 状态),但可被某些讯号 (signal) 唤醒。
T :停止:该程序目前正在侦测或者是停止了
Z :僵尸:该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (僵尸) 程序的状态
START:该进程启动的时间点
TIME :进程从启动后到现在,实际占用CPU的总时间
COMMAND:启动该进程的命令
根据CPU、内存使用来降序排序
ps -aux --sort -pcpu
ps -aux --sort -pmem
查看进程树 pstree
#看父进程我们一般可以通过目录树结构来查看!
1.需要先安装
yum install psmisc
2.pstree -pu
-p 显示父id
-u 显示用户组
杀死进程 kill
杀掉进程,等价于window结束任务!
kill -9 进程的id
killall 进程名称
