- CPU分片机制与CPU队列:简述 CPU 分片机制(时间片)的原理与它的优缺点。什么是就绪队列(Ready Queue)与等待队列(Wait Queue)?运行队列(Run Queue)与过期队列(Expired Queue)之间有何关系?
- 进程与线程的核心区别及运维关注点:从定义、开销、通信、场景四个维度对比进程与线程的差异。在日常运维和故障排查中,为什么需要关注线程?请写出 4 个常用的线程排查工具,并举例说明哪些中间件的哪些配置参数与线程数密切相关。
- 进程创建机制与1号进程:简述在 Linux 中创建进程的核心逻辑(复制现有进程与加载程序映像过程)。Linux 系统的第一号进程是什么?
- 进程状态及“不可能发生的切换”:在使用 ps aux 命令时,STAT 列中常见的进程状态字符(D, R, S, T, Z, l, +)分别代表什么?另外,在进程状态转换中,哪两种切换是不可能发生的?为什么?
- 特殊的进程与内存异常:什么是僵尸进程与孤儿进程?它们是如何产生的,应当如何回收与清理?当系统发生 OOM (Out Of Memory) 时,内核会采取什么应对策略?在哪个系统日志中可以观察到 OOM 记录?
- 进程间通信 (IPC) 的概念与方式:什么是进程间通信 (IPC)?请列举 Linux 中常见的三种 IPC 方式(如管道、消息队列、套接字等),并简要说明其各自特点。
- 作业控制(Job Control)与特殊符号:在 Linux 作业控制中,如何将前台任务放到后台暂停?如何让其在后台继续运行或调回前台?fg 命令中 % 符号的含义是什么?%+ 和 %- 分别代表什么?
- 进程优先级调整与 CFS 调度算法:Linux 进程的 nice 值与 PR(Priority)值的取值范围分别是多少?普通进程的 CFS(完全公平调度)算法的工作原理是什么?nice 值每降低 1,权重有何变化?请说明如何使用 renice 修改一个运行中进程的 nice 值。
- 进程与内存监控命令 (top, free, pmap):在 top 命令的交互界面中,按键 1、2、3 分别有什么作用?free 输出中的 buffer 和 cache 有何区别?如何安全地清空系统缓存?如何使用 pmap 查看指定进程的内存占用与映射关系?
- 定时任务管理及排查:at 与 crontab 在任务调度上有何区别?系统级 crontab 与用户级 crontab 在配置格式上有何关键区别?若定时任务未能如期执行,运维人员应从哪些方面进行故障定位?请写出一条 crontab 规则:在每周一到周五凌晨 2:30 执行备份脚本 /opt/backup.sh 并且丢弃所有邮件通知。
[8]
- 网络分层模型对比(OSI vs TCP/IP):对比说明 OSI 七层模型与 TCP/IP 四层模型的分层结构。这两种模型在理论研究与生产实践中分别扮演了怎样的角色?
- 数据的封装与解封装过程:请详细阐述数据在发送端的“封装”过程和在接收端的“解封装”过程。在解封装时,数据链路层和网络层是如何根据头部信息判断数据处理方式的?
- 网络通信模式与双工机制:在网络通信模式中,单播(Unicast)、广播(Broadcast)和组播(Multicast)的定义与特点是什么?单工、半双工、全双工通信机制有何异同?
- 网卡状态查看与速率修改(mii-tool 与 ethtool):mii-tool 和 ethtool 都是网卡管理工具,它们在支持的速率范围和使用限制上有何不同?请写出查看指定网卡(如 ens160)物理链路状态的 ethtool 命令。如何使用 ethtool 强制修改网卡的速率为 1000Mbps、全双工且关闭自动协商?
- 组网设备(集线器、交换机、路由器):集线器(Hub)、交换机(Switch)和路由器(Router)分别工作在 OSI 模型的哪一层?当交换机收到一个数据帧时,若在 MAC 地址表中找不到目的 MAC 地址,它会做出怎样的处理?交换机和路由器在隔离冲突域和广播域上有何不同?
- 虚拟机网络连接模式:在虚拟机(VMware)的网络配置中,桥接模式、NAT 模式和仅主机模式(Host-Only)的特点是什么?虚拟机分别是通过宿主机的哪些虚拟设备(如 Vmnet0/1/8)进行连接的?
- 网卡名规范与命名规则修改:从 CentOS 7/Rocky 开始,系统默认采用可预测网络接口命名规则。在批量部署时,如何通过修改内核引导参数将其恢复为传统的 eth0 格式?在 CentOS 9/Rocky 9 及以后版本中,网卡配置文件存放在哪个路径下?(传统的 CentOS 7 与现代 Rocky 9 的路径有何不同?)
- IP 子网划分实践:某公司获得了 10.240.0.0/13 的网段,现在需要为其市内 16 个区划分子网。请计算出:
- 每个区子网的子网掩码(Netmask,用点分十进制表示)。
- 每个子网可容纳的可用主机数。
- 各个子网中,最小的网段(Network ID)和最大的网段(Network ID)。
- 超网合并与路由聚合:什么是超网(合并超网)?它与子网划分有什么区别?请写出将 220.78.168.0/24 到 220.78.175.0/24 这 8 个连续的小网段合并为一个超网的计算过程和最终合并网段。
[9] - Linux 系统启动流程阶段:详细描述 Linux 系统从通电自检到登录界面的五个主要启动阶段。
- BIOS 与 UEFI 启动模式对比:从磁盘分区支持、启动速度、启动逻辑和安全性四个维度对比传统的 BIOS 引导模式和现代的 UEFI 引导模式的差异。
- Bootloader 作用与类型:Bootloader(引导加载器)的核心作用是什么?除了现代 Linux 默认的 GRUB2 之外,还有哪些常见的 Linux Bootloader 类型(请写出至少 3 种)?
- 内核加载与 initramfs 工作机制:在系统引导时,vmlinuz 和 initramfs 镜像分别起什么作用?请详细描述 initramfs 临时根文件系统的工作流程,它最终是如何切换到真正的根文件系统的?
- 运行级别(Runlevel)与 Systemd Target:传统的 SysV init 运行级别(0-6)在 systemd 中是如何对应的?在 systemd 中最核心的两个运行 target 是什么?如何使用命令查看和修改系统默认的运行级别?
- 系统启动耗时分析:当系统启动缓慢时,我们可以使用哪些 systemd-analyze 命令来分析各个服务的启动耗时?如何将启动过程生成为图表形式的 HTML 文件?
- 传统的 SysV init 自启动脚本配置:在传统的 SysV init(CentOS 6)中,如果使用 chkconfig 管理自建服务,自定义脚本的首部必须包含类似 # chkconfig: 2345 90 60 的配置行。请详细解释这一配置行中三个数字/数字串(2345、90、60)的具体含义,以及它们与 /etc/rc.d/ 目录下 S 和 K 软链接的关系。
- 核心启动文件损坏救援实操:如果在 Rocky 10 或 CentOS 系统中,由于误操作导致内核文件 vmlinuz 丢失或者 initramfs 镜像丢失,系统无法引导。请问:
- 制作 initramfs 临时根镜像文件在 CentOS 6 和 Rocky 10 中分别使用什么命令?
- 简述使用系统光盘进入救援模式(Rescue Mode)修复丢失内核或 initramfs 的核心操作步骤。
