apt軟體包管理

来源:http://www.cnblogs.com/timeismoney/archive/2017/04/27/6773986.html
-Advertisement-
Play Games

命令 以下命令需要在前面加上 sudo 以獲得 root 許可權。 根據實際情況,替換“軟體包名稱”或“字元串”為具體內容。 軟體包維護 apt-get update - 在你更改了/etc/apt/sources.list 或 /etc/apt/preferences 後,需要運行這個命令以令改動生 ...


命令

以下命令需要在前面加上 sudo 以獲得 root 許可權。 根據實際情況,替換“軟體包名稱”或“字元串”為具體內容。

軟體包維護

  • apt-get update - 在你更改了/etc/apt/sources.list 或 /etc/apt/preferences 後,需要運行這個命令以令改動生效。同時也要定期運行該命令,以確保你的源列表是最新的。該命令等價於新立得軟體包管理器中的“刷新”,或者是 Windows和OS X 下的 Adept 軟體包管理器的 “check for updates”。
  • apt-get upgrade - 更新所有已安裝的軟體包。類似一條命令完成了新立得軟體包管理器中的“標記所有軟體包以便升級”並且“應用”。
  • apt-get dist-upgrade - 更新整個系統到最新的發行版。等價於在新立得軟體包管理器中“標記所有更新”,併在首選項里選擇“智能升級” -- 這是告訴APT更新到最新包,甚至會刪除其他包(註:不建議使用這種方式更新到新的發行版)。
  • apt-get -f install -- 等同於新立得軟體包管理器中的“編輯->修正(依賴關係)損毀的軟體包”再點擊“應用。如果提示“unmet dependencies”的時候,可執行這行命令。
  • apt-get autoclean - 如果你的硬碟空間不大的話,可以定期運行這個程式,將已經刪除了的軟體包的.deb安裝文件從硬碟中刪除掉。如果你仍然需要硬碟空間的話,可以試試apt-get clean,這會把你已安裝的軟體包的安裝包也刪除掉,當然多數情況下這些包沒什麼用了,因此這是個為硬碟騰地方的好辦法。
  • apt-get clean 類似上面的命令,但它刪除包緩存中的所有包。這是個很好的做法,因為多數情況下這些包沒有用了。但如果你是撥號上網的話,就得重新考慮了。
  • 包緩存的路徑為/var/cache/apt/archives,因此,du -sh /var/cache/apt/archives將告訴你包緩存所占用的硬碟空間。
  • dpkg-reconfigure foo - 重新配置“foo”包。這條命令很有用。當一次配置很多包的時候, 要回答很多問題,但有的問題事先並不知道。例如,dpkg-reconfigure fontconfig-config,在Ubuntu系統中顯示字體配置嚮導。每次我安裝完一個 Ubuntu 系統,我都會運行這行命令,因為我希望點陣圖字體在我的所有應用程式上都有效。
  • echo "foo hold" | dpkg --set-selections - 設置包“foo”為hold,不更新這個包,保持當前的版本,當前的狀態,當前的一切。類似新立得軟體包管理器中的“軟體包->鎖定版本”。
  • 註: apt-get dist-upgrade 會覆蓋上面的設置,但會事先提示。 另外,你必須使用 sudo。輸入命令echo "foo hold" | sudo dpkg --set-selections而不是sudo echo "foo hold" | dpkg --set-selections
  • echo "foo install -- 刪除“hold”“locked package”狀態設置。命令行為echo "foo install" | sudo dpkg --set-selections
  • apt-show-versions -u apt-show-versions工具可以告訴你系統中哪些包可以更新以及其它 一些有用的信息。-u選項可以顯示可更新軟體包列表,這個工具預設沒有安裝,但是每次update完了以後,用這個工具看看非常方便,值得一裝。

軟體包刪除

  • apt-get remove 軟體包名稱 - 刪除已安裝的軟體包(保留配置文件)
  • apt-get --purge remove 軟體包名稱 - 刪除已安裝包(不保留配置文件)
  • 特別技巧:如果你想在刪除‘foo’包同時安裝‘bar’: apt-get --purge remove foo bar+
  • apt-get autoremove - 刪除為了滿足其他軟體包的依賴而安裝的,但現在不再需要的軟體包。

軟體包搜索

  • apt-cache search foo - 搜索和"foo"匹配的包。
  • apt-cache show foo - 顯示"foo"包的相關信息,例如描述、版本、大小、依賴以及衝突。
  • dpkg --print-avail 軟體包名稱 - 與上面類似。
  • dpkg -l *foo* - 查找包含有"foo"字樣的包。與apt-cache show foo類似,但是還會顯示每個包是安裝了還是沒安裝。
  • dpkg -l package-name-pattern - 列出名為package-name-pattern的軟體包。除非你知道軟體包的正確全稱,否則可以使用“*package-name-pattern*”.
  • dpkg -L foo - 顯示名為“foo”的包都安裝了哪些文件以及它們的路徑,很有用的命令。
  • dlocate foo - 在已安裝的包中搜索“foo”的文件。對於回答“這個文件來源於哪個包”這個問題,是非常實用的。dlocate是一個軟體包,必須安裝它才能使用本命令。
  • dpkg -S foo - 和上面的命令一樣,但相比更慢一些。他只能在Debian或Ubuntu系統下運行。另外,不需要安裝dlocate包。
  • apt-file search foo - 類似dlocate和dpkg -S,但搜索所有有效軟體包,不單單隻是你系統上的已安裝的軟體包。-- 它所回答的問題是“哪些軟體包提供這些文件”。你必須安裝有apt-file軟體包,並且確保apt-file資料庫是最新的。
  • dpkg -c foo.deb - “foo.deb”包含有哪些文件?註:foo.deb是含路徑的文件名。-- 這個是針對你自己下載的.deb包。
  • apt-cache dumpavail - 顯示所有可用軟體包,以及它們各自的詳細信息(會產生很多輸出)。
  • apt-cache show 軟體包名稱 - 顯示軟體包記錄,類似dpkg --print-avail 軟體包名稱
  • apt-cache pkgnames - 快速列出已安裝的軟體包名稱。
  • apt-file search filename - 查找包含特定文件的軟體包(不一定是已安裝的),這些文件的文件名中含有指定的字元串。apt-file是一個獨立的軟體包。您必須先使用 apt-get install 來安裝它,然後運行 apt-file update。如果 apt-file search filename 輸出的內容太多,您可以嘗試使用 apt-file search filename | grep -w filename(只顯示指定字元串作為完整的單詞出現在其中的那些文件名)或者類似方法,例如:apt-file search filename | grep /bin/(只顯示位於諸如/bin或/usr/bin這些文件夾中的文件,如果您要查找的是某個特定的執行文件的話,這樣做是有幫助的)。

提高命令行方式下的工作效率

您可以通過定義別名(alias)來提高這些命令的輸入速度。例如,您可以在您的*~/.bashrc*文件中添加下列內容

alias acs='apt-cache search'
alias agu='sudo apt-get update'
alias agg='sudo apt-get upgrade'
alias agd='sudo apt-get dist-upgrade'
alias agi='sudo apt-get install'
alias agr='sudo apt-get remove'

 

新版apt介紹

下麵我們列出 Debian 中使用 APT 命令與老版本 Debian 中軟體包管理的用法對比:

新的apt管理工具老版本apt管理工具
apt install 包名 替代 apt-get install 包名
apt remove 包名 替代 apt-get remove 包名
apt search 包名 替代 apt-cache search 包名
apt show 包名 替代 apt-cache show 包名
apt update 替代 apt-get update
apt upgrade 替代 apt-get upgrade
apt list –installed 替代 dpkg -l
apt edit-sources 替代 sudo nano /etc/apt/sources.list
apt autoremove 替代 apt-get autoremove
apt purge 包名 替代 apt-get purge 包名

新版詳細的介紹可以輸入man apt命令查看。

man命令:是Linux下的幫助指令,通過man指令可以查看Linux中的指令幫助、配置文件幫助和編程幫助等信息。

參考: 

http://man.linuxde.net

http://wiki.ubuntu.org.cn

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 一、yum安裝svn yum -y install subversion 二、查看已安裝的svn版本信息 svnserve --version 三、創建一個代碼庫 1.先創建一個目錄 mkdir -p /home/test 2.創建版本庫 svnadmin create /home/test 執行上 ...
  • 記錄一下vi的一些使用指令,藍色部分是比較常用的,其中使用過的重新進行了描述,極少部分是未使用過的,還有一些未使用也未記錄進來,後續再來補充修正: 參考資料:http://cn.linux.vbird.org/linux_basic/0310vi_2.php vi分三種模式:一般模式、編輯模式、指令 ...
  • 1、代理伺服器squid簡介 Squid cache(簡稱為Squid)是一個流行的自由軟體(GNU通用公共許可證)的代理伺服器和Web緩存伺服器。Squid有廣泛的用途,從作為網頁伺服器的前置cache伺服器緩存相關請求來提高Web伺服器的速度,到為一組人共用網路資源而緩存萬維網,功能變數名稱系統和其他網 ...
  • Linux cd 命令可以說是Linux中最基本的命令語句,其他的命令語句要進行操作,都是建立在使用 cd 命令上的。所以,學習Linux 常用命令,首先就要學好 cd 命令的使用方法技巧。 1. 命令格式: cd [目錄名] 2. 命令功能: 切換當前目錄至dirName 3. 常用範例 3.1  ...
  • [root data]$ service ntpd stop關閉 ntpd: [失敗] [root data]$ ntpdate cn.pool.ntp.org 18 Dec 15:09:59 ntpdate[11495]: step time server 119.57.127.125 offse ...
  • Logwatch功能介紹 Logwatch是一款Perl腳本編寫的、開源的日誌分析工具。它能對原始的日誌文件進行解析並轉換成結構化格式的文檔,也能根據您的使用情況和需求來定製報告。Logwatch的特點是配置簡單、監控、分析日誌方便,而且可以對某些功能進行定製化。 項目源碼位於https://sou... ...
  • <! "RedHat" "查看系統發行版本" "查看系統內核版本、位數" "CentOS" "查看系統發行版本 cat /etc/issue" "查看系統內核版本、位數 more /proc/version" "Oracle Linux" "查看系統發行版本" "查看系統內核版本、位數" "所有命令 ...
  • 轉自官方網頁:http://www.firewalld.org/documentation/howto/open-a-port-or-service.html How to open port 80/tcp with firewall-cmd: 重啟後才能生效 Reload firewalld ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...