Linux工程师面试题及详细答案(实战完整版)_第1页
Linux工程师面试题及详细答案(实战完整版)_第2页
Linux工程师面试题及详细答案(实战完整版)_第3页
Linux工程师面试题及详细答案(实战完整版)_第4页
Linux工程师面试题及详细答案(实战完整版)_第5页
已阅读5页,还剩3页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Linux工程师面试题及详细答案(实战完整版)一、Linux基础命令高频面试题1、简述cd、pwd、ls核心命令常用参数及实战用法答案:pwd:打印当前工作目录路径,无常用参数,主要用于确认当前所在目录,排查路径错误问题。cd:切换工作目录,核心用法:-cd~切换到当前用户家目录;-cd..切换到上一级目录;-cd-切换到上一次所在目录,快速来回切换两个工作目录;-cd/切换到系统根目录。ls:查看目录文件,常用参数:-l:长格式展示,显示权限、所有者、大小、修改时间等详细信息;-a:显示所有文件,包含隐藏文件(以.开头的文件);-h:人性化显示文件大小,自动转换KB/MB/GB;-t:按文件修改时间排序,最新文件在前。2、如何快速查找系统中大文件?日常排查磁盘占用常用命令有哪些?答案:日常磁盘排查核心命令:1、df-h:查看系统整体磁盘分区占用情况,快速判断哪个分区使用率过高,适合全局排查;2、du-sh/*:查看根目录下所有目录总占用大小,精准定位大目录;常用du-sh目录路径查看指定目录总大小;3、查找指定大小文件:find/-typef-size+100M,递归查找系统中100M以上的文件,可根据需求调整大小参数。实战场景:磁盘爆满时,先df查分区,再du定位大目录,最后find精准找到冗余日志、垃圾文件进行清理。3、rm命令使用注意事项?如何避免误删系统文件?答案:rm是删除命令,默认不可逆,无回收站,误删核心文件会导致系统故障。常用参数:-r递归删除目录及所有子文件;-f强制删除,不提示确认。避坑规范:1、禁止直接执行rm-rf/*、rm-rf/等高风险命令;2、删除带通配符文件前,先用ls匹配路径确认文件,再执行删除;3、生产环境可临时设置rm别名替代,或先mv移动冗余文件到临时目录,确认无问题后再清理;4、严禁删除/etc、/bin、/usr等系统核心目录文件。二、Linux文件权限与用户权限1、简述Linux文件权限r、w、x的含义,以及数字权限对应规则答案:Linux文件权限分为所有者、所属组、其他用户三类,每类权限包含读、写、执行三种:r(读):对应数字4,文件可查看内容,目录可列出文件列表;w(写):对应数字2,文件可修改、删除内容,目录可新增、删除、重命名文件;x(执行):对应数字1,文件可执行(脚本、程序),目录可进入、切换路径。数字权限组合:7=rwx、6=rw-、5=r-x、4=r--、3=-wx、2=-w-、1=--x、0=---常见权限:644(普通文件默认权限)、755(目录、程序默认权限)、700(私有文件,仅所有者可操作)。2、chmod和chown命令的区别?日常使用场景是什么?答案:1、chmod:修改文件/目录的权限数值,不改变所有者和所属组;用法:chmod755test.sh、chmod-R755目录(递归修改);2、chown:修改文件/目录的所有者和所属组,不改变权限数值;用法:chownroot:roottest.sh(修改所有者和组)、chown-R用户:组目录。实战场景:部署项目时,先用chown授权项目文件为运行用户,再用chmod配置合理权限,保证程序正常读写执行,同时防止权限过宽引发安全问题。3、什么是SUID、SGID、粘滞位?各自作用是什么?答案:三者均为Linux特殊权限,用于突破普通权限限制:1、SUID(4xxx):仅对二进制命令生效,用户执行该命令时,临时拥有文件所有者权限;典型案例:passwd命令,普通用户可修改自身密码,无需root权限。2、SGID(2xxx):对目录生效,目录下新建文件自动继承目录所属组,多用于团队协作目录,保证同组用户文件互通。3、粘滞位(1xxx):仅对公共目录生效,目录内文件仅文件所有者和root可删除,其他用户无法删除他人文件;典型目录:/tmp,保障公共目录文件安全。三、Linux进程与服务管理1、简述ps、top、htop命令的区别,以及常用排查参数答案:1、ps:静态查看当前瞬间进程状态,适合批量查询进程信息;常用:ps-ef查看所有完整进程、ps-ef|grep进程名筛选指定进程;2、top:动态实时查看进程、CPU、内存占用,默认3秒刷新一次,适合实时排查负载过高问题;常用操作:P按CPU排序、M按内存排序、k输入PID杀死进程;3、htop:top的增强版,界面更直观,支持鼠标操作、快速滚动、精准筛选,功能全覆盖top,生产环境优先使用。2、kill、kill-9、pkill的区别?生产环境如何正确终止进程?答案:1、killPID:默认发送15号信号,优雅终止进程,进程会保存数据、释放资源、正常退出,是生产首选;2、kill-9PID:发送9号强制终止信号,强制杀死进程,进程无法收尾、不释放资源,可能产生僵尸进程、数据丢失;仅用于进程卡死、无响应场景;3、pkill进程名:按进程名批量杀死进程,无需查询PID,操作便捷,但容易误杀同名进程,需谨慎使用。生产规范:优先kill正常终止,等待3-5秒进程退出,未退出再使用kill-9,禁止直接批量pkill核心服务。3、什么是僵尸进程和孤儿进程?如何清理僵尸进程?答案:1、孤儿进程:父进程退出,子进程继续运行,子进程会被systemd(init进程)接管,无危害,系统自动回收;2、僵尸进程:子进程退出,父进程未读取子进程退出状态,子进程资源未释放,进程状态变为Z,占用PID资源,大量僵尸进程会导致系统无法新建进程。清理方式:-临时清理:重启父进程,父进程重启后会自动回收所有僵尸子进程;-彻底解决:开发层面优化程序,父进程及时处理子进程退出回调,避免产生僵尸进程。4、systemd和sysvinit的区别?如何设置开机自启服务?答案:CentOS7及以后默认systemd,CentOS6及以前为sysvinit:1、sysvinit:串行启动服务,开机速度慢,服务依赖管理弱,命令为service、chkconfig;2、systemd:并行启动服务,开机速度快,支持服务依赖、状态监控、日志管理,功能更完善。常用自启操作:-开机自启:systemctlenable服务名;-关闭自启:systemctldisable服务名;-启动/停止服务:systemctlstart/stop服务名;-查看服务状态:systemctlstatus服务名。四、Linux网络配置与排查1、常用网络排查命令有哪些?简述排查网络不通的完整流程答案:核心网络命令:ipaddr、ping、telnet、curl、ss、traceroute、nslookup网络故障排查流程(由近及远):1、查看本机网卡状态:ipaddr确认网卡是否启动、IP是否配置正常;2、ping本机127.0.0.1排查本地网卡协议是否正常;3、ping同网段网关排查局域网是否通畅;4、ping外网IP(如223.5.5.5)排查外网连通性,判断是否是DNS问题;5、ping域名不通则排查/etc/resolv.confDNS配置;6、telnet/curl目标IP:端口排查端口是否开放、服务是否正常监听;7、ss-lntp查看本机监听端口,确认服务是否正常启动监听。2、ss和netstat命令的区别?生产环境推荐使用哪个?答案:netstat是传统网络端口查看命令,ss是替代netstat的新命令:1、netstat:依赖老旧内核接口,查询大量连接时速度慢、资源占用高,部分系统默认未安装;2、ss:查询速度快、性能高,支持更多连接状态筛选,适配高并发服务器。生产优先使用ss,常用参数:-ss-lntp:查看本机所有监听的TCP端口及对应进程;-ss-antp:查看所有TCP连接(已连接、监听、等待)。3、如何临时和永久修改Linux网卡IP、DNS?答案:1、临时修改(重启失效):-配置IP:ipaddradd192.168.1.100/24deveth0;-配置DNS:直接修改/etc/resolv.conf,添加nameserver223.5.5.5。2、永久修改(重启生效,CentOS7+):-编辑网卡配置文件:/etc/sysconfig/network-scripts/ifcfg-eth0;-修改BOOTPROTO=static,配置IPADDR、NETMASK、GATEWAY、DNS1;-重启网卡:systemctlrestartnetwork。五、Linux日志与故障排查1、Linux系统核心日志文件有哪些?各自作用?答案:1、/var/log/messages:系统全局日志,记录系统启动、服务运行、硬件异常等通用日志,核心排查日志;2、/var/log/secure:安全日志,记录用户登录、ssh连接、权限操作、密码修改等,排查暴力破解、登录异常必备;3、/var/log/cron:定时任务日志,记录crontab任务执行、报错信息,排查定时任务失效问题;4、/var/log/dmesg:系统内核日志,记录硬件加载、内核报错、磁盘异常等,排查服务器硬件故障、内核崩溃问题。2、服务器CPU、内存、负载过高,如何快速定位问题?答案:1、查看系统负载:uptime查看1分钟、5分钟、15分钟负载,判断是瞬时高峰还是持续高负载;2、定位CPU占用:top按P排序,找到CPU占比最高的进程,查看进程PID、程序名称;3、定位内存占用:top按M排序,排查内存溢出、内存泄漏进程;4、深度排查:查看进程日志、系统日志,判断是程序bug、并发过高、资源耗尽导致;5、临时处理:对异常进程优雅重启、限流,长期需优化程序、调整服务器资源。3、磁盘只读挂载故障如何解决?答案:常见原因:磁盘文件系统损坏、磁盘IO异常、服务器意外断电,系统为保护数据自动挂载为只读模式。解决步骤:1、先卸载磁盘:umount挂载目录;2、执行文件系统检测修复:fsck-f/dev/磁盘分区;3、修复完成后重新挂载:mount磁盘分区挂载目录;4、修复失败则排查磁盘硬件坏道,使用badblocks检测磁盘坏道,必要时更换磁盘。六、Shell脚本基础实战1、简述Shell脚本中$0、$1、$#、$?的含义答案:-$0:脚本本身的文件名;-$1、$2...:脚本执行的第1、2...个位置参数;-$#:脚本传入的参数总个数;-$?:上一条命令的执行返回状态,0代表执行成功,非0代表执行失败。2、写一个简单脚本:监控Nginx状态,挂掉自动重启答案:PlainText

#!/bin/bash

#监控Nginx服务状态

nginx_status=`systemctlstatusnginx|grepactive|awk'{print$3}'`

if[$nginx_status!="running"];then

systemctlrestartnginx

echo"Nginx已异常重启,时间:`date+%Y-%m-%d\%H:%M:%S`">>/var/log/nginx_monitor.log

fi使用方式:赋予执行权限chmod+xnginx_monitor.sh,添加到crontab定时任务,每分钟执行一次,实现实时监控。七、综合面试实操题1、生产服务器磁盘空间充足,但提示“nospaceleftondevice”,原因及解决方式?答案:核心原因:磁盘inode耗尽,inode用于记录文件索引信息,磁盘有空间但无inode,无法新建文件。排查命令:df-i查看inode使用率;常见场景:大量小文件、日志碎片文件占用全部inode;解决方式:1、查找系统冗余小文件,批量删除释放inode;2、清理无效日志、临时文件;3、优化日志切割策略,避免产生大量细碎日志文件。2、如何排查服务器被暴力破解SSH?如何防护?答案:排查方式:查看安全日志grep"Failedpassword"/var/log/secure,查看异常登录IP、失败次数。防护方案:1、修改SSH默认22端口,降低扫描攻击概率;2、禁止root账号远程SSH登录,创建普通运

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论