本文彙整 Linux 系統管理員日常操作最高頻的指令,分類整理為系統資訊、關機重啟、檔案目錄、檔案搜尋、使用者群組、檔案權限、特殊屬性、壓縮解壓、網路、磁碟管理、程序管理、軟體套件、服務管理、防火牆、日誌、排程任務等 16 大類,附帶常用參數與範例,適合列印張貼作為桌邊速查手冊。
一、系統資訊
| 指令 | 功能 |
arch / uname -m | 顯示處理器架構 |
uname -r | 顯示核心版本 |
dmidecode -q | 顯示硬體元件 (SMBIOS/DMI) |
hdparm -i /dev/sda | 列出磁碟架構特性 |
hdparm -tT /dev/sda | 磁碟讀取效能測試 |
cat /proc/cpuinfo | CPU 詳細資訊 |
cat /proc/meminfo | 記憶體使用狀況 |
cat /proc/version | 核心版本詳情 |
lspci -tv | PCI 裝置樹狀列表 |
lsusb -tv | USB 裝置樹狀列表 |
date | 顯示系統日期時間 |
cal 2024 | 顯示 2024 年行事曆 |
二、關機、重啟、登出
| 指令 | 功能 |
shutdown -h now | 立即關機 |
init 0 / telinit 0 | 關機 (SysVinit) |
shutdown -h HH:MM | 排程關機 |
shutdown -c | 取消排程關機 |
shutdown -r now / reboot | 立即重啟 |
logout | 登出目前 Shell |
三、檔案與目錄操作
| 指令 | 功能 |
cd 路徑 | 切換目錄 |
pwd | 顯示目前完整路徑 |
ls -la | 詳細列表含隱藏檔 |
mkdir -p 目錄/子目錄 | 遞迴建立目錄 |
rm -rf 目錄 | 遞迴強制刪除目錄 |
cp -a 來源 目標 | 歸檔模式複製 (保留屬性) |
mv 來源 目標 | 移動/重命名 |
ln -s 來源 連結 | 建立符號連結 |
touch -t YYMMDDhhmm 檔案 | 修改時間戳 |
find 路徑 -name 模式 | 依名稱搜尋 |
locate 關鍵字 | 快速搜尋 (需 updatedb) |
四、檔案搜尋進階
find / -name "*.log" -type f -size +100M # 找 >100MB 的 log 檔
find /home -user alice -mtime -7 # alice 7 天內修改的檔
find /var/log -name "*.gz" -delete # 直接刪除舊壓縮日誌
grep -r "ERROR" /var/log --include="*.log" # 遞迴搜尋關鍵字
五、使用者與群組管理
useradd -m -s /bin/bash -G wheel alice # 建立使用者並加入 wheel 群組
passwd alice # 設定密碼
usermod -aG docker alice # 追加群組 (關鍵 -a)
userdel -r alice # 刪除使用者及家目錄
groupadd docker # 建立群組
gpasswd -a alice docker # 加入群組
chage -E 2025-12-31 alice # 設定帳號過期日
六、檔案權限與特殊屬性
| 指令 | 功能 |
chmod 755 檔案 | 設定權限 (rwxr-xr-x) |
chown user:group 檔案 | 變更擁有者與群組 |
chmod u+s /path/to/bin | 設定 SUID |
chmod g+s /shared/dir | 設定 SGID (目錄繼承群組) |
chmod o+t /shared/dir | 設定 Sticky Bit (僅擁有者可刪) |
chattr +i 重要檔案 | 不可變屬性 (連 root 也無法刪改) |
chattr +a 日誌檔 | 僅允許追加寫入 |
lsattr 檔案 | 查看特殊屬性 |
七、壓縮與解壓縮
tar -czvf archive.tar.gz 目錄/ # 壓縮 (gzip)
tar -xzvf archive.tar.gz # 解壓
tar -cjvf archive.tar.bz2 目錄/ # 壓縮 (bzip2)
tar -xjvf archive.tar.bz2 # 解壓
tar -cJvf archive.tar.xz 目錄/ # 壓縮 (xz, 高壓縮比)
unzip file.zip # 解壓 zip
gzip -d file.gz # 解壓 gzip
八、網路管理
ip addr show # 顯示介面 IP (取代 ifconfig)
ip route show # 顯示路由表
ss -tulnp # 顯示監聽埠 (取代 netstat)
nmcli device status # NetworkManager 狀態
ping -c 4 8.8.8.8 # 連通性測試
curl -I https://example.com # HTTP 標頭檢查
scp 檔案 user@host:/path/ # 安全複製
rsync -avz 來源/ 目標/ # 同步備份
九、磁碟與檔案系統
df -h # 磁碟使用率 (人類可讀)
du -sh 目錄/ # 目錄大小
lsblk # 區塊裝置樹狀圖
fdisk -l # 分割區列表
mkfs.ext4 /dev/sdb1 # 格式化為 ext4
mount /dev/sdb1 /mnt/data # 掛載
umount /mnt/data # 卸載
blkid # 顯示 UUID/TYPE
十、程序管理
ps aux # 所有進程詳細
top / htop # 即時監控
pgrep 進程名 # 依名稱找 PID
pkill 進程名 # 依名稱殺進程
kill -9 PID # 強制終止
killall 進程名 # 終止所有同名進程
nohup 指令 & # 免掛起背景執行
screen -S session_name # 終端機多工
十一、軟體套件管理 (YUM/DNF/APT)
yum install 套件名 # 安裝
yum update # 更新所有
yum remove 套件名 # 移除
yum search 關鍵字 # 搜尋
yum info 套件名 # 詳細資訊
yum clean all # 清理快取
dnf 同 yum (Fedora/RHEL 8+)
apt update && apt install 套件名 # Debian/Ubuntu
十二、服務管理 (systemd)
systemctl start|stop|restart|status 服務名
systemctl enable|disable 服務名 # 開機自動啟動
systemctl list-units --type=service # 列出所有服務
journalctl -u 服務名 -f # 即時看服務日誌
十三、防火牆
firewall-cmd --permanent --add-port=80/tcp --add-port=443/tcp
firewall-cmd --reload
firewall-cmd --list-all
iptables -L -n -v # 直接操作 iptables
十四、日誌分析
tail -f /var/log/messages # 即時追蹤
grep "ERROR" /var/log/secure # 搜尋錯誤
journalctl -p err -b # 本次開機錯誤日誌
last / lastb # 登入/失敗登入記錄
十五、排程任務
crontab -e # 編輯當前使用者排程
# 分 時 日 月 周 指令
0 2 * * * /backup.sh # 每天凌晨 2 點備份
*/10 * * * * /check.sh # 每 10 分鐘檢查
systemctl status crond # 確認排程服務運行
十六、實用組合技
# 找出佔用 CPU 前 5 的進程
ps aux --sort=-%cpu | head -6
# 找出佔用記憶體前 5 的進程
ps aux --sort=-%mem | head -6
# 顯示開機以來負載平均
uptime
# 產生隨機密碼
openssl rand -base64 16
# 當前目錄樹狀圖
tree -L 2