【RH124 问答题】第 8 章 监控和管理 Linux 进程
目录
- 如何理解 systemd 进程?
- ps 和 top 有什么区别?
- 解释 ps aux 和 ps -ef 这两个命令和参数的作用。
- ps aux
- ps -ef
- 如何设置禁止使用基于密码的身份验证来进行远程登录?
- 进程状态有哪些?
- 怎么理解作业(Job)和作业控制?
- 说明 kill 命令中使用 9 和 15 信号量的区别。
如何理解 systemd 进程?
systemd 是内核启动后执行的第一个用户空间初始化进程
,PID 为 1。它负责引导和初始化整个系统,根据配置文件有序启动并管理所有系统服务和进程。作为用户空间的第一个进程,systemd 是所有普通用户进程的祖先进程,管理着用户空间的所有普通进程。
ps 和 top 有什么区别?
ps 和 top 都是用来查看系统进程信息的工具。
ps用于静态获取特定时刻的进程信息,
而 top 则是用于动态实时监控和交互式查看系统资源使用情况。
解释 ps aux 和 ps -ef 这两个命令和参数的作用。
ps aux
ps
:查看系统中进程信息的命令。a
(all users):显示所有用户的进程,不仅限于当前终端。u
(user-oriented format):以用户为主的格式显示进程,包含用户名、CPU/内存使用率、启动时间等详细信息。x
:显示没有控制终端的进程(守护进程等)。
ps -ef
ps
:查看系统中进程信息的命令。-e
(every process):显示系统中所有进程(相当于-A
)。-f
(full-format):以完整格式显示进程,包含 UID(用户ID)、PID、PPID(父进程ID)、启动时间、终端、命令行等详细字段。
如何设置禁止使用基于密码的身份验证来进行远程登录?
将sshd守护进程的主配置文件/etc/ssh/sshd_config
里面的 PasswordAuthentication
参数设置为no
。
然后重启 SSH 服务使修改生效:systemctl restart sshd
进程状态有哪些?
- R (Running):
运行中或可运行
,进程正在使用 CPU 或等待 CPU 调度。 - S (Sleeping):
休眠
状态,进程正在等待某个事件(如I/O完成),可被唤醒。 - D (Uninterruptible sleep):
不可中断睡眠
,通常等待I/O操作完成,不能被信号中断。 - T (Stopped):
暂停或停止
状态,进程被停止(如使用ctrl+z
或接收到 STOP 信号)。 - Z (Zombie):
僵尸
进程,进程已终止,但父进程还未回收其状态信息。 - I (Idle):内核线程
空闲
状态(Linux内核特有)。 - X (Dead):进程已
死亡
,等待被清理。
这些状态通过 ps
或 top
命令的 STAT 或 S 列查看。
怎么理解作业(Job)和作业控制?
作业(Job) 是指用户在 Shell 中启动的一个或多个相关进程的集合,通常由一个命令或命令序列(如管道)组成。每个作业在当前终端会话中具有唯一的 作业编号(Job ID),可以在 前台 或 后台 运行。
作业控制(Job Control) 是指 Shell 提供的一组机制,用于管理作业的执行状态。通过作业控制,用户可以:
- 将作业置于前台或后台执行(例如:
fg
、bg
) - 挂起(暂停)作业(通过
Ctrl+Z
) - 终止作业(使用
kill
命令或Ctrl+C
) - 查看当前作业状态(使用
jobs
命令)
说明 kill 命令中使用 9 和 15 信号量的区别。
kill -15
发送的是默认的终止信号(SIGTERM),允许进程自行清理后退出;
kill -9
发送的是强制终止信号(SIGKILL),会立刻杀死进程,进程无法阻止或处理这个信号。
优先使用 kill -15 尝试正常终止,只有在失败时才使用 kill -9 强制终止。