Review — Linux
Linux 是一種開源的類 Unix 操作系統內核,廣泛應用于服務器、嵌入式設備和個人計算機中。其核心特點是開源、穩定、安全和高度的可定制性。對于大學畢業生而言,掌握 Linux 的基本操作和原理是進入 IT 行業的重要技能之一。
Linux 的基本架構
Linux 系統由內核、Shell、文件系統和應用程序組成。內核是操作系統的核心,負責管理硬件資源和進程調度。Shell 是用戶與內核交互的接口,常見的 Shell 包括 Bash、Zsh 等。文件系統是 Linux 中組織和存儲數據的方式,常見的文件系統有 ext4、XFS 等。應用程序則是用戶直接使用的軟件,如文本編輯器、瀏覽器等。
Linux 的常用命令
掌握 Linux 的常用命令是使用 Linux 的基礎。以下是一些常見的命令:
# 查看當前目錄
pwd# 列出目錄內容
ls# 切換目錄
cd /path/to/directory# 創建文件
touch filename# 創建目錄
mkdir directory_name# 復制文件
cp source_file destination_file# 移動文件
mv source_file destination_file# 刪除文件
rm filename# 查看文件內容
cat filename# 查找文件
find /path/to/search -name "filename"# 查看系統進程
ps aux# 終止進程
kill process_id
Linux 的文件權限管理
Linux 的文件權限管理是其安全性的重要組成部分。每個文件和目錄都有所有者、所屬組和其他用戶的權限。權限分為讀(r)、寫(w)和執行(x)。可以使用 chmod
命令修改文件權限,使用 chown
命令修改文件所有者和所屬組。
# 修改文件權限
chmod 755 filename# 修改文件所有者
chown user:group filename
Linux 的軟件包管理
Linux 發行版通常提供軟件包管理工具,用于安裝、更新和刪除軟件。常見的軟件包管理工具有 apt
(Debian/Ubuntu)、yum
(CentOS/RHEL)和 pacman
(Arch Linux)。
# 更新軟件包列表
sudo apt update# 安裝軟件包
sudo apt install package_name# 更新已安裝的軟件包
sudo apt upgrade# 刪除軟件包
sudo apt remove package_name
Linux 的 Shell 腳本編程
Shell 腳本是自動化任務的有力工具。通過編寫 Shell 腳本,可以批量執行命令、處理文件和實現復雜的邏輯。以下是一個簡單的 Shell 腳本示例:
#!/bin/bash# 打印當前日期
echo "Today is $(date)"# 遍歷當前目錄下的所有文件
for file in *; doecho "File: $file"
done
Linux 的網絡配置
Linux 提供了豐富的網絡配置工具,如 ifconfig
、ip
、netstat
等。通過這些工具,可以查看和配置網絡接口、路由表和網絡連接狀態。
# 查看網絡接口信息
ifconfig# 查看路由表
route -n# 查看網絡連接狀態
netstat -tuln
Linux 的系統監控與性能優化
Linux 提供了多種工具用于系統監控和性能優化,如 top
、htop
、vmstat
、iostat
等。通過這些工具,可以實時監控系統的 CPU、內存、磁盤和網絡使用情況,并進行相應的優化。
# 實時監控系統資源使用情況
top# 查看內存使用情況
free -m# 查看磁盤 I/O 情況
iostat
Linux 的安全管理
Linux 提供了多種安全機制,如防火墻、SELinux、AppArmor 等。通過配置這些安全機制,可以有效保護系統免受攻擊。
# 配置防火墻規則
sudo ufw allow 22/tcp# 啟用 SELinux
# 立即啟用 SELinux 的強制安全策略,開始攔截所有違反安全規則的操作。
sudo setenforce 1