如何在 Ubuntu 上輕鬆檢查已安裝的套件 | 詳解 apt、dpkg、snap

目次

1. 前言

Ubuntu 是許多開發人員和工程師信賴的 Linux 發行版。在使用過程中,可能會遇到需要確認系統中已安裝的套件的情況。

例如,您可能想要確認某個特定的套件是否正確安裝,或者找出不需要的套件並加以移除。在這些情況下,檢視已安裝的套件資訊將會非常有幫助。

本篇文章將詳細介紹如何在 Ubuntu 上確認已安裝的套件,並提供適用於初學者到中級使用者的實用方法。請務必閱讀到最後!

2. 列出已安裝套件的方法

在 Ubuntu 中,有多種方法可以確認已安裝的套件。本章將介紹三種最常用的方法,您可以根據需求選擇最適合的方法。

使用 apt 指令

apt 是 Ubuntu 中常用的套件管理指令之一。要列出所有已安裝的套件,可以使用以下指令:

apt list --installed

指令說明

  • apt list: 列出系統中的套件資訊。
  • --installed: 只顯示已安裝的套件。

執行結果範例

執行指令後,畫面會顯示已安裝的套件清單,如下所示:

accountsservice/now 0.6.55-0ubuntu12 amd64 [已安裝,自動]
acl/now 2.2.53-10 amd64 [已安裝]

使用 dpkg 指令

dpkg 是直接管理 Debian 套件的低階指令。要列出所有已安裝的套件,可以使用以下指令:

dpkg-query -l

指令說明

  • dpkg-query: 查詢 dpkg 資料庫以獲取套件資訊。
  • -l: 顯示所有已安裝的套件。

執行結果範例

執行指令後,畫面會顯示如下結果:

ii  accountsservice   0.6.55-0ubuntu12   amd64   用於查詢和管理使用者帳戶資訊
ii  acl               2.2.53-10          amd64   訪問控制列表工具

其中,ii 表示該套件已成功安裝。

使用 snap 指令

snap 是 Ubuntu 引入的新一代套件管理系統。要確認 Snap 安裝的套件,可以使用以下指令:

snap list

指令說明

  • snap list: 顯示系統中已安裝的 Snap 套件清單。

執行結果範例

執行指令後,畫面會顯示已安裝的 Snap 套件清單:

Name     Version    Rev   Tracking       Publisher     Notes
core     16-2.58    12834 latest/stable  canonical✓    core

此指令可用來確認 Snap 安裝的套件版本及相關資訊。

總結

  • apt list --installed: 簡單快捷地查看已安裝的套件。
  • dpkg-query -l: 可獲取更詳細的資訊。
  • snap list: 專門用於查詢 Snap 套件。

透過這些指令,您可以有效地管理 Ubuntu 中的套件。

年収訴求

3. 如何確認特定套件是否已安裝

在 Ubuntu 中,如果想要確認某個特定的套件是否已安裝,可以使用幾種有效的方法。本章將詳細介紹如何使用 aptdpkg 指令來進行查詢。

使用 apt 指令查詢

透過 apt 指令,可以從已安裝的套件列表中快速搜尋特定的套件。

指令範例

結合 grep 指令,可以篩選出特定的套件:

apt list --installed | grep 套件名稱

執行範例

例如,想確認 curl 是否已安裝,可以輸入:

apt list --installed | grep curl

執行結果範例

curl/now 7.68.0-1ubuntu2.6 amd64 [已安裝]

如果結果中出現該套件的資訊,就表示 curl 已經安裝。

使用 dpkg 指令查詢

dpkg 也可用於確認特定套件的安裝狀況。

指令範例

使用以下指令,篩選出符合條件的安裝套件:

dpkg-query -l | grep 套件名稱

執行範例

假設想確認 git 是否已安裝,可以輸入:

dpkg-query -l | grep git

執行結果範例

ii  git    1:2.25.1-1ubuntu3.2 amd64 快速、可擴展的分散式版本控制系統

其中,ii 表示該套件已正常安裝。

使用 snap 指令查詢

如果該套件是透過 Snap 安裝的,可以使用 snap 指令來查詢。

指令範例

snap list | grep 套件名稱

執行範例

例如,要確認 chromium 是否已安裝,可以執行:

snap list | grep chromium

執行結果範例

chromium    97.0.4692.99    1892   latest/stable    canonical✓    -

這表示 chromium 已透過 Snap 安裝。

總結

  • apt list --installed | grep 套件名稱: 最簡單的方法,適合快速查詢。
  • dpkg-query -l | grep 套件名稱: 可獲取更多詳細資訊。
  • snap list | grep 套件名稱: 用於查詢 Snap 安裝的套件。

透過這些方法,您可以快速確認系統中是否安裝了特定的套件,並根據需求進行管理。

4. 如何查看已安裝套件的詳細資訊

有時候,您可能需要查詢已安裝套件的更多細節,例如其版本、依賴關係和維護者資訊。在 Ubuntu 中,可以使用以下指令來獲取詳細資訊。

使用 apt show 指令

apt show 指令可用來顯示特定套件的詳細資訊。

指令範例

apt show 套件名稱

執行範例

例如,要查看 curl 的詳細資訊,可以輸入:

apt show curl

執行結果範例

Package: curl
Version: 7.68.0-1ubuntu2.6
Priority: optional
Section: web
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Description: 用於透過 URL 傳輸資料的命令列工具
 This is a command line tool and library for transferring data with URLs.

主要資訊內容

  • Package: 套件名稱。
  • Version: 套件版本。
  • Section: 套件所屬類別(例如 web、utils)。
  • Maintainer: 套件的維護者資訊。
  • Description: 套件的簡要說明。

使用 dpkg 指令

另一種方法是使用 dpkg 指令來查看已安裝套件的詳細資訊。

指令範例

dpkg -s 套件名稱

執行範例

例如,查看 git 套件的詳細資訊:

dpkg -s git

執行結果範例

Package: git
Status: install ok installed
Priority: optional
Section: vcs
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Description: 快速、可擴展的分散式版本控制系統
 Git 是一個快速、可擴展的分散式版本控制系統,提供高級操作及內部存取。

總結

  • apt show 套件名稱: 顯示詳細資訊,包括依賴關係。
  • dpkg -s 套件名稱: 提供更精簡的資訊,適合快速查詢。

這些指令可幫助您掌握已安裝套件的詳細資訊,便於管理與排除故障。

5. 如何確認已安裝套件的數量

有時候,您可能需要查看目前系統中安裝了多少個套件。在 Ubuntu 中,可以使用以下指令來快速取得已安裝的套件數量。這些資訊有助於掌握系統的狀態和規模。

使用 apt 指令查詢

可以結合 apt list 指令與 wc -l 來計算已安裝的套件數量。

指令範例

apt list --installed | wc -l

指令說明

  • apt list --installed: 列出所有已安裝的套件。
  • wc -l: 計算行數,等同於已安裝的套件數。

執行結果範例

543

這表示系統目前已安裝了 543 個套件。

使用 dpkg 指令查詢

也可以透過 dpkg-query 指令來計算已安裝的套件數量。

指令範例

dpkg-query -l | grep '^ii' | wc -l

指令說明

  • dpkg-query -l: 列出所有安裝的套件。
  • grep '^ii': 過濾掉顯示中非已安裝狀態的套件。
  • wc -l: 計算符合條件的行數,即安裝的套件數量。

執行結果範例

487

這表示系統目前有 487 個套件處於安裝狀態。

查詢 Snap 套件數量

如果系統中安裝了 Snap 套件,也可以使用 snap list 指令來查詢套件數量。

指令範例

snap list | wc -l

指令說明

  • snap list: 顯示所有已安裝的 Snap 套件。
  • wc -l: 計算行數,顯示 Snap 套件數量。

執行結果範例

12

這表示系統目前安裝了 12 個 Snap 套件。

注意事項

snap list 的輸出中包含標題行,因此如果要獲得準確的套件數量,應減去一行:

snap list | tail -n +2 | wc -l

總結

  • Apt 套件: apt list --installed | wc -l 可快速獲取總數。
  • Dpkg 套件: dpkg-query -l | grep '^ii' | wc -l 可更精確計算已安裝的 Debian 套件數量。
  • Snap 套件: snap list 可查詢 Snap 套件的總數。

透過這些指令,您可以輕鬆掌握系統中的安裝套件數量,並更有效地管理 Ubuntu 系統。

6. 總結

在本篇文章中,我們詳細介紹了如何在 Ubuntu 中查詢已安裝的套件。不同的方法適用於不同的需求,您可以根據自身情境選擇合適的方法。

本篇文章介紹的方法

  1. 列出所有已安裝的套件
  • 使用 apt list --installeddpkg-query -l 來列出系統中所有已安裝的套件。
  • 對於 Snap 套件,可以使用 snap list
  1. 查詢特定套件是否已安裝
  • 透過 grep 搭配 aptdpkg 指令快速查詢。
  1. 查看套件詳細資訊
  • 使用 apt showdpkg -s 來查看安裝的版本、依賴關係和開發者資訊。
  1. 確認系統中安裝的套件數量
  • 使用 wc -l 搭配 aptdpkg 來計算已安裝的套件數量。

如何選擇合適的方法?

  • 如果您是初學者: 推薦使用 apt 指令,例如 apt list --installed
  • 如果需要更多資訊: dpkg 指令能提供更詳細的內容,例如 dpkg -s 套件名稱
  • 如果要查詢 Snap 套件: 使用 snap list 來查看已安裝的 Snap 套件。

結語

掌握這些指令,能夠幫助您更有效地管理 Ubuntu 的套件,無論是進行系統維護還是解決安裝問題。希望本篇文章對您有所幫助,讓您可以更靈活地使用 Ubuntu!

7. 常見問題(FAQ)

在這個部分,我們整理了關於 Ubuntu 已安裝套件管理的常見問題及解答,幫助初學者和中級使用者更好地理解如何管理套件。

Q1: aptdpkg 有什麼區別?

A:
apt 是 Ubuntu 和 Debian 系統上最常見的套件管理工具,負責下載、安裝、更新和刪除套件。而 dpkg 是更低階的工具,主要用來直接管理本機的 Debian 套件(.deb)。

主要區別:

  • apt: 透過線上套件庫下載並安裝套件,並能夠自動解決依賴關係。
  • dpkg: 僅能安裝本地的 .deb 檔案,不會自動解決依賴問題。

Q2: Snap 套件是什麼?

A:
Snap 是 Ubuntu 引入的一種新型套件管理系統,它可以在不同的 Linux 發行版上運行,並且每個 Snap 套件都包含所有必要的依賴關係,避免了傳統 apt 套件依賴衝突的問題。

  • 優點: 可獨立執行、相容性高、易於管理。
  • 缺點: 套件體積較大,啟動速度可能較慢。

可以使用 snap list 來查看已安裝的 Snap 套件。

Q3: 如何確認某個特定的套件是否已安裝?

A:
可以使用以下指令來查詢:

apt list --installed | grep 套件名稱

例如,確認 curl 是否已安裝:

apt list --installed | grep curl

如果有輸出結果,表示 curl 已安裝。

Q4: 指令無法正常運行時該怎麼辦?

A:
請按照以下步驟進行排查:

  1. 檢查指令拼寫是否正確: 確保輸入的指令沒有錯誤。
  2. 確認權限問題: 某些指令需要使用 sudo,如果遇到權限錯誤,請加上 sudo 重新執行:
sudo apt list --installed
  1. 更新套件庫: 如果 apt 出現錯誤,可以先更新系統的套件庫:
sudo apt update
  1. 檢查系統日誌: 使用 /var/log/syslogjournalctl 來查找更詳細的錯誤資訊。

Q5: 如何刪除已安裝的套件?

A:
可以使用以下指令來移除套件:

  • apt remove 套件名稱: 移除套件,但保留設定檔。
  • apt purge 套件名稱: 完全移除套件,包括設定檔。

例如,刪除 curl

sudo apt remove curl

如果要同時刪除設定檔,可以使用:

sudo apt purge curl

Q6: 如何將已安裝套件列表存檔?

A:
可以使用以下指令將已安裝套件的列表輸出到文件中:

apt list --installed > installed_packages.txt

這樣,所有已安裝的套件資訊將會被儲存到 installed_packages.txt 文件中,方便日後查閱。

8. 總結

本篇文章詳細介紹了如何在 Ubuntu 中管理已安裝的套件。我們探討了不同的方法來查看、確認和管理套件,並提供了一些實用的指令範例。

本文涵蓋的內容

  1. 如何列出所有已安裝的套件
  • 使用 apt list --installeddpkg-query -l 來查詢已安裝的套件。
  • 對於 Snap 套件,使用 snap list
  1. 如何確認特定套件是否已安裝
  • 透過 grep 搭配 aptdpkg 來搜尋特定套件。
  1. 如何查看已安裝套件的詳細資訊
  • 使用 apt showdpkg -s 來檢視套件的版本、依賴關係和開發者資訊。
  1. 如何計算已安裝套件的數量
  • 使用 apt list --installed | wc -ldpkg-query -l | grep '^ii' | wc -l

如何選擇適合的方法?

  • 初學者: apt 指令更直觀,適合簡單查詢。
  • 進階使用者: dpkg 指令可提供更詳細的資訊。
  • Snap 用戶: 使用 snap list 來查詢 Snap 套件。

結語

希望這篇文章能幫助您更好地管理 Ubuntu 的套件,無論是日常維護還是故障排除,這些指令都能讓您更有效率地操作 Ubuntu 系統。

侍エンジニア塾