hello,world hello, linux hello, everyone linux基础小课堂持续更新~~~

进程管理

  ps  process snapshot

查看当前终端上运行的进程
[root@youryg ~]#  ps 
[root@youryg ~]#  ps aux
[root@youryg ~]#  ps auxf


a 只能查看所有终端进程
u 显示进程拥有者
x 显示系统内所有进程
f  显示进程之间的父子关系(使用pstree查看更详细的父子关系

[root@youryg ~]# ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.0 193628 5568 ? Ss 11:00 0:13 /usr/lib/system root 2 0.0 0.0 0 0 ? S 11:00 0:00 [kthreadd] root 3 0.0 0.0 0 0 ? S 11:00 0:00 [ksoftirqd/0] root 5 0.0 0.0 0 0 ? S< 11:00 0:00 [kworker/0:0H] root 7 0.0 0.0 0 0 ? S 11:00 0:00 [migration/0] root 8 0.0 0.0 0 0 ? S 11:00 0:00 [rcu_bh] root 9 0.0 0.0 0 0 ? S 11:00 0:11 [rcu_sched]

user 进程拥有者
pid  process identify
TTY  进程在哪个终端运行
	 查看tty的方法:
	[root@youryg ~]  # tty
	 ? 表示这个进程开启的时候没有占用终端

time 进程占用cpu的总时间
cmd  进程名称
%cpu 进程占用的cpu百分比
%mem 进程占用memory百分比
VSZ	 进程占用的虚拟内存大小
RSS  占用的物理内存大小
STAT 当前进程状态
	 #man ps
	 R running
	 S sleep
	 T stop  
	 Z zombie(僵死,僵尸)
	
        D    Uninterruptible sleep (usually IO)
        R    Running or runnable (on run queue)
        S    Interruptible sleep (waiting for an event to complete)
        T    Stopped, either by a job control signal or because it is
             being traced.
        W    paging (not valid since the 2.6.xx kernel)
        X    dead (should never be seen)
        Z    Defunct ("zombie") process, terminated but not reaped by
            its parent.
        <    high-priority (not nice to other users)
        N    low-priority (nice to other users)
        L    has pages locked into memory (for real-time and
 	        custom IO)
        s    is a session leader
        l    is multi-threaded (using CLONE_THREAD, like NPTL
		        pthreads do)
        +    is in the foreground process group

按指定字段排序:

[root@youryg ~]# ps aux --sort %cpu | less [root@youryg ~]# ps aux --sort %-cpu | less

显示指定字段:

[root@youryg ~]# ps axo user,%cpu,command --sort -%cpu | less [root@youryg ~]# ps -eo user,%cpu,%mem,command --sort %cpu

[root@youryg ~]# ps -elf
-e  显示所有进程    
-l  长格式显示
-f  完整格式	
[root@youryg ~]# ps -e 常用

pstree 查看进程树 #pstree -a 显示参数 -p 显示pid -u 显示用户名

lsof(应用范围有限,只能查看带端口的进程) lsof -i:80 查看端口为80的进程

pidof #pidof 进程名称

pgrep # pgrep -l eyes 1179 xeyes

进程pid文件 #cd /var/run
[root@youryg ~]# cat /var/run/httpd/httpd.pid 12265

====================================== w [root@server ~]# w 16:51:43 up 8:30, 7 users, load average: 0.11, 0.27, 0.30 USER TTY FROM LOGIN@ IDLE JCPU
PCPU WHAT root :0 :0 08:22 ?xdm? 29:39 0.23s gdm-session- root pts/0 :0 14:13 1:43 0.30s 0.30s bash root pts/1 :0 11:19 5:19 0.62s 0.62s bash root pts/2 :0 14:13 1:39m 0.06s 0.01s less root pts/3 :0 14:54 7.00s 0.06s 0.01s w root pts/4 :0 16:25 25:51 0.06s 0.06s bash root pts/5 :0 16:40 7:11 0.24s 0.24s bash

======================================

who [root@server ~]# who root :0 2017-11-27 08:22 (:0) root pts/0 2017-11-27 14:13 (:0) root pts/1 2017-11-27 11:19 (:0) root pts/2 2017-11-27 14:13 (:0) root pts/3 2017-11-27 14:54 (:0) root pts/4 2017-11-27 16:25 (:0) root pts/5 2017-11-27 16:40 (:0)

======================================

users [root@server ~]# users root root root root root root root

======================================

top

实时的查看进程的状态 h|? 帮助 > 往下翻页 < 往上翻页 M 按内存排序 P 按cpu排序 k 输入pid杀死进程 h 打印帮助 q 退出

1 
f
W

R  排序反转   
z  彩色显示
r	调整进程的nice优先级

[root@youryg ~]# top -d 2 -p 1068 -bn1 [root@youryg ~]# top -u apache

================================================= 进程控制 按pid杀死进程 #kill 信号(signal) pid -1 HUP 重新加载进程或者重新加载配置文件 -9 KILL 强制杀死 -15 TERM 正常杀死(这个信号可以默认不写) -18 CONT 激活进程 -19 STOP 挂起进程 #kill -HUP pid #kill -STOP pid

#kill -l
#man 7 signal 所有信号的解释

#killall 信号 进程名称

#pkill -9 进程名称
#pkill -t 终端  
不加-9只杀死在终端上运行的进程,加-9连终端本身一起干掉
#pkill -u 用户名称
#xkill

====================================== 作业控制: 作业控制之jobs: ctrl+z 把程序放到后台(这方法会让程序在后台暂停) #fg %1 把程序调到前台,%是用来修饰job number,1就是job number。 #jobs 查看工作号 #bg %1 让暂停的程序在后台运行 #kill -9 %1 #kill -9 pid

====================================== 进程优先级

优先级本身是"不能"修改,通过nice值修改优先级。
普通账户只能调高nice值,不能往低调
root账户随便调
nice值越高,优先级越低。
nice值范围:-20到19

查看进程优先级
	# top
	# ps axo pid,command,nice  --sort=-nice | less
	# ps -elf
	PR:priority
	NI:nice

指定进程优先级
	#nice --15 firefox &   
修改进程优先级
	# renice 10 7116   nice值前面不能加-