Linux-誤刪apt-get以及把aptitude換回

来源:https://www.cnblogs.com/Cherrison-Time/archive/2019/04/25/10770109.html
-Advertisement-
Play Games

誤刪apt-get拯救我的linux 一.前言 先來說一下apt-get, 這個我們使用linux過程中最常用的命令之一. apt-get是一條linux命令,適用於deb包管理式的操作系統,主要用於自動從互聯網的軟體倉庫中搜索、安裝、升級、卸載軟體或操作系統。 沒有它, 可以說是在linux上寸步 ...


誤刪apt-get拯救我的linux

一.前言

   先來說一下apt-get, 這個我們使用linux過程中最常用的命令之一. apt-get是一條linux命令,適用於deb包管理式的操作系統,主要用於自動從互聯網的軟體倉庫中搜索、安裝、升級、卸載軟體或操作系統。

  沒有它, 可以說是在linux上寸步難行了, 最近因為想部署一個自己的hexo的博客, 需要安裝node, npm, 可是使用apt-get卻無法安裝,

顯示是破壞了某種關係, 而且無法修複. 如圖所示, 在網上查找教程但沒能解決.

  之後在一些博客中有人提出使用aptitude這個包管理工具可以解決這個問題, 還說aptitude是比apt-get更好用的linux包管理工具,

下麵是aptitude的簡介-來自網上整理.

  aptitude 雖然沒有 apt-get 的"超級牛力", 但功能卻比 apt-get 更強大
  首先, 像 apt-get 一樣, 可以安裝軟體

  aptitude 解決依賴關係比 apt-get 更智能. 有時用 apt-get 安裝軟體時會出現 "XXX 需要 XXXX, 但 XXX已安裝" 這類的錯誤. 這通常是因為某些軟體包過新造成的. 此時使用 aptitude, aptitude 會發現問題並給出幾個解決方案,我們只需接受符合心意的方案就可以了.

  aptitude 的另外一個優點是會自動記錄那些包是"自動安裝"(即因依賴關係而安裝的), 如果依賴"自動安裝"包的包都沒被安裝, 該"自動安裝"包(此時已無用)就會自動刪除.
使用這兩個命令可以控制包的"自動安裝"屬性

      於是我便安裝了一個, 可是安裝後依然無法安裝npm, 小白絕望了,因為在安裝aptitude的時候需要卸載apt-get, 好了現在aptitude也不能用, apt-get也沒了, 我無法安裝任何東西了, 這個時候可怎麼辦!

二. 解決辦法

  這個時候可以通過執行下麵命令來先刪除aptitude, 如果你只是刪除了apt-get而沒有安裝aptitude那麼從下麵開始看.

  1  sudo dpkg -r aptitude    

 

拯救開始,因為這個軟體已經被卸載,想要重新使用就要重新下載

  可以在這個ubuntu的網站下載https://www.ubuntuupdates.org/

直接在那個框里搜索相應的包就可以了

 

需要下載三個軟體包  apt    libapt-pkg ubuntu-keyring, 版本不要下載太高, 可能會出現依賴更高版本的問題, 我下載的是下麵幾個

  apt_1.7.0_amd64.deb  libapt-pkg5.0_1.8.0_amd64.deb  ubuntu-keyring_2016.10.27_all.deb

   這個時候出現一個問題, 在那個網站里找不到ubuntu-keying這個包, 怎麼辦! 別急 我在下麵的這個網站源里找到了

  http://archive.ubuntu.com/ubuntu/pool/main/u/ubuntu-keyring/     這裡直接給出這個包的地址, 省得大家找.

這三個包需要放到HOME文件夾里

  接下來問題就簡單了,我只需要在home文件夾下打開終端依次執行下麵三條dapk -i 包名就可以了 

  

1 sudo dpkg -i ubuntu-keyring_2016.10.27_all.deb
2 sudo dpkg -i libapt-pkg5.0_1.8.0_amd64.deb
3 sudo dpkg -i apt_1.7.0_amd64.deb

  依次執行完之後吶, 問題就解決了

這時我們可以輸入apt-get moo來測試一下, 看到我們熟悉的超級牛力就成功了.如圖:

 

-----只要細心大膽, 我們都可以成功, 

    -------有疑問可以在下方聯繫我!

 


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

-Advertisement-
Play Games
更多相關文章
  • 要使用Dictionary集合,需要導入C#泛型命名空間 System.Collections.Generic(程式集:mscorlib) 要使用Dictionary集合,需要導入C#泛型命名空間 System.Collections.Generic(程式集:mscorlib) Dictionary ...
  • 註意:首先引入dll文件ICSharpCode.SharpZipLib.dll 壓縮文件 文件下載 具體使用 ...
  • 介紹 SmartSql = MyBatis + Cache(Memory | Redis) + R/W Splitting +Dynamic Repository + Diagnostics ...... 簡潔、高效、高性能、擴展性、監控、漸進式開發! 她是如何工作的? SmartSql 借鑒了 M ...
  • SignatureButton控制項 一、 樣式一 我們要實現上圖中的效果,需要如下的操作: 設置一個值,該值指示在GobileView中,當Visible指定的屬性值為空時,當前單元格是否顯示控制項,並調整GridView中單元格的大小。預設屬性設置為“False”,如圖1; 圖 1 設置控制項的背景色 ...
  • Windows -- 從註冊表刪除IE瀏覽器載入項 1. 一部分載入項從註冊表以下位置直接刪除 2. 一部分擴展項從註冊表以下位置直接刪除 ...
  • 1 #!/bin/sh 2 count=100 #控制每秒寫入不同大小的文件 3 4 while true 5 do 6 for ((i=1;i<=$count;i++)) 7 do 8 /bin/cp 10k.jpg /backup/test/$i/10k_`echo $(date)$RANDOM... ...
  • Linux scp命令用於Linux之間複製文件和目錄。 `scp`是`secure copy`的縮寫,scp是Linux系統下基於ssh登陸進行安全的遠程文件拷貝命令。 ...
  • 任務基本概念 任務是一個接受操作系統管理的獨立運行單元,在 中類似與普通平臺上的 函數,需要自己來保護其因調用或中斷二產生的斷點,所以需要一個自己的私有堆棧,即任務堆棧; 任務有兩種,分為:用戶任務和系統任務; 中並沒有給任務分配獨立的運行空間,而是所有的任務共同使用一個記憶體空間,所以這裡的任務屬於 ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...