歡迎您光臨本站 註冊首頁

Linux面試中最常問的10個問題總結

←手機掃碼閱讀     qp18502452 @ 2020-06-10 , reply:0

前言

如果你要去面試一個Linux系統運維工程師的職位,下面這十個最常見的問題一定要會,否則你的面試可能就危險了。這些都是比較基本的問題,大家要理解,不能光死記硬背。

1、如何查看系統內核的版本

這裡有兩種方法:

1) uname -a

uname 這個命令是用來打印系統信息的, -a 可以打印系統所有信息,其中包含內核版本,比如我的版本號是3.10.0-957.21.3.el7.X86_64。

2) cat /proc/version

下面再補充一下各個數字和字母代表的含義:

  • 3 表示主版本號,有結構性變化才更改 (最新的是5)

  • 10 表示次版本號,新增功能才會變化,一般基數表示測試版,偶數表示穩定版。2020年3月30日,Linus Torvalds 發佈了最新的 Linux 內核版本為 5.6

  • 0 表示對次版本的修訂次數或補丁包數

  • 957 代表編譯的次數,每次編譯可對少數程序優化或修改

  • el7 用來表示版本的特殊信息,有較大的隨意性;el 代表企業版,pp代表測試版,fc代表 Fedora core,rc代表候選版本

  • X86_64 表示64位

2、如何查看系統當前的 IP 地址

也有兩種方法:

1)ifconfig -a

ifconfig 是用來配置網絡接口的命令,-a 可以顯示當前所有的接口。

2)ip addr show

3、如何查看磁盤還有多少剩餘空間

這裡主要可以用 df -ah 命令來查看,df 是用來查看文件系統磁盤空間使用情況的命令,-a 顯示所有文件系統,-h 用人們可讀的方式進行顯示。

上面可以看到我的磁盤 /dev/vda1 有40 G,已經用了1.7 G,還有 36 G的可用空間。

4、如何在系統中管理服務

這裡別人可能會問你,如何查看一個服務是否在運行,如何啟動、停止、或重新加載配置文件。這裡答案也有兩種。

1) 使用 service 命令

查看服務狀態

  service [servicename] status

 

啟動/停止/重啟服務

  service [servicename] [start|stop|restart]

 

重新加載服務配置文件(不重啟服務)

  service [servicename] [reload]

 

比如我想查看一下 sshd 的服務有沒有開啟

2)使用 systemctl 命令

比較新的系統都已經採用了 systemd,systemctl 是systemd的一個工具,主要負責控制systemd系統和服務管理器。

查看服務狀態

  systemctl status [servicename]

 

啟動/停止/重啟服務

  systemctl [start|stop|restart] [servicename]

 

重新加載服務配置文件(不重啟服務)

  systemctl [reload] [servicename]

 

5、如何查看一個目錄的大小

可以使用 du -sh [目錄] 命令,du 使用來計算文件/目錄大小的命令,-s 顯示文件或整個目錄的大小,-h 是用可讀格式。

比如上面我查看了一下我的主目錄下tmp目錄的大小,一共有80 K

6、如何查看你係統中開放的端口號

1) 使用 netstat 命令

netstat命令用來顯示網絡狀態,包括網絡連接、路由表、接口統計等信息。常用的參數如下:

-a (all) 顯示所有選項,默認不顯示LISTEN相關。

-t (tcp) 僅顯示tcp相關選項。

-u (udp) 僅顯示udp相關選項。

-n 拒絕顯示別名,能顯示數字的全部轉化成數字。

-l 僅列出有在 Listen (監聽) 的服務狀態。

-p 顯示建立相關鏈接的程序名

-r 顯示路由信息,路由表

-e 顯示擴展信息,例如uid等

-s 按各個協議進行統計

-c 每隔一個固定時間,執行該netstat命令。

下面我用了 netstat -tulpn 命令,可以看到端口 22正在被監聽。

2)使用 ss 命令

現在也有很多人用 ss 命令,ss 一般用於轉儲套接字統計信息。它還可以顯示所有類型的套接字統計信息,包括 PACKET、TCP、UDP、DCCP、RAW、Unix 域等。這裡可以用 ss -lntpd

7、如何查看某個進程對 CPU 的使用情況

1) 可以使用 top 命令

top命令是Linux下常用的性能分析工具,能夠實時顯示系統中各個進程的資源佔用狀況,類似於Windows的任務管理器。

2) 使用 ps 命令

ps aux 可以顯示所有使用者的進程,最常用的方法是ps aux,然後再利用一個管道符號導向到grep去查找特定的進程。比如查看nginx 進程可以用

  ps aux | grep nginx

 

8、Linux裡如何來做掛載

這裡主要考的是 mount 命令,用於掛載Linux系統外的文件。

只輸入 mount命令可以查看所有系統已經掛載的文件。

如果想掛載一個新的文件,比如將 /dev/hda1 掛在 /mnt 之下,可以用

  mount /dev/hda1 /mnt

 

9、如何查看一些你不太熟悉的命令

這裡要考大家的是使用 man 命令。對某個 Linux的命令不熟悉,可以用 man <命令>,系統會返回該命令的一個非常詳細的手冊,來幫助大家使用。

10、如果使用了 man 命令還是找不到答案怎麼辦

百度,或者在論壇、社群裡求助大神......

當然,只掌握上面這十個基本問題還是遠遠不夠的。大家在平時的工作和學習中要注重積累;在面試前將自己的經歷、重要的知識點作好梳理和充分的準備;在面試當中調整好心態,從容回答問題,邏輯要清晰,表達要清楚。最後祝大家都能找到自己理想的工作。

                   

   


[qp18502452 ] Linux面試中最常問的10個問題總結已經有300次圍觀

http://coctec.com/docs/linux/show-post-237753.html