1. 爲什麼要學習Linux服務器維護?

在互聯網時代,Linux已經成爲服務器的“主力軍”——從網站、數據庫到雲服務,很多重要系統都運行在Linux上。它穩定、開源且安全,是運維人員和開發者的必備技能。對新手來說,掌握Linux基礎維護知識,不僅能看懂服務器狀態,還能自己解決簡單的故障,比如文件權限問題、服務啓動失敗等。

2. 命令行:Linux的“語言”

Linux服務器主要通過命令行操作(圖形界面反而用得少),就像和電腦“對話”一樣。新手不用怕,先記住幾個最基礎的命令:

  • 登錄服務器:用SSH工具(比如Putty、Xshell或系統自帶的終端)輸入 ssh 用戶名@服務器IP,按提示輸入密碼。
  • 查看當前目錄pwd(Print Working Directory),比如輸入後會顯示 /home/yourname
  • 切換目錄cd 目標路徑,比如 cd /etc 進入系統配置目錄,cd ~ 回到用戶家目錄,cd .. 返回上一級目錄。
  • 查看文件/目錄列表ls(list),如果要顯示詳細信息(權限、大小等),加參數 ls -l;顯示隱藏文件(以 . 開頭的文件)加 ls -a

3. 文件系統:Linux的“房間佈局”

Linux的文件系統像一棵倒置的樹,最頂層是 根目錄 /,其他目錄都是從根目錄延伸出來的“子目錄”。記住幾個核心目錄的作用:

  • /root:管理員(root用戶)的家目錄。
  • /home/用戶名:普通用戶的家目錄(每個用戶有自己的獨立空間)。
  • /etc:存放系統配置文件(比如網絡、服務、軟件的配置)。
  • /var:存放動態數據(日誌、緩存、數據庫等,比如 /var/log 是系統日誌文件夾)。
  • /bin/usr/bin:存放系統命令(比如 lscp 等)。

小技巧tree 命令可以可視化目錄結構(如果沒安裝,用 ls 也能大概看)。

4. 文件與目錄操作:“複製、移動、刪除”

日常維護中,文件操作是最頻繁的,必須掌握:

  • 創建空文件touch 文件名,比如 touch test.txt
  • 創建目錄mkdir 目錄名,比如 mkdir docs
  • 複製文件/目錄cp 源文件 目標位置,比如 cp test.txt /home/user/docs;加 -r 參數複製目錄(遞歸):cp -r docs /tmp
  • 移動/重命名mv 源文件 目標位置,比如 mv test.txt docs/(移動到docs目錄);如果目標是新文件名,就是重命名:mv test.txt new.txt
  • 刪除文件/目錄rm 文件名(加 -r 刪除目錄,比如 rm -r docs),注意rm 一旦執行無法撤銷!建議先備份或確認。

5. 文件權限:誰能看、誰能改?

權限是Linux的核心安全機制,用 rwx 表示(read讀、write寫、execute執行),每個文件/目錄有3類權限:所有者、所屬組、其他用戶。

  • 權限表示:比如 rw-r--r-- 表示:
  • 所有者:rw-(可讀可寫,不可執行)
  • 所屬組:r--(只能讀)
  • 其他用戶:r--(只能讀)
  • 數字簡化:用數字表示權限(r=4, w=2, x=1),比如 rw-r--r--644(4+2=6,4=4,4=4)。
  • 修改權限chmod [權限] 文件名,比如給文件加執行權限:chmod +x test.sh+x 表示增加執行權限);直接用數字:chmod 755 test.sh(所有者7=rwx,組5=rx,其他5=rx)。
  • 修改所有者/組chown 新所有者 文件chgrp 新組 文件,比如 sudo chown root:root test.txt(把文件所有者改成root,組改成root組)。

6. 進程與服務:服務器“在跑什麼”

服務器上運行的程序叫“進程”,需要管理它們:

  • 查看進程ps(查看當前終端進程)或 ps -aux(顯示所有進程,更詳細);top 即時動態監控進程(按 q 退出)。
  • 結束進程kill 進程ID,比如 kill 1234;如果殺不掉,用 kill -9 1234(強制終止)。
  • 管理服務:Linux用 systemctl 管理服務(比如Nginx、MySQL等),常用命令:
  • sudo systemctl start 服務名(啓動),stop(停止),restart(重啓),status(查看狀態)。
  • 例子:sudo systemctl restart nginx(重啓Nginx服務)。

7. 網絡配置:服務器“和外界溝通”

服務器需要網絡連接,新手必學:

  • 查看IP地址ip addr(顯示所有網卡信息,找 eth0ens33),ifconfig(部分系統可能沒裝,需先 sudo apt install net-tools)。
  • 測試網絡連通性ping 目標IP(比如 ping 8.8.8.8 測試Google DNS),不通可能是防火牆或網絡故障。
  • 查看端口netstat -tuln(列出所有監聽端口)或 ss -tuln(更高效),比如看80端口是否被佔用:netstat -tuln | grep 80
  • 防火牆開放端口
  • Ubuntu/Debian:sudo ufw allow 80/tcp(開放80端口,TCP協議),sudo ufw status 查看狀態。
  • CentOS/RHEL:sudo firewall-cmd --add-port=80/tcp --permanent(永久開放),sudo firewall-cmd --reload 生效。

8. 系統更新與軟件安裝

日常維護要定期更新系統和安裝軟件:

  • 更新系統
  • Ubuntu/Debian:sudo apt update(更新軟件源),sudo apt upgrade(更新軟件)。
  • CentOS/RHEL:sudo yum update(或 sudo dnf update,推薦用dnf)。
  • 安裝軟件
  • Ubuntu:sudo apt install 軟件名(比如 sudo apt install nginx 裝Nginx)。
  • CentOS:sudo yum install 軟件名(比如 sudo yum install httpd 裝Apache)。
  • 卸載軟件sudo apt remove 軟件名(Ubuntu)或 sudo yum remove 軟件名(CentOS)。

9. 日誌與備份:排查問題和數據安全

  • 查看日誌:系統日誌在 /var/log 下,比如 auth.log(記錄登錄日誌)、syslog(系統日誌),用 tail -n 10 /var/log/auth.log 查看最後10行。
  • 備份文件:用 tar 壓縮備份,比如 tar -czf backup.tar.gz /home/user/docs(壓縮docs目錄到backup.tar.gz),恢復時 tar -xzf backup.tar.gz

10. 新手學習建議

  1. 動手實踐:找一臺Linux虛擬機(如VMware、VirtualBox)或在線實驗平臺(如Katacoda),多敲命令。
  2. 工具推薦:終端用Xshell、FinalShell;文件傳輸用FileZilla;SSH工具用Putty。
  3. 善用幫助:不懂命令時查 man 命令(比如 man ls),或百度/Google搜索錯誤信息。
  4. 養成習慣:修改系統前先備份,重要操作前確認命令無誤(比如 rm 前加 -i 確認)。

Linux服務器維護沒有捷徑,多練習、多踩坑、多總結,你會發現它其實很“聽話”。從基礎命令開始,逐步深入,很快就能成爲能獨立維護服務器的“小能手”!

小夜