當(dāng)前位置 主頁 > 技術(shù)大全 >
對于系統(tǒng)管理員和開發(fā)人員而言,掌握Linux技術(shù)不僅是職業(yè)發(fā)展的必備條件,更是提升工作效率和解決問題能力的關(guān)鍵
本文將深入探討幾道經(jīng)典的Linux技術(shù)題,旨在幫助讀者深入理解Linux系統(tǒng)的核心原理,并掌握一系列高效的管理和故障排除技巧
1.深入理解Linux文件系統(tǒng)與權(quán)限管理 問題描述: 假設(shè)你負(fù)責(zé)管理一臺運(yùn)行著CentOS 7的服務(wù)器,服務(wù)器上存儲著多個(gè)重要項(xiàng)目和數(shù)據(jù)庫備份
你需要創(chuàng)建一個(gè)新用戶“backupuser”,并為其分配一個(gè)專用目錄/backup,同時(shí)確保該用戶只能訪問自己的目錄,無法訪問系統(tǒng)其他部分
如何實(shí)現(xiàn)這一目標(biāo)? 解決方案: 首先,使用`useradd`命令創(chuàng)建新用戶: sudo useradd -m backupuser `-m`參數(shù)會為新用戶創(chuàng)建一個(gè)主目錄,通常是`/home/backupuser`
但我們需要的是`/backup`,所以接下來手動創(chuàng)建目錄并更改所有權(quán): sudo mkdir /backup sudo chown backupuser:backupuser /backup 接下來,設(shè)置目錄權(quán)限,使得`backupuser`只能訪問該目錄,且不能修改其父目錄的權(quán)限(防止“權(quán)限提升”攻擊): sudo chmod 700 /backup sudo chmod u+s /bin/chown 這一步是為了防止后續(xù)可能出現(xiàn)的權(quán)限問題,但需謹(jǐn)慎使用,因?yàn)樗淖兞薱hown的默認(rèn)行為 注意:`sudo chmod u+s /bin/chown`雖然有時(shí)用于特定場景下的權(quán)限修復(fù),但通常不推薦在生產(chǎn)環(huán)境中使用,因?yàn)樗赡軒戆踩L(fēng)險(xiǎn)
更安全的做法是通過精確的文件系統(tǒng)布局和ACL(訪問控制列表)來管理權(quán)限
為了限制`backupuser`訪問系統(tǒng)其他部分,可以調(diào)整其shell為受限的shell,如`/sbin/nologin`或`/usr/sbin/rbash`(如果系統(tǒng)支持): sudo usermod -s /sbin/nologin backupuser 但這種方式會阻止用戶登錄,如果仍需要用戶通過SSH登錄進(jìn)行備份操作,則需采用其他方法限制其活動范圍,比如使用SSH的`Chroot`環(huán)境或配置`sudo`規(guī)則嚴(yán)格限制命令執(zhí)行
深入理解: Linux文件系統(tǒng)權(quán)限管理基于三種基本權(quán)限(讀r、寫w、執(zhí)行x)和用戶類別(所有者、所屬組、其他用戶)
掌握`ls -l`查看權(quán)限、`chmod`修改權(quán)限、`chown`和`chgrp`更改所有者和組是管理Linux系統(tǒng)的基礎(chǔ)
此外,了解SELinux(安全增強(qiáng)型Linux)和AppArmor等高級安全模塊,能進(jìn)一步提升系統(tǒng)的安全性
2.進(jìn)程管理與資源監(jiān)控 問題描述: 服務(wù)器上運(yùn)行著多個(gè)關(guān)鍵服務(wù),近期發(fā)現(xiàn)系統(tǒng)響應(yīng)變慢,懷疑有某個(gè)進(jìn)程占用了大量CPU或內(nèi)存資源
如何快速定位并處理這個(gè)問題? 解決方案: 首先,使用`top`或`htop`命令查看當(dāng)前系統(tǒng)的資源使用情況
`top`是Linux自帶的資源監(jiān)控工具,而`htop`是其增強(qiáng)版,提供了更友好的界面和更多功能(需預(yù)先安裝)
top 或 htop 在`top`或`htop`界面中,可以按`P`鍵按CPU使用率排序,或按`M`鍵按內(nèi)存使用率排序,從而快速找到資源消耗高的進(jìn)程
一旦確定了問題進(jìn)程,可以使用`kill`命令終止它,或者使用`kill -9`強(qiáng)制終止(謹(jǐn)慎使用,因?yàn)樗辉试S進(jìn)程進(jìn)行任何清理工作): sudo kill PID 或 sudo kill -9 PID 其中,`PID`是問題進(jìn)程的進(jìn)程ID
深入理解: 除了`top`和`htop`,還有其他工具如`ps`(顯示當(dāng)前活動進(jìn)程)、`pgrep`(根據(jù)名稱查找進(jìn)程ID)、`pstree