20條Linux命令面試問答

Linux中國發表於2015-02-04

問:1 如何檢視當前的Linux伺服器的執行級別?

答: ‘who -r’ 和 ‘runlevel’ 命令可以用來檢視當前的Linux伺服器的執行級別。

問:2 如何檢視Linux的預設閘道器?

答: 用 “route -n” 和 “netstat -nr” 命令,我們可以檢視預設閘道器。除了預設的閘道器資訊,這兩個命令還可以顯示當前的路由表。

問:3 如何在Linux上重建初始化記憶體盤映象檔案?

答: 在CentOS 5.X / RHEL 5.X中,可以用mkinitrd命令來建立初始化記憶體盤檔案,舉例如下:

# mkinitrd -f -v /boot/initrd-$(uname -r).img $(uname -r)

如果你想要給特定的核心版本建立初始化記憶體盤,你就用所需的核心名替換掉 ‘uname -r’ 。

在CentOS 6.X / RHEL 6.X中,則用dracut命令來建立初始化記憶體盤檔案,舉例如下:

# dracut -f

以上命令能給當前的系統版本建立初始化記憶體盤,給特定的核心版本重建初始化記憶體盤檔案則使用以下命令:

# dracut -f initramfs-2.x.xx-xx.el6.x86_64.img 2.x.xx-xx.el6.x86_64

問:4 cpio命令是什麼?

答: cpio就是複製入和複製出的意思。cpio可以向一個歸檔檔案(或單個檔案)複製檔案、列表,還可以從中提取檔案。

問:5 patch命令是什麼?如何使用?

答: 顧名思義,patch命令就是用來將修改(或補丁)寫進文字檔案裡。patch命令通常是接收diff的輸出並把檔案的舊版本轉換為新版本。舉個例子,Linux核心原始碼由百萬行程式碼檔案構成,所以無論何時,任何程式碼貢獻者貢獻出程式碼,只需傳送改動的部分而不是整個原始碼,然後接收者用patch命令將改動寫進原始的原始碼裡。

建立一個diff檔案給patch使用,

# diff -Naur old_file new_file > diff_file

舊檔案和新檔案要麼都是單個的檔案要麼都是包含檔案的目錄,-r引數支援目錄樹遞迴。

一旦diff檔案建立好,我們就能在舊的檔案上打上補丁,把它變成新檔案:

# patch < diff_file

問:6 aspell有什麼用 ?

答: 顧名思義,aspell就是Linux作業系統上的一款互動式拼寫檢查器。aspell命令繼任了更早的一個名為ispell的程式,並且作為一款免費替代品 ,最重要的是它非常好用。當aspell程式主要被其它一些需要拼寫檢查能力的程式所使用的時候,在命令列中作為一個獨立執行的工具的它也能十分有效。

問:7 如何從命令列檢視域SPF記錄?

答: 我們可以用dig命令來檢視域SPF記錄。舉例如下:

linuxtechi@localhost:~$ dig -t TXT google.com

問:8 如何識別Linux系統中指定檔案(/etc/fstab)的關聯包?

答:

# rpm -qf /etc/fstab

以上命令能列出提供“/etc/fstab”這個檔案的包。

問:9 哪條命令用來檢視bond0的狀態?

答:

cat /proc/net/bonding/bond0

問:10 Linux系統中的/proc檔案系統有什麼用?

答: /proc檔案系統是一個基於記憶體的檔案系統,其維護著關於當前正在執行的核心狀態資訊,其中包括CPU、記憶體、分割槽劃分、I/O地址、直接記憶體訪問通道和正在執行的程式。這個檔案系統所代表的並不是各種實際儲存資訊的檔案,它們指向的是記憶體裡的資訊。/proc檔案系統是由系統自動維護的。

問:11 如何在/usr目錄下找出大小超過10MB的檔案?

答:

# find /usr -size +10M

問:12 如何在/home目錄下找出120天之前被修改過的檔案?

答:

# find /home -mtime +120

問:13 如何在/var目錄下找出90天之內未被訪問過的檔案?

答:

# find /var \! -atime -90

問:14 在整個目錄樹下查詢檔案“core”,如發現則無需提示直接刪除它們。

答:

# find / -name core -exec rm {} \;

問:15 strings命令有什麼作用?

答: strings命令用來提取和顯示非文字檔案中的文字字串。(LCTT 譯註:當用來分析你係統上莫名其妙出現的二進位制程式時,可以從中找到可疑的檔案訪問,對於追查入侵有用處)

問:16 tee 過濾器有什麼作用 ?

答: tee 過濾器用來向多個目標傳送輸出內容。如果用於管道的話,它可以將輸出複製一份到一個檔案,並複製另外一份到螢幕上(或一些其它程式)。

linuxtechi@localhost:~$ ll /etc | nl | tee /tmp/ll.out

在以上例子中,從ll輸出可以捕獲到 /tmp/ll.out 檔案中,並且同樣在螢幕上顯示了出來。

問:17 export PS1 = ”$LOGNAME@hostname:\$PWD: 這條命令是在做什麼?

答: 這條export命令會更改登入提示符來顯示使用者名稱、本機名和當前工作目錄。

問:18 ll | awk ‘{print $3,”owns”,$9}’ 這條命令是在做什麼?

答: 這條ll命令會顯示這些檔案的檔名和它們的擁有者。

問:19 :Linux中的at命令有什麼用?

答: at命令用來安排一個程式在未來的做一次一次性執行。所有提交的任務都被放在 /var/spool/at 目錄下並且到了執行時間的時候通過atd守護程式來執行。

問:20 linux中lspci命令的作用是什麼?

答: lspci命令用來顯示你的系統上PCI匯流排和附加裝置的資訊。指定-v,-vv或-vvv來獲取越來越詳細的輸出,加上-r引數的話,命令的輸出則會更具有易讀性。

相關文章