返回列表

香港服務器 Linux 常用命令與新手必學的終端機運維管理

阿里雲國際 / 2026-09-08 00:34:19

第一章:為什麼新手要先學「命令」而不是先看教程

很多人第一次接觸香港的 Linux 服務器(無論是雲主機、機房物理機,還是替客戶維運的站點)時,最大的困難不是「不知道怎麼做」,而是「不知道下一步要檢查什麼」。終端機的命令就像工具箱:你不需要一次學會全部,但你要能在遇到問題時快速找到證據,並用最短的步驟把狀況說清楚。

以運維的現實來看,問題通常不會以「你該輸入哪個指令」的形式出現。更多時候它是:網站不能打開、SSH 連不上、CPU 一直飆高、磁碟快滿、服務反覆重啟、日誌裡出現特定錯誤。你必須先能讀狀態、再能看差異、最後才能決定修復策略。這個流程靠的就是一套「常用且可複用」的命令組合。

本文會以「新手必學」為核心,不追求炫技,只聚焦在常見場景。每個命令我都會用簡單語句說清楚:它在幹什麼、你什麼情況該用、常見錯誤是什麼、以及搭配的下一步怎麼走。你看完後應該能把排錯路徑跑一遍:從確認系統在線 → 確認網路與端口 → 確認資源與負載 → 確認服務與程序 → 確認日誌與錯誤 → 確認磁碟與檔案 → 最後再做修復。

第二章:登入後第一件事——環境與自我保護

你以為登入後能立刻開始部署,其實運維的第一優先級是先確保「你不會把自己鎖在外面」,以及「你知道自己在哪裡、用的是什麼環境」。下面這組命令很適合新手每天都用。

1)確認系統基本資訊:uname、cat、hostnamectl

uname -a 用來看核心版本與架構。

hostnamectl(在 systemd 系統常見)用來看主機名、作業系統識別。

cat /etc/os-release 用來快速辨識發行版(Ubuntu、Debian、CentOS、Rocky 等)。

為什麼要做這些?因為不同發行版的包管理器和服務管理器可能不一樣;而錯用指令會浪費時間。尤其在香港的維運現場,常見情況是多個客戶混用不同系統,新手若不習慣先確認環境,容易把查錯路徑走偏。

2)確認登入位置與使用者:whoami、pwd、id

whoami 看你現在用的是哪個帳號。

id 看 UID、GID 與群組。

pwd 確認你目前在哪個目錄。新手常見失誤是:在錯目錄下執行刪檔或移動檔案,造成服務配置遺失。

3)更新終端體驗:history、~、TAB

history 可以查看你之前輸入過的命令。這是降低犯錯率的好方法:你可以回顧自己做過什麼。

同時要養成習慣:Tab 補全檔名、~ 代表家目錄。你會發現速度和準確度提升非常明顯。

4)避免自己把自己弄出門:sudo 與權限預判

新手最常遇到的是「命令提示權限不足」。你要先學會辨識:你是不是該用 sudo,還是只是路徑不對。

例如你想讀取需要權限的檔案,可能會用到 sudo cat /path/to/file。但注意:並不是所有命令都能用 sudo 亂套。例如編輯檔案,最好用正確方式修改配置,而不是直接在沒有備份的情況下強行改。

第三章:檔案與目錄——運維的地基

你在伺服器上做的幾乎所有事情都會落回「檔案」:配置檔、腳本、證書、日誌、備份。新手最需要的不是記憶力,而是形成肌肉記憶。

1)列出與理解目錄:ls、tree、pwd

ls 基本功。

常用參數:-l(長格式,顯示權限、擁有者、大小、時間)、-h(人類可讀)、-a(顯示隱藏檔)。

例如:ls -lah 會顯示可讀的大小與隱藏檔資訊。

tree 能快速理解目錄結構。若系統沒有安裝,可先用包管理器補上;新手在排查時會很有用。

2)查看檔案內容:cat、less、head、tail、grep

cat 適合看短檔;長檔不建議用它直接噴滿螢幕。

less 適合讀長內容,支援向上向下翻。

head 看前幾行,tail 看後幾行,尤其是日誌。

最常用的組合是:tail -f /var/log/xxx.log,用於即時觀察。

grep 用來在檔案中搜尋關鍵字。新手可以先記住這些:grep -i(不分大小寫)、grep -n(顯示行號)、以及管道搭配。

例如:cat /path/file | grep -i error。你也可以直接用 grep -i error /path/file,更乾淨。

3)檔案操作:cp、mv、rm、mkdir、touch

cp 複製、mv 移動或改名、rm 刪除。

新手要格外注意 rm -f 這種強制參數,因為「不確認」很容易造成不可逆的錯誤。你至少要先理解:刪除後通常很難找回。

mkdir -p 可以在父目錄不存在時自動建立路徑。

touch 可建立空檔或更新時間戳。

建議養成備份習慣:例如修改配置前先複製一份,例如 cp nginx.conf nginx.conf.bak。在香港維運場景中,客戶變更要求常常是「出問題要回滾」,沒有備份你會很被動。

4)檔案權限與擁有者:chmod、chown、chgrp

權限是 Linux 的核心。新手最常遇到兩種情況:服務啟動失敗,或某個程序無法讀寫檔案。

chmod 改變模式(讀寫執行)。

chown 改變擁有者。

chgrp 改變群組。

你不需要在入門階段就把 8 進位權限背到滾瓜爛熟,但你要能看懂 ls -l 的輸出,知道哪一類權限在影響。

例如目標檔案被限制導致服務無法讀,常見原因是擁有者或群組不對;若是腳本執行失敗,常見原因則是執行權限缺失。

第四章:網路連通性與端口——先確認「外面看得到你」

很多香港的故障都不是真正的「服務壞了」,可能是網路、DNS、或防火牆設定。新手可以用下面的命令建立基本判斷。

1)確認網卡與 IP:ip、ifconfig(可選)

ip a 可以看到網卡、IPv4/IPv6、狀態。

用這個你能判斷服務綁定的 IP 是否正確,例如網站只監聽在內網 IP,外部連不上。

2)檢查路由:ip route

ip route 能看 default gateway 和路由表。若你發現 Ping 會飄但路由不正確,這個指令通常能提供線索。

3)測試連線:ping、traceroute

ping 測試連通性。

traceroute(或 tracepath)用於看路由路徑。新手遇到跨境或跨網段問題,這會比猜更有效。

注意:部分機器不回 ICMP,所以 ping 不通不一定代表「全面不可用」,仍需看端口。

4)端口探測:curl、nc(或 telnet)、ss

對 HTTP/HTTPS,curl 是最直接的。

例如:curl -I http://localhost 看回應頭;curl -v http://IP:PORT 看更詳細的連線過程。

對非 HTTP 服務,nc(netcat)可以測端口。

例如:nc -vz IP PORT

若你想確認本機哪些端口在聽:ss -lntp(listening、tcp、numeric、process)。

這在排查「服務看起來起來了但外面連不上」時非常常用。你可以用 ss 確認是否監聽在正確端口,以及監聽 IP 是不是對外可用。

5)DNS 與域名:dig、nslookup(可選)

如果是域名解析問題,新手常做錯的是一直重啟服務。其實先檢查 DNS 才是更有效的路徑。

dig 域名 能查解析結果與過程。你也可以用 nslookup,看同樣資訊。

第五章:系統狀態與資源——CPU、記憶體、負載是不是異常

當網站慢、服務卡住或頻繁超時,新手首先要問:系統資源是否撐爆?

1)即時概覽:top、htop(可選)

top 是最常見的即時監控。

你要觀察的是:CPU 是否長時間高位、記憶體是否接近耗盡、是否有大量 swap、load average 是否持續飆高。

htop 比較直觀,但不一定每台都有。

2)更精準的統計:free、vmstat、iostat

free -h 看記憶體與 swap。

vmstat 1(每秒刷新)可以看進程狀態、IO 等指標。

iostat 用於磁碟 IO;如果系統延遲高但 CPU 不高,IO 可能成為真正瓶頸。

3)磁碟容量與檔案系統:df、du

df -h 查看磁碟分區使用率。新手常見事故是根分區滿了導致服務寫日誌失敗。

du -sh /path/*du -h --max-depth=1 用來找大目錄。排查磁碟滿時,路徑定位比盲目清理安全。

4)看佔用:lsof、fuser(可選)

當你要釋放端口或確認檔案被哪些程序佔用,lsof 很有用。

例如:lsof -i :PORT

新手不必一開始就全懂,但至少要知道「端口不是沒有使用,只是你不知道被哪個進程占著」。

第六章:程序與服務管理——你在管理的其實是進程

很多問題的根源在服務管理或程序狀態:服務掛了、反覆重啟、卡死、沒有正確載入配置。

1)查看正在跑的:ps、pgrep

ps aux 看所有進程。

ps -ef 也是常見用法。

pgrep -af 關鍵字 可以用關鍵字快速定位程序。

2)啟動、停止、重啟:systemctl

對大多數現代發行版,服務管理用 systemctl

常用:

  • systemctl status 服務名:看狀態
  • systemctl start 服務名:啟動
  • systemctl stop 服務名:停止
  • systemctl restart 服務名:重啟
  • systemctl enable 服務名:開機自動啟動
  • systemctl disable 服務名:關閉開機自動啟動

新手要特別注意:重啟不等於載入配置一定成功。很多服務需要先做配置檢查,再重啟。

例如 Nginx 或某些應用通常有自己的配置檢查命令(依你部署的軟體而定)。即使沒學到所有軟體指令,也要記得「先檢查配置語法,再重啟」是運維常識。

3)看服務失敗的原因:systemctl --no-pager -l

systemctl status 有時候只顯示簡短內容。你可以用更完整的輸出方式查看錯誤訊息。

另外,真正的關鍵通常在日誌(下一章會講),不要只看狀態就下結論。

4)停止卡住的程序:kill

kill 是最後手段之一。新手容易把 kill 當作第一選擇,但實務上你更應該先確認「為什麼卡住」:是資源不夠?是死鎖?是外部依賴失敗?

常見做法:

  • 先用 kill -TERM PID(正常終止,給程序收尾時間)
  • 必要時才用 kill -KILL PID(強制結束)

強制殺進程可能造成資料損壞或服務狀態不一致,尤其是數據庫類型更要謹慎。

第七章:日誌與排錯——把混亂變成可驗證的證據

你可能會發現:同一個現象(例如 502、超時、連線失敗),原因可以有十幾種。如果沒有日誌,你只能靠猜;有日誌,你才知道「錯在系統哪一層」。

1)查看日誌檔:tail、less、head

最常見路徑:

  • /var/log/syslog/var/log/messages
  • /var/log/auth.log(登入與認證)
  • /var/log/nginx/(若使用 Nginx)
  • /var/log/apache2/(若使用 Apache)

新手可以從兩個角度讀:一是最後發生了什麼,用 tail -n 200;二是即時觀察,tail -f

2)搜尋關鍵字:grep + tail

例如你懷疑錯誤與某個時間段有關,可以先 tailgrep

或直接:grep -i 'error' /var/log/syslog

如果日誌很大,建議縮小範圍再搜,避免耗時。

3)systemd 日誌:journalctl

在 systemd 系統,很多服務的日誌會在 journal 內。journalctl 是新手一定要掌握的工具。

常用:

  • journalctl -u 服務名:看特定服務
  • journalctl -xe:顯示最近錯誤訊息(對排錯很省時間)
  • journalctl --since '1 hour ago':看最近一小段時間
  • journalctl -f -u 服務名:即時追蹤

當你遇到服務「反覆重啟」,journalctl -u 通常會告訴你為什麼。

4)logrotate:日誌不會永遠長大

新手有時會被大檔案嚇到,但在正常系統中通常會有 logrotate 週期管理。你可以檢查日誌是否循環,並確認沒有因為權限或磁碟問題導致輪轉失敗。

當你看到磁碟越來越滿,先想的是:是日誌暴增?還是輪轉失敗?這兩件事用 df -h + 日誌檢查就能快速分辨。

第八章:磁碟、備份與回滾——新手最容易忽略,但最致命

運維不是只會修問題,還要能承擔錯誤。你需要把「可回到原狀」當作流程的一部分。

1)確認磁碟健康與掛載:lsblk、mount

lsblk 可以看分區、掛載點與設備名稱。當你覺得磁碟怪怪的,先看是否有多出設備或掛載異常。

mount | grep /path 或直接 mount 可查看掛載狀態。

2)找到大檔與刪除策略:du + rm

磁碟滿時最重要是「找到罪魁禍首」。使用 du -sh 找大目錄,找到後再決定清理或移動。

例如某些應用會產生日誌或緩存,若清理有風險,最好先停服務或移走到備份位置。

3)備份與時間戳:cp、tar

檔案備份新手可以先用簡單方式:

  • cp file file.bak
  • 或用 tar 打包目錄

以運維習慣來看,最好帶上時間戳,例如 tar -czf app_$(date +%F_%H%M).tar.gz /path/app。這能避免覆蓋到上一次備份。

4)回滾配置:不要只記得改了什麼

你要能解釋:你改動的是哪個檔案、改了哪些行、為什麼這樣改、以及回到哪一版能恢復服務。

實務中,回滾快的人通常不是更聰明,而是更有流程。

第九章:安全與日常自檢——讓服務不靠運氣

新手剛開始時常以「把服務跑起來」為優先,但在香港維運環境,安全措施往往會決定你能不能長期穩定服務。

1)確認 SSH:sshd 與防火牆

先確認 SSH 服務狀態:

systemctl status sshsystemctl status sshd(取決於系統)。

再確認本機是否真的在監聽:

ss -lntp | grep ssh 或直接查看 22 port 的監聽。

最後才是防火牆規則(UFW、firewalld 或雲端安全組),不然你會誤以為是服務壞了。

2)權限與最小原則:不要亂用 root

新手常見問題是一直用 root 登入。這其實會增加事故風險。更好的做法是使用普通帳號 + 必要時用 sudo

同時也要避免「配置檔被任何人可寫」。服務配置通常要保護在合理權限下。

3)定期檢查失敗狀態:systemctl --failed

systemctl --failed 可以列出失敗的服務。這是日常自檢的一步:你不需要等到客戶抱怨,先在內部把問題扼殺。

4)基本連線測試:自測與外測

你要做兩件事:

  • 內部測:用 curl 或本地端口檢查確定服務能回應
  • 外部測:從另一台機器或外部環境測端口連線與回應

很多事故是外部不通但本機通,或反過來。只做其中一種,你就會誤判。

第十章:把命令串成「新手可用」的排錯流程

學命令最怕只會單點使用。真正能讓你提高效率的是:你能把命令串起來,形成可複用的排錯路徑。下面給你一套通用流程,新手可以直接照做。

情境 A:網站連不上(或回應異常)

  1. 確認系統是否正常:topfree -hdf -h
  2. 確認網路與監聽:ss -lntp 看端口是否在監聽
  3. 本機測試 HTTP:curl -v http://localhost:PORT
  4. 查服務狀態:systemctl status 服務名
  5. 看日誌:journalctl -u 服務名 -xetail -n 200 /var/log/xxx.log
  6. 若是 Nginx/反向代理,優先檢查其配置並看錯誤日誌

這套流程的核心是先排除「資源爆了」或「根本沒有監聽」,再看服務與日誌。你會比直接重啟快得多,也少做無效操作。

情境 B:SSH 連不上

  1. 在可用的前提下先確認對方網路:是否安全組/防火牆放行、是否 IP 限制
  2. 在機器上檢查監聽:ss -lntp | grep :22
  3. 檢查 SSH 服務:systemctl status ssh(或 sshd)
  4. 看日誌:journalctl -u ssh -xetail -n 200 /var/log/auth.log
  5. 若改過設定(例如允許的用戶、Port、PermitRootLogin),優先回滾或核對配置

SSH 問題最怕「你以為壞了,其實是你改了防火牆或配置」。因此順序要保護你自己:先看監聽,再看服務,再看日誌。

情境 C:磁碟滿了,服務開始報錯

  1. 查看容量:df -h
  2. 找大目錄:du -h --max-depth=1 / 或針對應用目錄
  3. 查看日誌暴增:tail -n 200 /var/log/xxx.log
  4. 確認是否輪轉失敗:檢查 logrotate 相關
  5. 先止血:刪除/移動不必要的暫存或過期日誌(必要時停服務)
  6. 再修原因:例如更新 logrotate 設定、修復服務異常產生日誌

新手在這個情境常犯錯是直接 rm 一堆檔案。更穩的做法是先定位大頭,再決策刪除範圍,避免刪到服務需要的檔案或導致配置錯亂。

第十一章:新手最該記住的「命令清單」

如果你只想先記一批高頻命令,那請至少掌握以下。它們覆蓋了運維的主要層:系統、檔案、網路、資源、程序、服務與日誌。

1)系統與環境

uname -acat /etc/os-releasehostnamectlwhoamipwdhistory

2)檔案與內容

ls -lahcdcatlessheadtail -n 200tail -fgrep -icpmvrmmkdir -pchmodchown

3)網路與端口

ip aip routepingcurlss -lntpdig(可選)

4)資源與磁碟

topfree -hvmstat(可選)、df -hdu -shiostat(可選)

5)程序與服務

ps auxpgrep -af(可選)、systemctl statussystemctl restartsystemctl --failed

6)日誌

journalctl -ujournalctl -xetail -f /var/log/xxxgrep(搜尋日誌關鍵字)

第十二章:最後,如何把學習變成能力而不是背誦

真正的運維能力不是知道每條命令的所有參數,而是你遇到問題時能快速把資訊拼起來,做出合理判斷並降低風險。

建議你用三個方法把本文內容落地:

  • 建立自己的排錯筆記:每次遇到故障,寫下你用了哪些命令、得到什麼結果、最後怎麼解決。過幾次後你會發現筆記變成模板。
  • 在測試環境練習:例如自己開一個容器或小服務,學會看監聽端口、看日誌、做配置錯誤的回滾。等到真實環境才不會慌。
  • 固定順序:先確認資源與連通,再確認監聽與服務,再看日誌,最後才動配置。順序一固定,你就不容易走彎路。

香港的服務器維運,常常同時面對網路延遲、客戶需求變更、以及多套系統並存。你越早建立「可重複的判斷流程」,越能把時間花在真正的修復上,而不是反覆試錯。

當你能用一套命令組合,把問題從模糊變成清楚,從清楚變成可回滾,你就完成了新手到維運實用者的第一跨步。

Telegram售前客服
客服ID
@cloudcup
联系
Telegram售后客服
客服ID
@yanhuacloud
联系