面試題:Linux 系統基礎提問 (一)

讲文张字發表於2024-07-03

Linux系統中如何管理使用者和組?

Linux系統中使用者和組的管理通常包括以下幾個方面:

1、建立使用者和組: 使用useraddgroupadd命令建立新使用者和新組。

2、修改使用者和組資訊: 使用usermodgroupmod命令來修改使用者和組的資訊。

3、刪除使用者和組: 使用userdelgroupdel命令來刪除使用者和組。

4、管理密碼: 使用passwd命令來管理使用者密碼。

這些基本命令和操作使得Linux系統管理員能夠有效地管理系統的使用者和許可權。


Linux系統中常見的檔案許可權有哪些?如何修改它們?

1、Linux系統中的檔案許可權主要包括讀(r)、寫(w)和執行(x)許可權。許可權可以針對檔案的所有者、所屬組以及其他使用者設定。

2、修改檔案許可權的常用命令是chmod。例如,chmod u+x filename命令將給檔案所有者增加執行許可權。

3、另外,chownchgrp命令可用於更改檔案的所有者和所屬組。


Linux系統中的程序管理包括哪些基本操作?

Linux系統中的程序管理主要包括以下操作:

1、檢視程序: 使用pstop命令檢視當前系統中的程序。

2、控制程序: 使用killpkill、和killall命令來終止程序。

3、後臺和前臺控制: 使用bg將程序移到後臺,使用fg將程序帶回前臺。

4、調整優先順序: 使用nicerenice命令調整程序的優先順序。


Linux系統中的網路配置包括哪些基本操作?

Linux系統中的網路配置主要涉及以下操作:

1、檢視和配置網路介面: 使用ifconfigip命令檢視和配置網路介面。

2、管理路由表: 使用routeip route命令檢視和修改路由表。

3、配置DNS: 編輯/etc/resolv.conf檔案來配置DNS伺服器。

4、測試網路連線: 使用pingtraceroute命令測試網路連通性。


Linux中如何使用cron和crontab進行任務排程?

在Linux中,cron是一個基於時間的任務排程器,用於定期執行任務。

1、crontab命令用來建立、修改、刪除或列出cron作業。

2、編輯crontab檔案時,需要指定執行時間和相應的命令。

3、格式通常為“分鐘 小時 日期 月份 星期 命令”


Linux系統中的日誌管理主要涉及哪些方面?

Linux系統的日誌管理主要包括以下幾個方面:

1、日誌檔案儲存: 系統和應用日誌通常儲存在/var/log目錄。

2、日誌級別: 日誌有不同的級別,如INFOERRORDEBUG等。

3、檢視日誌: 使用如catlessgrep等命令檢視日誌檔案。

4、日誌輪換: 使用logrotate等工具進行日誌檔案的輪換和管理。

5、系統日誌服務: 如syslogdrsyslog服務,負責日誌的收集和處理。


Linux系統中的inode是什麼,它有什麼作用?

在Linux系統中,inode(索引節點)是檔案系統的一個重要概念。每個檔案或目錄都有一個與之對應的inode,它包含了關於檔案的後設資料,但不包含檔名或檔案資料。inode的作用包括:

1、儲存屬性inode儲存了檔案的屬性,如大小、許可權、所有者、建立時間、最後訪問和修改時間等。

2、連結資訊inode儲存了檔案資料塊的位置資訊,這是檔案系統查詢檔案內容的關鍵。

3、管理硬連結: 透過inode,多個檔名(硬連結)可以指向同一個檔案。

inode是檔案系統中非常關鍵的部分,對於檔案的管理和訪問至關重要。


Linux中的Swap空間是什麼,它是如何工作的?

1、Swap空間是Linux系統中的一種虛擬記憶體管理機制。它的主要作用是:
2、當實體記憶體不足時,系統可以將記憶體中不常用的資料頁交換到Swap空間,從而為需要更多記憶體的程序釋放空間。
3、Swap空間可以是一個專用的分割槽(Swap分割槽)或一個檔案(Swap檔案)。
4、Swap的工作原理是基於頁面置換演算法,當系統實體記憶體緊張時,它會將記憶體中的資料頁移動到Swap空間,從而為新的資料頁騰出空間。


Linux系統中如何檢視和監控系統效能?

在Linux系統中,檢視和監控系統效能的常用方法包括:

1、top命令: 實時顯示系統中各個程序的資源佔用情況。

2、vmstat命令: 報告虛擬記憶體統計資訊。

3、iostat命令: 監控系統輸入輸出裝置和CPU使用情況。

4、netstat命令: 顯示網路連線、路由表、介面統計等網路資訊。

5、free命令: 顯示系統記憶體使用情況。
這些工具和命令能幫助系統管理員有效監控和診斷系統效能問題。


Linux中的許可權控制列表(ACL)是什麼,如何使用它們?

Linux中的許可權控制列表(ACL)提供了比傳統許可權設定更詳細的許可權控制。使用ACL可以對單個使用者或組設定特定的許可權。基本的ACL操作包括:

1、使用getfacl命令檢視檔案或目錄的ACL。

2、使用setfacl命令設定或修改檔案或目錄的ACL。

例如,setfacl -m u:username:rw file命令會給特定使用者對檔案的讀寫許可權。ACL是高階檔案許可權設定的有效工具。


Linux系統中的“殭屍程序”是什麼,如何處理它們?

在Linux系統中,殭屍程序(Zombie Process)是指已經完成執行但其父程序尚未讀取其退出狀態的程序。它們的特點和處理方法如下:

1、特點: 殭屍程序已經釋放了大部分資源,但在程序表中保留一個條目,包含退出碼等資訊。

2、處理: 通常,父程序會透過呼叫wait()waitpid()函式來讀取子程序的退出狀態,從而移除殭屍程序。如果父程序未正確處理,殭屍程序將保持在系統中。

3、解決方法: 可以嘗試手動終止父程序,這通常會導致它的所有子程序被init程序接管並清理。如果不想終止父程序,可能需要修改並重啟有問題的應用以防止產生更多殭屍程序。

殭屍程序通常不會導致嚴重問題,但如果數量過多,可能會消耗系統資源。


Linux中的I/O排程器有哪些型別,它們各自的特點是什麼?

Linux中的I/O排程器負責管理對磁碟的讀寫請求。主要型別及其特點包括:

1、CFQ(完全公平佇列)排程器: 為每個程序提供公平的磁碟時間。適用於多工和通用系統。

2、Deadline排程器: 確保請求在一定時間內完成,優先處理即將到期的請求。適用於需要快速響應的系統。

3、NOOP(無操作)排程器: 是一個簡單的FIFO佇列,適用於高階儲存系統(如SSD)。

4、Anticipatory排程器: 基於啟發式方法,預測下一個即將到來的I/O請求,減少磁碟尋道時間。

根據系統的具體需求和硬體配置,選擇合適的I/O排程器可以顯著提高系統效能。


Linux系統中的RAID是什麼,它有哪些常見型別?

RAID(冗餘磁碟陣列的獨立磁碟)是一種儲存技術,它將多個磁碟組合成一個單一的邏輯單元,以提高效能和/或資料冗餘。常見的RAID型別包括:

1、RAID 0(條帶化): 將資料分散儲存在兩個或更多的硬碟上,提高讀寫速度,但不提供冗餘。

2、RAID 1(映象): 資料完全複製到兩個或更多硬碟上,提供冗餘,但容量只有單個硬碟的大小。

3、RAID 5(帶奇偶校驗的條帶化): 分散式奇偶校驗,提供資料冗餘和改善效能。

4、RAID 10(映象和條帶化的組合): 結合了RAID 0和RAID 1的特點,提供冗餘和效能的平衡。

選擇合適的RAID級別取決於具體的效能和資料冗餘需求。


Linux系統中的NFS是什麼,它的主要用途是什麼?

NFS(Network File System)是一種分散式檔案系統協議,允許一個系統上的使用者訪問另一個系統上的檔案,就像訪問本地檔案一樣。其主要用途包括:
1、共享儲存: 在網路中的多個機器間共享檔案和目錄。

2、簡化資料管理: 中央管理資料,而非在每個客戶端單獨儲存。

3、提高可用性和靈活性: 資料可以從網路的任何地方訪問。

NFS廣泛應用於企業和學術環境,提供了簡單而有效的跨平臺檔案共享解決方案。


Linux中的SSH是什麼,如何安全地使用SSH?

SSH(Secure Shell)是一種網路協議,用於安全地訪問遠端計算機。安全使用SSH的方法包括:

1、使用金鑰認證: 相對於密碼認證,使用SSH金鑰對提供更高的安全性。

2、禁用根登入: 修改SSH配置,禁止遠端根使用者登入。

3、更改預設埠: 將SSH從預設的埠22更改為其他埠,減少自動化攻擊的可能性。

4、使用防火牆限制訪問: 僅允許可信的IP地址訪問SSH埠。

5、使用Fail2ban: 自動阻止頻繁嘗試登入失敗的IP地址。

遵循這些最佳實踐可以顯著提高透過SSH訪問系統的安全性。

相關文章