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

下载本文档

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

文档简介

Linux面试真题及详细答案(实战版)一、Linux基础概念面试题1.简述Linux的系统架构,分为哪几层?Linux系统整体分为四层,从下到上依次为:硬件层、内核层、系统调用层、应用层。硬件层包含服务器CPU、内存、磁盘、网卡等物理设备;内核层是系统核心,负责管理硬件资源、进程调度、内存分配、文件系统管理,是整个系统的核心支撑;系统调用层是内核和应用程序的交互接口,应用程序通过固定接口向内核申请资源;应用层就是用户日常使用的各类工具、命令、服务、脚本等,比如ls、cd、nginx、mysql等程序都运行在这一层。日常操作的Linux命令都属于应用层指令,需要通过系统调用向内核发起请求,最终操作硬件资源。2.区分绝对路径和相对路径,日常使用场景有什么区别?绝对路径:从根目录/开始的完整路径,唯一不重复,不受当前所在目录影响,比如/etc/profile、/usr/local/nginx。相对路径:相对于当前工作目录的路径,不包含/开头,路径会随当前目录变化,比如./test.txt(当前目录)、../log(上一级目录)。使用场景:固定配置、脚本编写、定时任务必须用绝对路径,避免路径报错;日常切换目录、临时操作文件可以用相对路径,操作更快捷。3.Linux常用目录作用分别是什么?(核心目录)/:根目录,所有文件的顶层目录;/etc:系统配置文件目录,所有服务、系统配置都在这里,比如网卡配置、用户配置、开机自启配置;/home:普通用户家目录,每个用户对应一个独立文件夹,存放用户个人文件;/root:超级管理员root的家目录,权限最高;/usr:系统软件安装、命令、库文件目录,大部分第三方软件默认安装此处;/var:动态数据目录,存放日志、缓存、数据库数据、运行进程的pid文件;/tmp:临时文件目录,系统会定时清理该目录下的过期文件;/bin/sbin:系统核心命令目录,bin供所有用户使用,sbin仅管理员可使用。二、Linux文件与权限面试题1.Linux文件权限分为哪几类?755、644、777权限分别代表什么?Linux权限针对三类用户:文件所有者(u)、所属组(g)、其他用户(o);基础权限有读(r=4)、写(w=2)、执行(x=1)。755:所有者读写执行,所属组和其他用户只读执行,是目录默认权限,保证目录可进入、可查看,禁止随意修改;644:所有者读写,所属组和其他用户只读,是普通文件默认权限,文件无需执行权限,保证安全;777:所有用户拥有读写执行权限,生产环境尽量不用,权限过大会存在安全漏洞。2.chmod和chown命令的区别?常用参数用法?chmod:修改文件/目录的权限,不改变所属用户和组;常用参数:-R递归修改(修改目录及目录内所有文件权限);示例:chmod-R755/test。chown:修改文件/目录的所属用户和所属组,不修改权限;常用参数:-R递归修改;示例:chownroot:root/test(修改用户和组)、chownuser1/test(仅修改所属用户)。3.什么是软链接和硬链接?区别是什么?软链接:相当于Windows的快捷方式,记录原文件路径,依赖原文件存在,原文件删除后软链接失效;可以跨分区、跨磁盘,支持对目录创建软链接。硬链接:多个文件名指向同一个文件inode,本质是同一个文件的多个入口;不依赖原文件,删除任意一个硬链接,文件依然存在;不支持跨分区、不支持目录创建。核心区别:软链接依赖原文件、可跨分区、支持目录;硬链接不依赖原文件、不可跨分区、仅支持文件。三、Linux常用命令面试题(高频实操)1.查找文件的命令有哪些?find和grep的区别?常用查找命令:find、locate、which、whereis。核心区别:find:全盘遍历查找文件/目录,支持按名称、大小、时间、权限、用户等多条件筛选,精准但速度稍慢;示例:find/-name"*.log"全盘查找所有日志文件。grep:查找文件内容,筛选文本中匹配的字符串,支持正则表达式;示例:grep"error"/var/log/messages筛选日志中的报错信息。2.如何实时查看日志文件?常用日志查看命令区别实时查看日志核心命令:tail-f文件名,实时刷新文件新增内容,是排查服务报错最常用的命令。各命令区别:cat:一次性读取全部文件内容,适合小文件,大文件会刷屏;more/less:分页查看大文件,支持上下翻页,不会一次性加载全部内容;tail:默认查看文件末尾10行,tail-n20查看末尾20行,tail-f实时监控;head:查看文件开头内容,head-n10查看前10行。3.压缩解压命令有哪些?tar常用参数详解Linux主流压缩格式:tar.gz、zip、bz2,生产最常用tar格式。tar核心参数:-c打包、-x解包、-z调用gzip压缩、-v显示过程、-f指定文件、-C指定解压目录;压缩:tar-zcvftest.tar.gztest/将test目录压缩为tar.gz文件;解压:tar-zxvftest.tar.gz-C/usr/local/解压到指定目录。zip/unzip:适合简单压缩,ziptest.ziptest/压缩,unziptest.zip解压。4.统计文件行数、字数、文件夹大小的命令wc-l文件名:统计文件行数(日志统计常用);wc-w文件名:统计文件单词数;du-sh目录:统计文件夹总大小,-s汇总、-h人性化显示单位;ls-lh:查看单个文件大小。四、Linux进程与资源监控面试题1.前台进程和后台进程的区别?如何后台运行程序?前台进程:占用当前终端,终端关闭、断开连接后进程直接终止,默认执行的命令都是前台进程;后台进程:脱离当前终端,后台静默运行,终端关闭不影响进程运行。后台运行方式:1、命令后加&:如./start.sh&临时后台运行;2、nohup命令&:忽略挂断信号,断线不终止,生产常用:nohup./start.sh&;3、screen工具:创建独立会话,适合长时间运行的任务。2.ps、top命令的区别?如何查看僵尸进程?ps:查看当前瞬间的进程状态,静态快照,适合查询特定进程是否存在,常用ps-ef、psaux;top:动态实时监控进程,每秒刷新,可查看CPU、内存占用、进程状态,适合排查服务器资源占用过高问题。僵尸进程:进程结束后,父进程未回收进程资源,进程状态为Z;查看命令:top直接查看Z状态进程,或ps-ef|grepZ筛选僵尸进程;解决方式:重启父进程或直接重启服务器,少量僵尸进程不影响服务,大量会占用进程ID资源。3.如何强制结束进程?kill、kill-9区别killPID:温和终止进程,发送正常退出信号,允许进程保存数据、释放资源、正常关闭;kill-9PID:强制杀死进程,强制终止进程,不做资源回收、不保存数据,属于暴力操作;生产规范:优先使用普通kill,进程卡死、无响应时再用kill-9,避免数据丢失。4.服务器CPU、内存、磁盘、IO过高如何排查?1、CPU过高:top查看占用CPU最高的进程,定位进程PID,分析是程序bug、并发过高还是死循环;2、内存过高:free-m查看内存、缓存占用,top查看进程内存占用,排查是否有内存泄漏;3、磁盘满:df-h查看磁盘使用率,du-sh/*定位大文件/日志,清理过期日志、无用文件;4、IO过高:iostat查看磁盘读写负载,iotop定位高IO进程,排查是否存在大量日志写入、文件读写操作。五、Linux网络面试题1.常用网络排查命令及使用场景ping:测试主机连通性,排查网络是否通、延迟是否过高;ifconfig/ipaddr:查看本机IP、网卡信息、MAC地址;netstat/ss:查看端口监听、连接状态,netstat-an|grep端口查看端口是否开放;traceroute:追踪数据包路由路径,排查网络卡顿、丢包节点;curl/wget:测试服务接口、外网访问连通性;telnet:测试服务器端口是否通畅,telnetIP端口。2.端口占用如何排查?如何释放占用端口?排查端口占用:CentOS7+:ss-lntp|grep端口号;通用命令:netstat-an|grep端口号、lsof-i:端口号;通过端口找到对应进程PID,再用kill命令结束进程,即可释放端口;生产注意:确认端口对应服务无用后再结束进程,避免误杀业务服务。3.TCP和UDP简单区别(运维面试高频)TCP:面向连接、可靠传输,三次握手建立连接、四次挥手断开连接,数据不丢失、无重复,速度稍慢;适用于文件传输、网页访问、数据库连接等对数据完整性要求高的场景;UDP:无连接、不可靠传输,无需建立连接,直接发送数据包,速度快、开销小;适用于视频直播、语音通话、DNS解析等对速度要求高、可轻微丢包的场景。六、Linux磁盘与文件系统面试题1.inode和block的作用?inode满了会出现什么问题?block:数据块,真正存储文件内容数据的区域;inode:索引节点,存储文件的属性信息(大小、权限、时间、数据块位置),每个文件对应一个唯一inode。inode爆满问题:磁盘空间明明充足,但无法创建新文件、无法写入数据,提示磁盘已满;常见于服务器大量小日志文件占用所有inode,解决方案是清理大量无用小文件。2.磁盘分区、格式化、挂载流程1、分区:fdisk/dev/sda对磁盘进行分区,创建分区表;2、格式化:mkfs.xfs/dev/sda1对分区进行文件系统格式化;3、临时挂载:mount/dev/sda1/data将分区挂载到指定目录;4、永久挂载:编辑/etc/fstab文件,添加挂载配置,重启自动生效。3.磁盘只读报错如何排查解决?常见原因:磁盘文件系统损坏、磁盘IO异常、服务器意外断电;解决方式:1、先卸载分区umount/data;2、执行磁盘检测修复fsck-f/dev/sda1;3、修复完成后重新挂载,一般可恢复正常读写。七、Linux系统开机与自启动面试题1.Linux开机启动流程1、开机自检BIOS:检测硬件设备是否正常;2、读取GRUB引导菜单:选择系统内核版本;3、加载系统内核:内核初始化硬件、加载驱动;4、启动systemd进程:系统第一个守护进程,PID=1,负责启动所有系统服务;5、读取开机自启配置、初始化终端,系统启动完成。2.如何设置服务开机自启?CentOS7、8、9主流系统使用systemd管理:systemctlenable服务名设置开机自启;systemctldisable服务名关闭开机自启;systemctlis-enabled服务名查看是否开机自启;自定义脚本自启:可写入/etc/rc.local文件,赋予执行权限后开机自动运行。八、Shell脚本基础面试题1.Shell脚本执行的几种方式?区别是什么?1、./test.sh:需要脚本有执行权限,在当前子shell执行;2、shtest.sh/bashtest.sh:无需执行权限,直接调用解释器执行;3、sourcetest.sh/.test.sh:在当前shell执行,脚本中的变量、配置会生效到当前终端。2.常用Shell变量、特殊符号含义$0:脚本本身名称;$1-$9:脚本第1-9个传入参数;$#:传入参数总个数;$?:上一条命令执行返回状态(0为成功,非0为失败);|管道符:将上一条命令的输出作为下一条命令的输入;>重定向:覆盖写入文件;>>追加重定向:追加内容到文件末尾。九、生产故障排查高频面试题1.服务器无法远程连接,排查思路?1、排查物理网络:本机ping服务器IP,测试网络是否通畅,是否断网、网段不通;2、排查端口:telnet/ss测试22端口是否开放,sshd服务是否宕机;3、排查防火墙:服务器防火墙是否放行22端口,是否拦截远程连接;4、排查服务器负载:服务器CPU、内存占用过高卡死,无法响应连接;5、排查ssh服务:重启sshd服务systemctlrestartsshd修复异常服务。2.磁盘空间充足,但提示nospaceleftondevice,原因及解决?核心原因:i

温馨提示

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

评论

0/150

提交评论