主页 > 中国民俗 >

linux运维面试题

编辑:中国民俗 2025-05-05 00:48 浏览: 来源:www.nanyuekg.com

以下是一篇关于Linux运维工程师面试中的核心知识点及问题的整理,结合高频考点和实际应用场景进行了详细分类。

一、系统管理与监控

1. 内存和CPU统计信息的查看方法

使用`free -h`查看物理内存使用情况。

`vmstat`命令提供虚拟内存统计信息。

`sar`命令用于查看CPU利用率及其他系统活动信息。`top`或`htop`可以实时查看资源占用情况,重点关注内存和CPU的占用率。

2. buffer和cache的区别

buffer主要用于暂存待写入磁盘的数据,解决磁盘I/O速度慢的问题。

cache用于缓存从磁盘读取的数据,加速后续访问。两者均占用内存,但用途不同。

3. sar的功能及日志位置

`sar`命令用于收集系统活动信息,包括CPU、内存、磁盘、网络等。

默认日志存储在`/var/log/sa/`目录下,文件名为`sa{{dd}}`(`dd`为当前日期)。

4. vmstat关键列

`r`:运行队列中的任务数。

`b`:阻塞任务数。

`si`/`so`:交换分区与内存的数据交换量。

`bi`/`bo`:磁盘与内存的数据读写量。

二、磁盘与LVM管理

1. LVM的作用及扩容步骤

LVM能够动态调整分区大小,支持在线扩容,提升存储管理灵活性。

扩容流程包括创建物理卷、扩展卷组、扩展逻辑卷和调整文件系统大小等步骤。具体命令如`pvcreate`、`vgextend`、`lvextend`和`resize2fs`等。对于XFS文件系统,可能需要使用`xfs_growfs`命令。

三、网络与协议

1. OSI七层模型及TCP握手与挥手

OSI七层模型包括物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。

TCP三次握手过程为SYN→SYN-ACK→ACK;四次挥手过程为FIN→ACK→FIN→ACK。

2. DNS过程

客户端查询本地DNS缓存,然后进行递归查询本地DNS服务器,接着进行迭代查询根域名服务器,最后逐级查询权威DNS服务器,返回最终IP。

3. 端口转发示例

可以使用iptables命令进行端口转发,如`-A PREROUTING -p tcp --dport 80 -j DNAT --to 192.168.1.1:8080`。也可以使用socat工具实现端口转发。

四、服务与架构

1. LVS、Nginx、HAProxy的区别

LVS基于四层,性能高但配置复杂,支持DR/NAT/TUN模式。

Nginx是七层反向代理,支持HTTP/HTTPS负载均衡,扩展性强。

HAProxy专注七层,支持TCP/HTTP,适合高可用场景。

2. Tomcat端口作用

8005:关闭服务端口;8009:AJP协议端口(与Apache/Nginx通信);8080:默认HTTP服务端口。

3. Keepalived原理

Keepalived基于VRRP协议实现高可用,通过主备节点选举(Master/Backup)和健康检查实现IP漂移。该机制确保在系统故障时能够快速切换至备用节点,保证服务的高可用性。五、故障排查与优化实战指南

在系统运维过程中,故障排查与优化是每一个运维工程师必须掌握的技能。将针对一些常见的故障排查方法和优化手段进行深入。

一、系统负载过高分析

当系统负载过高时,首先可以通过 `uptime` 或 `w` 命令查看系统的负载情况,了解系统的运行状态。结合 `sar` 和 `iostat` 命令,可以定位到系统的瓶颈所在,是I/O瓶颈还是CPU瓶颈。负载过高的原因可能有很多种,比如进程阻塞、频繁磁盘交换或者CPU密集型任务等。在实际排查过程中,需要根据具体情况进行具体分析,定位到具体的问题所在。

二、日志分析实战

日志分析是故障排查的重要手段之一。以Nginx访问日志为例,可以通过awk、sort、uniq、head等命令对日志进行统计和分析,找出访问量前十的IP。通过 `tcpdump` 命令可以抓包分析80端口的流量,帮助我们了解网络数据包的情况。这些命令的使用都需要我们熟练掌握,以便在实际工作中灵活运用。

六、进阶知识点详解

一、RAID级别对比

RAID是一种磁盘阵列技术,它通过把多个磁盘组合起来,形成一个逻辑上的单一磁盘。不同的RAID级别有不同的特点和适用场景。例如,RAID 0注重性能,条带化存储提高了读写速度,但无冗余;RAID 1注重冗余性,通过镜像方式保证了数据的安全性,但容量利用率较低;RAID 5则是一种平衡性能和安全性的选择,通过分布式校验的方式实现了数据的冗余和恢复。在实际应用中,需要根据业务需求和场景选择合适的RAID级别。

二、MySQL主从复制延迟优化

MySQL主从复制是MySQL高可用性和负载均衡的重要技术手段之一。但当主从复制出现延迟时,会影响系统的性能和稳定性。为了优化主从复制延迟,可以通过调整 `sync_binlog` 和 `innodb_flush_log_at_trx_commit` 参数来实现。还可以采用并行复制或半同步复制等高级手段来减少延迟。这些优化手段需要根据实际情况进行选择和调整。

故障排查与优化是Linux运维工作中的重要环节。在实际工作中,我们需要结合具体场景理解原理,通过命令实践加深记忆,不断提高自己的技能水平。还需要不断学习和掌握新的技术和工具,以适应不断变化的市场需求和技术发展。