Ubuntu 軟體管理

来源:https://www.cnblogs.com/wangyanqiang/archive/2019/11/01/11776670.html
-Advertisement-
Play Games

Ubuntu軟體管理:dpkg和apt Debian軟體包通常為預編譯的二進位格式的擴展名“.deb”,類似rpm文件, dpkg:package manager for Debian,類似於rpm, dpkg是基於Debian的系統的包管理器。可以安裝,刪除和構建軟體包,但無法自動下載和安裝軟體包 ...


Ubuntu軟體管理:dpkg和apt

   Debian軟體包通常為預編譯的二進位格式的擴展名“.deb”,類似rpm文件,
  dpkg:package manager for Debian,類似於rpm, dpkg是基於Debian的系統的包管理器。可以安裝,刪除和構建軟體包,但無法自動下載和安裝軟體包或其依賴項 
  APT:Advanced Packaging Tool,功能強大的軟體管理工具,甚至可升級整個Ubuntu的系統,基於客戶/伺服器架構
  APT工作原理:在伺服器上先複製所有DEB包,然後用APT的分析工具genbasedir根據每個DEB 包的包頭(Header)信息對所有的DEB包進行分析,並將該分析結果記錄在文件夾base內的一個DEB 索引清單文件中,一旦APT 伺服器內的DEB有所變動,要使用genbasedir產生新的DEB索引清單。客戶端在進行安裝或升級時先要查詢DEB索引清單,從而獲知所有具有依賴關係的軟體包,並一同下載到客戶端以便安裝。當客戶端需要安裝、升級或刪除某個軟體包時,客戶端電腦取得DEB索引清單壓縮文件後,會將其解壓置放於 /var/cache/apt/,而客戶端使用apt-get install或apt-get upgrade命令的時候,就會將這個文件夾內的數據和客戶端電腦內的DEB資料庫比對,知道哪些DEB已安裝、未安裝或是可以升級的

dpkg常見用法:
  dpkg -i package.deb 安裝包
  dpkg -r package 刪除包,不建議,不自動卸載依賴於它的包
  dpkg -P package 刪除包(包括配置文件)
  dpkg -l 列出當前已安裝的包,類似rpm -qa
  dpkg -l package 顯示該包的簡要說明,類似rpm –qi
  dpkg -L package 列出該包中所包含的文件,類似rpm –ql
  dpkg -S <pattern> 搜索包含pattern的包,類似rpm –qf
  dpkg -s package 列出該包的狀態,包括詳細信息,類似rpm –qi
  dpkg --configure package 配置包,-a 使用,配置所有沒有配置的軟體包
  dpkg -c package.deb 列出 deb 包的內容,類似rpm –qpl
  dpkg --unpack package.deb 解開 deb 包的內容

  apt 相當於 apt-get、apt-cache 和 apt-config 中最常用命令選項的集合
  apt 具有更精減但足夠的命令選項,而且參數選項的組織方式更為有效。此外,啟用的幾個特性也非常有幫助。
    例如:可以在使用 apt 命令安裝或刪除程式時看到進度條,apt還會在更新存儲庫資料庫時提示用戶可升級的軟體包個數
  apt 與 apt-get 有一些類似的命令選項,但它並不能完全向下相容 apt-get 命令,也即可用 apt 替換部分 apt-get 系列命令,但不是全部
apt命令:
  apt 命令 被取代的命令 命令的功能
  apt install apt-get install 安裝軟體包
  apt remove apt-get remove 移除軟體包
  apt purge apt-get purge 移除軟體包及配置文件
  apt update apt-get update 刷新存儲庫索引
  apt upgrade apt-get upgrade 升級所有可升級的軟體包
  apt autoremove apt-get autoremove 自動刪除不需要的包
  apt full-upgrade apt-get dist-upgrade 在升級軟體包時自動處理依賴關係
  apt search apt-cache search 搜索應用程式
  apt show apt-cache show 顯示安裝細節
    
apt 特有的命令
  apt list 列出包含條件的包(已安裝,可升級等)
  apt edit-sources 編輯源列表    
  APT包索引來自/etc/apt/sources.list文件和/etc/apt/sources.list.d目錄中定義的存儲庫的可用包的資料庫。要使用存儲庫中所做的最新更改來更新本地程式包索引
  apt命令操作(如安裝和刪除軟體包)記錄在/var/log/dpkg.log日誌文件中


apt示例:
安裝包:

  apt install tree zip
刪除包:
  apt remove tree zip
  說明:apt remove中添加--purge選項會刪除包配置文件,謹慎使用
更新包索引:
  apt update
升級包:要升級系統,請首先更新軟體包索引,再升級
  apt upgrade


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

-Advertisement-
Play Games
更多相關文章
  • Docker概述 Docker是一個用於開發,交付和運行應用程式的開放平臺。 Docker優勢 更快速的交付和部署 對於開發人員 Build Once, Run Anywhere 容器意味著環境隔離和可重覆性。開發人員只需為應用創建一次運行環境,然後打包成容器便可在其他機器上運行。另外,容器環境與所 ...
  • KVM 快照的定義:快照就是將虛機在某一個時間點上的磁碟、記憶體和設備狀態保存一下,以備將來之用。它包括以下幾類: (1)磁碟快照:磁碟的內容(可能是虛機的全部磁碟或者部分磁碟)在某個時間點上被保存,然後可以被恢復。 磁碟數據的保存狀態: 在一個運行著的系統上,一個磁碟快照很可能只是崩潰一致的(cra ...
  • [20191101]完善vim的bccalc插件8.txt--//今天移植bccalc插件到linux,發現一些問題.我自己已經在windows下使用一段時間,從來沒有在linux下測試.看來很少人看我的blog.--//對比以前我的腳本我才發現問題在於windows下echo與linux下不同.- ...
  • 一、安裝wmi-exporter 首先在需要監控的Windows機器上安裝wmi_exporter。wmi_exporter下載地址:https://github.com/martinlindhe/wmi_exporter/releases 下載後,雙擊即可完成安裝。 完成安裝後,會自動創建一個開機 ...
  • RHEL的yum是要給錢才能用的,想要不給錢的用,就把原裝yum替換為centos的yum1.查看原有yum包rpm -qa|grep yumyum-langpacks-0.4.2-7.el7.noarchyum-metadata-parser-1.1.4-10.el7.x86_64yum-rhn-... ...
  • 由於我在做linux下的QT開發,有時候會用到shell腳本的輔助,但是需要QT運行shell腳本並獲取執行結果,今天給大家分享下我的技巧,廢話少說直接上代碼: ...
  • Linux用戶和組的屬性與許可權本章結構1.用戶賬號和組賬號概述2.用戶賬號和組賬號管理3.查詢賬號信息4.查看目錄或文件的屬性5.設置目錄或文件的許可權6.設置目錄或文件的歸屬 前言在linux中一切都是文件(文件夾和硬體設備是特殊的文件),如果有可能儘量使用文本文件。文本文件是人和機器能理解的文件, ...
  • 作為IntelliJ IDEA mac新手,IDEA如何快速搭建Java開發環境呢? 今天小編就給大家帶來了IntelliJ IDEA mac使用教程,想知道IDEA如何快速搭建Java開發環境?那就一起來看看吧! 全局JDK(預設配置) 具體步驟:頂部工具欄 File ->Other Settin ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...