红帽学习笔记[RHCSA] 第六课

第六课

进程

进程:已经启动的可执行程序的运行中的实例。每个进程都有自己的地址空间,并占用了一定的系统资源。

如何产生一个进程

  1. 执行程序或命令
  2. 计划任务

在终端中对进程管理

  1. 运行一个前台进程
[root@master Desktop]# firefox

(process:3731): GLib-CRITICAL **: g_slice_set_config: assertion `sys_page_size == 0' failed
# 会占用当前得终端
  1. 运行一个后台进程
[root@master Desktop]# firefox &
[1] 3796
[root@master Desktop]# 
(process:3796): GLib-CRITICAL **: g_slice_set_config: assertion `sys_page_size == 0' failed

[root@master Desktop]# 
  1. jobs查看当前终端下得进程
[root@master Desktop]# jobs
[1]+  Running            
  1. 前台后台切换
# 切换到前端 终端又被占用
root@master Desktop]# fg 1
firefox
# 切换到后端
root@master Desktop]# bg 1

Systemd 控制服务启动,守护进程

  1. 服务单元的状态
loaded   服务单元的配置文件已被处理
active (running)    运行中
active(exited)  某些一次性运行的服务已经陈工被执行并退出
active(waiting)服务已经运行,但正在等待某个时间
inactive    没运行
disabled 开机不运行
enabled 开机运行
static  不能够被设置为开机启动 
  1. systemd命令
# 查看服务状态
systemctl status sshd
# 开启
systemctl start sshd
# 结束
systemctl stop sshd
# 重启
systemctl restart sshd
# 是否开机启动
systemctl is-enabled sshd
# 是否活动
systemctl is-active sshd
# 列出所有的服务单元
systemctl list units 
# 列出所有服务单元文件
systemctl  list-unit-files 

本次课程涉及到的命令

ps -aux查看进程

注:该命令不加-也是好用的。

# a显示所有前台进程,x显示所有后台进程 u显示用户
[root@centos ~]# ps -aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0  51896  3256 ?        Ss   Jul02   1:59 /usr/lib/systemd/systemd --system --deserialize 21
root         2  0.0  0.0      0     0 ?        S    Jul02   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    Jul02   1:54 [ksoftirqd/0]
root         5  0.0  0.0      0     0 ?        S<   Jul02   0:00 [kworker/0:0H]
root         7  0.0  0.0      0     0 ?        S    Jul02   0:23 [migration/0]
root         8  0.0  0.0      0     0 ?        S    Jul02   0:00 [rcu_bh]
root         9  0.0  0.0      0     0 ?        S    Jul02   6:56 [rcu_sched]
root        10  0.0  0.0      0     0 ?        S    Jul02   1:31 [watchdog/0]
  • 最上一行信息介绍
USER    哪个用户产生进程
PID     进程号
%CPU    占用cpu资源的百分比
%MEM    占用物理内存的百分比
VSZ     虚拟内存的占用
RSS     占用物理内存的大小单位(kb)
TTY     只以哪一个控制台(终端)运行程序
STAT    状态
        R 表示正在运行
        +表示后台进程
        S表示睡眠状态的进程
        s包含子进程(父进程停止,子进程也会停止)
        T停止状态的进程(显示T的可以被唤醒)
START   进程的启动时间
TIME    进程占了CPU多长时间
COMMAND 这个进程哪个命令来的

ps -le查看进程

# l显示详细信息 e显示左右进程 f标准格式
[root@centos ~]# ps -efl
F S UID        PID  PPID  C PRI  NI ADDR SZ WCHAN  STIME TTY          TIME CMD
4 S root         1     0  0  80   0 - 12974 ep_pol Jul02 ?        00:01:59 /usr/lib/systemd/systemd --system --deserialize 21
1 S root         2     0  0  80   0 -     0 kthrea Jul02 ?        00:00:00 [kthreadd]
1 S root         3     2  0  80   0 -     0 smpboo Jul02 ?        00:01:54 [ksoftirqd/0]
1 S root         5     2  0  60 -20 -     0 worker Jul02 ?        00:00:00 [kworker/0:0H]
1 S root         7     2  0 -40   - -     0 smpboo Jul02 ?        00:00:23 [migration/0]

top 动态查看进程

top - 17:05:45 up 56 days,  6:46,  1 user,  load average: 0.11, 0.05, 0.05
Tasks: 126 total,   1 running, 125 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.3 us,  0.2 sy,  0.0 ni, 99.5 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  5946700 total,   783956 free,  3881272 used,  1281472 buff/cache
KiB Swap:  4194300 total,  4097288 free,    97012 used.  1686820 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                                                                                         
15056 root      20   0  990364  31204   7096 S   0.7  0.5  34:30.57 dockerd-current                                                                                                                                                 
12612 root      20   0       0      0      0 S   0.3  0.0   0:00.06 kworker/1:1   
  • top拥有交互式命令
    ? 或H 弹出帮助信息
​   P 以CPU的使用率排序
​   M 以内存的使用率排
​   N 以PID的顺序排
​   q退出top
  • top 最上层显示的意义
# 第一行
当前时间 开机时间 几个用户 资源使用率:1分钟,5分钟,15分钟
# 第二行
总共任务数  运行的  睡眠的  停止的  僵尸进程
`注:什么是僵尸进程:父进程停止了 子进程没停止叫做僵尸进程。`
# 第三行
CPU使用率  us用户占用sy 系统占用的 ni改变过优先级的进程占用的 id空闲的  wa 等待进程  hi 硬件中断占用的  si 软中断占用的  st 有虚拟机是,虚拟占用的
# 第四行
物理内存:总数 使用中 空闲的  缓存区
# 第五行
虚拟内存:总数 使用中 空闲的  缓存区
# 第六行
PID USER PR 优先级 NI nice值   VIRT 申请的虚拟内存 RES常驻内存实际的 SHR 共享的  S 状态

free查看内存使用情况

# -h 是以人类能看的懂得样式输出
[root@centos ~]# free -h
              total        used        free      shared  buff/cache   available
Mem:           5.7G        3.7G        760M         33M        1.2G        1.6G
Swap:          4.0G         94M        3.9G

pstree 树状结构显示进程

# -p参数是显示子进程
[root@centos ~]# pstree -p
systemd(1)─┬─NetworkManager(701)─┬─{NetworkManager}(726)
           │                     └─{NetworkManager}(729)
           ├─abrt-watch-log(7869)
           ├─abrtd(7850)
           ├─atd(7480)
           ├─auditd(24144)───{auditd}(24153)
           ├─crond(31725)
           ├─dbus-daemon(660)

kill 杀掉进程

# -l  查看信号 -1 重启(让进程立即关闭,然后重新读取配置文件)-2 强制结束 (终止,力度轻)-9 强制结束 (强制关闭,用来立即结束程序)
# -15 正常终止 (正常关闭)-18 恢复后台 (可以让暂停的进程恢复执行,本信号不能被阻断)-19 前台与运行的放在后台(该信号可以暂停前台进程,相当于CTRL+Z。本新号不能被阻断)
[root@centos ~]# kill -15 pid

killall pkill用进程名字杀进程

猜你喜欢

转载自www.cnblogs.com/primadonna/p/11422402.html