
本文整理了一些比較常見的Linux相關的面試題目,內容主要涉及Linux基本原理、常用命令操作,下面我們一起看一看吧!
1、說說Linux啟動大致過程?
加載BIOS–>讀取 MBR–>Boot Loader–>加載內核–>用戶層 Init 依據 Inittab 文件來設定系統運行的等級(一般 3 或者 5,3 是多用戶命令行,5 是圖形界面)–>Init 進程執行 rc.syninit–>啟動內核模塊–>執行不同級別運行的腳本程序–>執行 /etc/rc.d/rc.local (本地運行服務)–>執行 /bin/login,就可以登錄了。
這道題可以擴展一下:Init系統運行等級一共有幾種,每一種都是什么?
0:關機,只要是0就不能開機
1:單用戶模式,不能被遠程登陸
2:多用戶不能上網模式
3:多用戶可以上網模式
4:未使用
5:有圖形的Linux
6:重啟,只要是6就會不斷的重啟,子子孫孫無窮匱焉的重啟
2、Linux系統是由那些部分組成?
Linux由系統內核,Shell,文件系統和應用程序四部分組成。
3、文件系統ext2、ext3、ext4的區別是啥?
ext3和ext2的主要區別在于ext3引入Journal。
ext2和ext3的格式完全相同,只是在ext 3硬盤最后面有一部分空間用來存放Journal(日志)的記錄;
在ext2中,寫資料到硬盤中時,先將資料寫入緩存中,當緩存寫滿時才會寫入硬盤中;
在ext3中,寫資料到硬盤中時,先將資料寫入緩存中,待緩存寫滿時系統先通知Journal,再將資料寫入硬盤,完成后再通知Journal,資料已完成寫入工作;
在ext3中,也就是有Journal機制里,系統開機時檢查Journal的資料,來查看是否有錯誤產生,這樣就快了很多;
ext4和ext3的主要區別在于:首先ext4與ext3兼容,ext3只支持32000個子目錄,而ext4支持無限數量的子目錄;ext3所支持的16TB文件系統和的2TB的文件,而ext4分別支持1EB(1,048,576TB,1EB=1024PB,1PB=1024TB)的文件系統,以及16TB的文件;ext3的數據塊分配策略是盡快分配,而ext4是盡可能地延遲分配,直到文件在Cache中寫完才開始分配數據塊并寫入磁盤;ext4允許關閉日志,以便某些有特殊需求的用戶可以借此進一步提升性能等等等等。
4、如何殺死指定的進程?
$ps-ef|grep進程名|grep-v grep|awk'{print$2}'|xargs kill-9
注意:這里awk后面是單引號不是雙引號。
5、列出Linux常見打包工具并寫相應解壓縮參數(至少三種)?
Tar命令就是打包工具,對應的解壓縮參數tar-cvf、tar-zcvf、tar-jcvf是對應拆包解壓什么文件的要對應記住,不要記混。
6、一個EXT3的文件分區,當用touch新建文件時報錯,錯誤信息是磁盤已滿,但是使用df-H查看分區信息時只使用了50%,請分析具體原因?
兩種情況:一種是磁盤配額問題,另外一種就是EXT3文件系統的設計不適合很多小文件跟大文件的一種文件格式,出現很多小文件時,容易導致Inode耗盡了。
7、請使用Linux系統命令統計出establish狀態的連接數有多少?
$netstat-an|grep ESTABLISHED|wc-l
netstat命令-a參數是顯示所有鏈接,-n是不要域名解析,即都是以數字IP的顯示。
現實生產系統的時候,如果服務器維持的鏈接是成千上萬的話,少用netstat,多用ss。
8、如何統計出一臺Web Server上的各個狀態(ESTABLISHED/SYN_SENT/SYN_RECV等)的個數?
$netstat-antl|grep ESTABLISTHED|wc-l
$netstat-antl|grep SYN_SENT|wc-l
$netstat-antl|grep SYN_RECV|wc-l
netstat命令的-t參數是查詢TCP協議的鏈接,-l參數是查詢Listen狀態下的鏈接。
netstat-an的話會出現大概三個部分的內容,一部分是TCP協議內容,一部分是UDP協議的內容,還有一部分是Unix Socket方面的鏈接,Active UNIX domain sockets(servers and established)。
9、查找/usr/local/apache/logs目錄最后修改時間大于30天的文件并刪除
find命令以及相關搭配命令是筆試中的重點,因為在現實中運用的情況最多,所以必考必考必考!!!
$find/usr/local/apache/logs-type f-mtime+30-ok rm{};
使用mtime+30來描述修改時間大于30天,使用-type-f來描述文件,然后使用-ok命令將所有滿足的文件都執行下一步操作。
這里是刪除文件,所以比較人性化的用ok,刪之前詢問一下,如果簡單暴力就可以直接-exec,直接槍斃掉。用了-exec的話是不用-f的,多此一舉。
10、編寫個Shell腳本將/usr/local/test目錄下大于100K的文件轉移到/tmp目錄
touch AAA.sh
#!/bin/bash
find/usr/local/test/-size+100K-exec mv{}/tmp;
注:-exec and-ok后面的花括號里面的內容就是使用find命令查找出來的文件名。
11、添加一條到192.168.3.0/24的路由,網關為192.168.1.254?
$route add-net 192.168.3.0 netmask 255.255.255.0 gw 192.168.1.254或者route add-net 192.168.3.0/24 gw 192.168.1.254
注:route命令是臨時性的增加路由,如果需要永久性的添加路由方法如下:
方法一
$vim etc/rc.local
route add-net 192.168.3.0/24 gw 192.168.1.254。
方法二
$vim etc/sysconfig/network
GATEWAY=192.168.1.254
以上就是關于“Linux運維工程師面試常見基礎題”的內容介紹,希望對大家學習有所幫助。想要了解更多關于Linux運維工程師面試培訓的相關資訊歡迎來咨詢。