Ubuntu/Debian apt 套件安裝與管理

在 Ubuntu 或 Debian 系統中,我們主要使用 apt (Advanced Package Tool) 來管理軟體。 它就像是 Linux 的 App Store,只是是用指令操作的。

早期大家可能習慣用 apt-get。現在推薦直接使用 apt 即可,它是 apt-getapt-cache 的現代化簡化版,介面更人性化(例如會有進度條)。

必備指令

所有安裝、移除的操作都需要 sudo 權限。

1. 更新套件清單 (Update)

這是最重要的第一步! 這個指令 不會 更新軟體本身,它只是去網路上的伺服器(Repository)下載最新的「軟體清單目錄」。 這樣系統才知道現在有哪些軟體可以裝、最新版是幾號。

sudo apt update

建議每次要安裝軟體前,都先跑一次這個。

2. 升級已安裝的套件 (Upgrade)

這個指令才會真正把它下載回來並安裝更新。

sudo apt upgrade
upgrade 會升級系統中「所有」有新版本的套件。如果你只想升級「特定一個」軟體,請參考下方的進階操作。

3. 安裝軟體 (Install)

想裝什麼,直接打名字。例如安裝 Nginx 網頁伺服器:

sudo apt install nginx

4. 移除軟體 (Remove)

sudo apt remove nginx
remove 雖然會把程式刪掉,但通常會保留「設定檔」(/etc/ 裡面的東西),以防你以後重裝時能保留設定。

5. 徹底移除 (Purge)

如果你想把程式連同設定檔全部清乾淨:

sudo apt purge nginx

如果你不確定軟體的正確名稱:

apt search mysql

自動清理 (Autoremove)

當你安裝一個軟體(如 A)時,A 可能依賴 B 和 C。系統會自動幫你裝 B 和 C。 但當你移除 A 之後,B 和 C 可能就沒用了。

使用 autoremove 可以自動幫你清除這些不再被需要的依賴套件,釋放磁碟空間。

sudo apt autoremove

進階操作技巧

1. 只升級單一特定套件

如果你不想執行全系統升級 (apt upgrade),只想更新某個特定的軟體(例如 nginx),可以使用 install 指令搭配 --only-upgrade 參數:

# 只升級 Nginx,不升級其他軟體
sudo apt install --only-upgrade nginx

2. 查詢可升級的套件

想知道執行 apt upgrade 會有那些軟體被更新嗎?

apt list --upgradable

3. 檢視套件詳細資訊

想查看某個軟體的版本、依賴關係、安裝大小或描述:

apt show nginx

4. 列出已安裝的套件

列出系統中所有已安裝的軟體(可以用 grep 過濾):

apt list --installed | grep nginx

5. 清理下載的安裝檔快取

apt 在安裝軟體時,會先把 .deb 安裝檔下載到 /var/cache/apt/archives/。這會佔用硬碟空間。 你可以使用以下指令來清理這些暫存檔:

sudo apt clean