리눅스 시스템 관리 프로세스 [RHEL8]

이해 1. 공정

프로세스 (과정)

  • 프로그램은 정적 파일입니다
  • 프로세스는 실행중인 프로그램의 사본입니다
  • 수명주기 (준비, 운영 기간, 종료 기간) 프로세스의 존재
    프로세스 상태
상태 정의
R (TASK_RUNNING) 실행 상태 (RUNNING, READY)
S (TASK_INTERRUPTIBLE) 당신은 잠을 깨울 수
D (TASK_UNINTERRUPTIBLE) 절전 상태에서 깨어 수 없습니다
T (TASK_STOPPED) 일시 중단 된 상태
Z (EXIT_ZOMBIE) 죽은 상태

2. 프로세스 뷰어

pstree
프로세스 트리를 참조 -> 프로세스를 트리 구조로 표시됩니다
그림 삽입 설명 여기

프로세스와 스레드의
스레드가 실행하는 처리의 최소 단위이며, 처리의 자원 할당의 최소 단위 인
각 프로세스 자원이 또한 독립적 인
프로세스 [예컨대 스레드 걸레질이 프로세스는 연소 집 청소 등] 모든 스레드에 의해 공유되는 모든 자원
systemd -> 데몬은 시스템이 켜져 그와 동등한 과정의 리더십, 아래에 자동으로 열립니다

PS의
표시 전류 지령 실행 처리 상태 [각각 포함하는 두 가지 형식 UNIX, BSD]

프로세스 (BSD)에 연결된 디스플레이 단말기
엑스 단말 모든 프로세스 독립적 (BSD)를 표시
사용자 분류 프로세스 상태 정보를 표시합니다 (BSD)
에프 계층 구조 표시 프로세스 정보
o 보기 옵션, PID, 통신, 좋은 우선 순위, PRI, PCPU, 통계, PPID 지정
-이자형 보기 모든 프로세스 (uinx)
-에프 전체 포맷 정보를 표시합니다 (UNIX)
-H 디스플레이 프로세스 계층의 구조에 대한 정보
-o 보기 옵션, PID, 통신, 좋은, %의 CPU %의 MEM, 좋은 지정
  • 프로세스 (BSD)에 연결된 디스플레이 단말기
    그림 삽입 설명 여기
  • 디스플레이 터미널 프로세스와 아무 상관이있다 (BSD)
    그림 삽입 설명 여기
  • 모든 프로세스를 표시
    그림 삽입 설명 여기
  • 모든 프로세스의 디스플레이 계층 구조
    그림 삽입 설명 여기
  • 모두에 대한 정보를 표시합니다 BSD 스타일을 처리
    그림 삽입 설명 여기
  • 보기 모든 프로세스 (uinx)
    그림 삽입 설명 여기
  • 전체 포맷 정보를 표시합니다 (UNIX)
    그림 삽입 설명 여기
  • 관련 정보 표시 처리 계층 구조
    그림 삽입 설명 여기
    상세그림 삽입 설명 여기
  • 指定查看选项,pid,comm,nice优先级,pri,pcpu,stat,ppid【BSD风格】
    그림 삽입 설명 여기
  • 指定查看选项,pid,comm,nice,%cpu,%mem,nice【UNIX风格】
    그림 삽입 설명 여기
  • ps命令对当前的程序或者某些资源进行排序
    1.根据cpu进行排序
    正序:
    그림 삽입 설명 여기그림 삽입 설명 여기
    倒序:
    그림 삽입 설명 여기倒序显示前6行:
    그림 삽입 설명 여기ps命令显示信息
字段 解释
USER 用户名称
PID 进程id
%CPU cpu用量百分比
%MEM 内存用量百分比
VSZ 占用虚拟内存大小
RSS 常驻内存集大小
TTY 字符终端
STAT 进程状态
START 运行时间
TIME 占用cpu时间
COMMAND 进程名称

pgrep
显示指定信息进程–>注意此环境之下必须要启动所查询的用户进程

命令 解释
-u uid 显示指定用户进程
-U name 显示指定用户进程
-t tty 显示指定终端进程
-l 显示进程名称
-a 显示完整格式进程名
-P pid 显示指定进程的子进程
  • 显示指定用户进程
    1.查看用户 uid
    그림 삽입 설명 여기
    2.进行筛选
    그림 삽입 설명 여기
  • 显示进程名称&显示指定用户进程
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200205224350977.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzUxOTk1MQ==,size_16,color_FFFFFF,t_70
  • 显示指定终端进程
    1.查看指定进程的终端
    그림 삽입 설명 여기
    2.命令查看
    그림 삽입 설명 여기
  • 显示完整格式进程名
    그림 삽입 설명 여기
  • 显示指定进程的子进程
    1.创建子进程
    그림 삽입 설명 여기2.查询
    그림 삽입 설명 여기
    pgrep
    根据进程名称获取pid
    1.运行一个watch进程
    그림 삽입 설명 여기2.查看该命令操作所对应的进程id
    그림 삽입 설명 여기top
    实时的对于进程信息进行扫描并且显示出来
    1.top内部参数
P cpu百分比排序
M 内存百分比
T 累计占用cpu时间
l 开启/关掉uptime信息
t 开启/关闭task&cpu信息
s 调整刷新频率
k 终止进程
u 查看指定用户进程
  • 查看指定用户进程
    그림 삽입 설명 여기그림 삽입 설명 여기
    2.top命令参数
-d 指定刷新间隔
-b 以批次方式显示
-n 显示批次数量
  • 指定刷新间隔
    그림 삽입 설명 여기
  • 以批次方式显示
    그림 삽입 설명 여기
  • 显示批次数量
    그림 삽입 설명 여기
    3.top显示进程信息详解
top 系统当期时间
up 系统运行时常
user 登录当前系统的用户数量
load average 平均负载1分钟 5分钟 15 分钟的队列长度(uptime)
task 任务
%cpu cpu占用百分比
us 用户空间
sy 内核空间
ni nice调整时间
id 空闲时间
wa 等待io
hi 处理硬件中断
si 处理软件中断
st 被虚拟化程序占用的百分比
mem 物理内存
swap 交换分区占用

3.进程优先级

按照资源占用划分进程类

资源使用量 进程类型
cpu使用密集(计算量大) CPU-Bound
I/O使用密集 I/O-Bound

对于cpu使用密集的程序CPU分量会多,那么对于i/o可能会受阻。为了避免这样的情况发生,可以对cpu使用密集多分配,那么也要提高i/o使用密集程序的优先级。

优先级范围

  • 对Linux而言优先级被划分成固定个数(0-139)
  • 1-99为实时有优先级,数字越大优先级越高,不用手动处理系统自用【不能人为进行干预】
  • 100-139为静态优先级,数字越小优先级越高
    NICE值
  • NICE值:-20~19对用静态优先级【对应的是上面优先级范围的100-139】
  • 普通用户只可以调低优先级,超级用户任意调整
  • 关于优先级的命令
    1.ps ax –o nice,pid,comm
    2.nice –n 优先级 程序
    指定优先级进行开启
    그림 삽입 설명 여기
    3.reince–n 优先级 程序pid
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200206133124649.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzUxOTk1MQ==,size_16,color_FFFFFF,t_70

4.进程前后台调用

进程前后台调用相关命令

指令 含义
jobs 查看后台任务
ctrl+z 将前台运行进程打入后台
bg 激活后台进程
fg 调回进程
& 运行在后台

1.占用终端的进程
그림 삽입 설명 여기2.将前台运行进程打入后台
ps查看发现已经被暂停,不能使用
그림 삽입 설명 여기3.查看后台任务
그림 삽입 설명 여기4.激活后台进程
그림 삽입 설명 여기그림 삽입 설명 여기
然而,该操作不能将vim进程运行起来,因为该进程必需要占用终端提供操作界面,才能运行起来
그림 삽입 설명 여기5.调回进程
그림 삽입 설명 여기
6.运行在后台
그림 삽입 설명 여기

5.信号

可控信号类型
man 7 signal

可控信号 含义
1 刷新【让进程再次读取配置】
2 中断键盘输入
3 退出键盘
9 强制结束
15 正常关闭
18 激活进程
19 强制暂停
20 正常暂停
  • 中断键盘输入
    그림 삽입 설명 여기

  • 退出键盘 ctrl+/
    在看电影时,鼠标就会被隐藏起来

  • 强制暂停
    그림 삽입 설명 여기

  • 激活进程
    그림 삽입 설명 여기

  • 正常暂停【被系统阻塞掉,没有效果】
    系统认为这样做不对,hhh
    그림 삽입 설명 여기

  • 强制结束
    그림 삽입 설명 여기그림 삽입 설명 여기
    그림 삽입 설명 여기信号指令
    kill 信号 pid
    pkill 信号 进程名称

    그림 삽입 설명 여기그림 삽입 설명 여기

6.系统守护进程

设置实验环境
1.nm-connection-editor
그림 삽입 설명 여기2.检查是否设置正确
그림 삽입 설명 여기3.ssh建立连接
그림 삽입 설명 여기守护进程的定义

  • 守护进程就是通常讲Daemon进程
  • 是linux后台执行的服务进程
  • 是独立于控制终端、周期性地执行某种任务或等待处理某些发生事件
  • 不会随终端关闭而停止,直到接受停止信息才会结束
    守护进程类型
守护进程类型 使用系统及特点
Sysv init 经典的守护进程类型延用到rhel6
upstart 做到并行启动rhel6中应用
systemd 独立完成启动,rhel7中使用

systemctl用法之一

指令 用途
systemctl list-unit-files 查看服务开机运行情况
systemctl list-units 查看服务当前运行情况
systemctl list dependencies 查看服务依赖性
systemctl status service 查看服务状态
systemctl start service 开启服务
systemctl stop service 关闭服务
systemctl reload service 重新加载服务配置
  • systemctl list-unit-files 查看服务开机运行情况
    그림 삽입 설명 여기
  • systemctl list dependencies 查看服务依赖性
    그림 삽입 설명 여기
  • systemctl status service 查看服务状态그림 삽입 설명 여기
  • systemctl stop service 关闭服务
    그림 삽입 설명 여기
  • systemctl 시작 서비스 공개 서비스
    그림 삽입 설명 여기
  • systemctl 다시로드 서비스 재 장전 서비스 구성
    그림 삽입 설명 여기ID를하지 않습니다 변화
    그림 삽입 설명 여기두 가지의 systemctl 사용
지시 용도
systemctl 다시 시작 서비스 다시 시작 서비스
서비스를 활성화 systemctl 공개 서비스 시작 설정
- 이제 서비스를 활성화 systemctl 설정 서비스는-시작하고 서비스를 엽니 다
systemctl 해제 서비스 전원은 서비스 세트를 종료
systemctl 세트 기본 multi-user.target 설정 시스템의 실행 수준이 더 그래픽 모드 네트워크입니다
systemctl 세트 기본 graphical.target 수준의 그래픽 모드 네트워크를 실행하도록 시스템을 설정
  • 서비스를 활성화 systemctl 서비스 개방을 시작하도록 설정되어
    그림 삽입 설명 여기
  • 가까운 부팅 서비스 systemctl 해제 서비스 세트
    그림 삽입 설명 여기
  • 서비스 설정 서비스 시작을 -now 활성화하고 서비스를 엽니 다 systemctl
    그림 삽입 설명 여기그림 삽입 설명 여기
  • systemctl 세트 기본 multi-user.target 운영 시스템 레벨 설정의 네트워크 모드는 패턴 화되지 않은
    그림 삽입 설명 여기그래픽 인터페이스없이 개방
    그림 삽입 설명 여기
  • systemctl 세트 기본 graphical.target 시스템 동작 레벨 설정 패턴 네트워크 모드
    그림 삽입 설명 여기GUI
    그림 삽입 설명 여기
게시 15 개 원래 기사 · 원 찬양 4 · 조회수 385

추천

출처blog.csdn.net/weixin_43519951/article/details/104184387