7、8月很多小伙伴刚毕业出来找工作,今天给大家分享一些有关Linux的岗位时会问的一些面试题吧,一般投校招岗位,面试官也不会问的太深奥的问题。话不多说,咱们直接进入正题。
(注:up主们都是小城市出身小城市读书,京✌沪✌就别杠什么就这点工资?就这么少?up水平有限请谅解)
面试官:市面上Linux常用的发行版有哪些?
目前发行版有debian、Fedora、Ubuntu、redhat、centOS 等等,答出来两三个就行了。
面试官:如何查看Linux的操作系统版本?
输入 uname -a 可以查看所有系统信息,包括内核版本、主机名或者输入 cat /etc/os-release ,这个文件包含了操作系统的名称、版本号等信息。两个命令都可以查看,答上一个就可以过答上两个更好。
面试官:如何查看当前服务器所监听的端口有哪些?
这里回答使用netstat,当然还有其他命令也可以查看,如ss命令。
答上来后面试官可能还会问你一些参数是干啥的,博主都给你们列出来了
netstat -anplut
-a : 显示所有活动的连接和监听端口;
-n : 以数字形式显示地址和端口号;
-p : 显示与连接相关的程序PID和名称;
-l : 仅显示监听的端口;
-u : 显示UDP协议的连接;
-t : 显示TCP协议的连接。
面试官:如何查看当前服务器的进程?
ps -ef 以全格式显示所有用户的进程。
top 实时跟进进程状态。
面试官可能会反问,我想查看一个mysqld的进程如何查看呢?
ps -ef | grep mysqld 可以筛选出mysqld相关的进程
面试官:Linux系统有哪些常见的目录?这些目录是用于存放什么文件的?
/bin:存放二进制可执行文件(ls,cat,mkdir等),常用命令一般都在这里;
/etc:存放系统管理和配置文件;
/home:存放所有用户文件的根目录,是用户主目录的基点,比如用户yidiandian的主目录就是/home/yidiandian;
/usr :用于存放系统应用程序/opt:额外安装的可选应用程序包所放置的位置;
/proc:虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息;
/root:超级用户(系统管理员)的主目录;
/sbin: 存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理命令和程序。如ifconfig等;
/dev:用于存放设备文件;
/mnt:系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统;
/boot:存放用于系统引导时使用的各种文件;
/lib :存放着和系统运行相关的库文件 ;
/tmp:用于存放各种临时文件,是公用的临时文件存储点;
/var:用于存放运行时需要改变数据的文件,也是某些大文件的溢出区,比方说各种服务的日志文件(系统启动日志等。)等;
/lost+found:这个目录平时是空的,只有在文件系统检测和修复过程中发现了孤立的数据块或文件时,该目录才会包含内容。
(这个大概说出一些来就差不多了,当然全记住更好。)
面试官:现在有个故障需要查看日志,Linux内如何查看指定时间段的日志?
sed -n‘/起始时间/,/结束时间/p’ 日志文件
例如
sed -n‘/2025-07-25 10:00:00/,/2025-07-25 11:00:00/p’ messages 可以查看10点到11点messages的日志信息
面试官:使用 vi 或 vim 编辑过文件吗?有几种模式?
这里回答有三种模式,分别是普通模式、插入模式、命令行模式。
普通模式:
在普通模式下,按键不是输入字符,而是执行命令,如移动光标、删除文本、复制/粘贴等。
插入模式:
用于输入文本。可以通过在普通模式下输入不同的命令来进入插入模式
下面是一些从普通模式进入插入模式的操作:
i: 在当前光标之前进入插入模式。
a: 在当前光标之后进入插入模式。
I: 移至行首并进入插入模式。
A: 移至行尾并进入插入模式。
o: 在当前行下方新开一行,并进入插入模式。
O: 在当前行上方新开一行,并进入插入模式。
要退出插入模式的话点击键盘左上角的Esc,会退出并进入普通模式
命令行模式:
通过在普通模式下输入 : 来进入命令行模式,允许用户执行更复杂的命令,比如保存文件(:w)、退出编辑器(:q)、查找和替换文本等。
一般我们插入模式编辑完毕后,点击 Esc,再输入 :wq保存退出编辑器。
面试官:你常用的查看文件的命令有哪些?
1、cat 显示整个文件的内容;
示例: cat filename
2、less 分页显示文件内容,允许向前和向后浏览;
示例: less filename
3、more 类似于less,但只支持向前浏览;
示例: more filename
4、head 显示文件的前几行,默认是前10行;
示例: head -n 20 filename (显示前20行)
5、tail 显示文件的最后几行,默认是最后10行;常用于查看日志文件的最新更新;
示例: tail -f filename (实时查看文件更新)
tail -n 20 filename (显示末尾20行)
6、nl 类似于cat,但是会在每行前添加行号;
示例: nl filename
这些命令在你排查故障时,翻看日志的时候会经常用到。
面试官:如何在/root/目录下找到名为 yidiandian 的文件(当然这个文件名不是真的叫yidiandian)?
find /root -name ‘test’
按文件名查找,在root目录下找名为 yidiandian 的文件
面试官:如何将某个文件中的test全部替换修改为yidiandian(这个也一样,不一定是真的改为yidiandian)
sed -i 's/test/yidiandian/g' filename
s 表示替换操作
/test/yidiandian/ 中的第一个 test 是你想要查找的文本模式,第二个 yidiandian 是用来替换它的文本。
g 标志表示全局替换