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:存放系統命令(比如ls、cp等)。
小技巧: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(顯示所有網卡信息,找eth0或ens33),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. 新手學習建議¶
- 動手實踐:找一臺Linux虛擬機(如VMware、VirtualBox)或在線實驗平臺(如Katacoda),多敲命令。
- 工具推薦:終端用Xshell、FinalShell;文件傳輸用FileZilla;SSH工具用Putty。
- 善用幫助:不懂命令時查
man 命令(比如man ls),或百度/Google搜索錯誤信息。 - 養成習慣:修改系統前先備份,重要操作前確認命令無誤(比如
rm前加-i確認)。
Linux服務器維護沒有捷徑,多練習、多踩坑、多總結,你會發現它其實很“聽話”。從基礎命令開始,逐步深入,很快就能成爲能獨立維護服務器的“小能手”!