前言
如果你要去面試一個(gè)Linux系統(tǒng)運(yùn)維工程師的職位,下面這十個(gè)最常見的問題一定要會(huì),否則你的面試可能就危險(xiǎn)了。這些都是比較基本的問題,大家要理解,不能光死記硬背。
1、如何查看系統(tǒng)內(nèi)核的版本
這里有兩種方法:
1) uname -a
uname 這個(gè)命令是用來打印系統(tǒng)信息的, -a 可以打印系統(tǒng)所有信息,其中包含內(nèi)核版本,比如我的版本號(hào)是3.10.0-957.21.3.el7.X86_64。
2) cat /proc/version
下面再補(bǔ)充一下各個(gè)數(shù)字和字母代表的含義:
- 3 表示主版本號(hào),有結(jié)構(gòu)性變化才更改 (最新的是5)
- 10 表示次版本號(hào),新增功能才會(huì)變化,一般基數(shù)表示測(cè)試版,偶數(shù)表示穩(wěn)定版。2020年3月30日,Linus Torvalds 發(fā)布了最新的 Linux 內(nèi)核版本為 5.6
- 0 表示對(duì)次版本的修訂次數(shù)或補(bǔ)丁包數(shù)
- 957 代表編譯的次數(shù),每次編譯可對(duì)少數(shù)程序優(yōu)化或修改
- el7 用來表示版本的特殊信息,有較大的隨意性;el 代表企業(yè)版,pp代表測(cè)試版,fc代表 Fedora core,rc代表候選版本
- X86_64 表示64位
2、如何查看系統(tǒng)當(dāng)前的 IP 地址
也有兩種方法:
1)ifconfig -a
ifconfig 是用來配置網(wǎng)絡(luò)接口的命令,-a 可以顯示當(dāng)前所有的接口。
2)ip addr show
3、如何查看磁盤還有多少剩余空間
這里主要可以用 df -ah 命令來查看,df 是用來查看文件系統(tǒng)磁盤空間使用情況的命令,-a 顯示所有文件系統(tǒng),-h 用人們可讀的方式進(jìn)行顯示。
上面可以看到我的磁盤 /dev/vda1 有40 G,已經(jīng)用了1.7 G,還有 36 G的可用空間。
4、如何在系統(tǒng)中管理服務(wù)
這里別人可能會(huì)問你,如何查看一個(gè)服務(wù)是否在運(yùn)行,如何啟動(dòng)、停止、或重新加載配置文件。這里答案也有兩種。
1) 使用 service 命令
查看服務(wù)狀態(tài)
service [servicename] status
啟動(dòng)/停止/重啟服務(wù)
service [servicename] [start|stop|restart]
重新加載服務(wù)配置文件(不重啟服務(wù))
service [servicename] [reload]
比如我想查看一下 sshd 的服務(wù)有沒有開啟
2)使用 systemctl 命令
比較新的系統(tǒng)都已經(jīng)采用了 systemd,systemctl 是systemd的一個(gè)工具,主要負(fù)責(zé)控制systemd系統(tǒng)和服務(wù)管理器。
查看服務(wù)狀態(tài)
systemctl status [servicename]
啟動(dòng)/停止/重啟服務(wù)
systemctl [start|stop|restart] [servicename]
重新加載服務(wù)配置文件(不重啟服務(wù))
systemctl [reload] [servicename]
5、如何查看一個(gè)目錄的大小
可以使用 du -sh [目錄] 命令,du 使用來計(jì)算文件/目錄大小的命令,-s 顯示文件或整個(gè)目錄的大小,-h 是用可讀格式。
比如上面我查看了一下我的主目錄下tmp目錄的大小,一共有80 K
6、如何查看你系統(tǒng)中開放的端口號(hào)
1) 使用 netstat 命令
netstat命令用來顯示網(wǎng)絡(luò)狀態(tài),包括網(wǎng)絡(luò)連接、路由表、接口統(tǒng)計(jì)等信息。常用的參數(shù)如下:
-a (all) 顯示所有選項(xiàng),默認(rèn)不顯示LISTEN相關(guān)。
-t (tcp) 僅顯示tcp相關(guān)選項(xiàng)。
-u (udp) 僅顯示udp相關(guān)選項(xiàng)。
-n 拒絕顯示別名,能顯示數(shù)字的全部轉(zhuǎn)化成數(shù)字。
-l 僅列出有在 Listen (監(jiān)聽) 的服務(wù)狀態(tài)。
-p 顯示建立相關(guān)鏈接的程序名
-r 顯示路由信息,路由表
-e 顯示擴(kuò)展信息,例如uid等
-s 按各個(gè)協(xié)議進(jìn)行統(tǒng)計(jì)
-c 每隔一個(gè)固定時(shí)間,執(zhí)行該netstat命令。
下面我用了 netstat -tulpn 命令,可以看到端口 22正在被監(jiān)聽。
2)使用 ss 命令
現(xiàn)在也有很多人用 ss 命令,ss 一般用于轉(zhuǎn)儲(chǔ)套接字統(tǒng)計(jì)信息。它還可以顯示所有類型的套接字統(tǒng)計(jì)信息,包括 PACKET、TCP、UDP、DCCP、RAW、Unix 域等。這里可以用 ss -lntpd
7、如何查看某個(gè)進(jìn)程對(duì) CPU 的使用情況
1) 可以使用 top 命令
top命令是Linux下常用的性能分析工具,能夠?qū)崟r(shí)顯示系統(tǒng)中各個(gè)進(jìn)程的資源占用狀況,類似于Windows的任務(wù)管理器。
2) 使用 ps 命令
ps aux 可以顯示所有使用者的進(jìn)程,最常用的方法是ps aux,然后再利用一個(gè)管道符號(hào)導(dǎo)向到grep去查找特定的進(jìn)程。比如查看nginx 進(jìn)程可以用
8、Linux里如何來做掛載
這里主要考的是 mount 命令,用于掛載Linux系統(tǒng)外的文件。
只輸入 mount命令可以查看所有系統(tǒng)已經(jīng)掛載的文件。
如果想掛載一個(gè)新的文件,比如將 /dev/hda1 掛在 /mnt 之下,可以用
9、如何查看一些你不太熟悉的命令
這里要考大家的是使用 man 命令。對(duì)某個(gè) Linux的命令不熟悉,可以用 man <命令 >,系統(tǒng)會(huì)返回該命令的一個(gè)非常詳細(xì)的手冊(cè),來幫助大家使用。
10、如果使用了 man 命令還是找不到答案怎么辦
百度,或者在論壇、社群里求助大神......
當(dāng)然,只掌握上面這十個(gè)基本問題還是遠(yuǎn)遠(yuǎn)不夠的。大家在平時(shí)的工作和學(xué)習(xí)中要注重積累;在面試前將自己的經(jīng)歷、重要的知識(shí)點(diǎn)作好梳理和充分的準(zhǔn)備;在面試當(dāng)中調(diào)整好心態(tài),從容回答問題,邏輯要清晰,表達(dá)要清楚。最后祝大家都能找到自己理想的工作。
總結(jié)
到此這篇關(guān)于Linux面試中最常問的10個(gè)問題的文章就介紹到這了,更多相關(guān)Linux面試最常問問題內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!