誤刪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來測試一下, 看到我們熟悉的超級牛力就成功了.如圖:
-----只要細心大膽, 我們都可以成功,
-------有疑問可以在下方聯繫我!