ubuntu apt-get 總結 install xxx -d能下載安裝包(含依賴)不安裝_和卸載(轉載)

 

[舉例]

目前經常使用的html

==========數據庫

*更新本機中的數據庫緩存:緩存

sudo apt-get update服務器


*查找包含部分關鍵字的軟件包:工具

sudo apt-cache search <你要查找的name>ui


*安裝指定的軟件:spa

sudo apt-get install <你要安裝的軟件包>.net

例如: sudo apt-get install xfce4 orm


*下載軟件包源代碼(若是有的話):htm

apt-get source <你要下載的源代碼包名>



詳細的資料

=========

http://www.debian.org/doc/manuals/apt-howto/ch-sourcehandling.en.html

apt-get:


安裝和卸載------

*更新本機中的數據庫緩存:

sudo apt-get update

最好按期更新一下使你本身機器上面的數據和服務器(/etc/apt/sources.list列出)上面的信息保持一致,在安裝軟件以前能夠運行一下這個命令保證成功性。


*安裝軟件:

#apt-get install packagename

這裏將安裝你須要的在sources.lists中的最新的軟件包,若是有其餘依賴則自動安裝相應的依賴軟件包。packagename能夠是多個軟件包。

一些有用的選項:

-h  This help text.

-d  Download only - do NOT install or unpack archives

-f  Attempt to continue if the integrity check fails

-s  No-act. Perform ordering simulation

-y  Assume Yes to all queries and do not prompt

-u  Show a list of upgraded packages as well


*卸載軟件(用install):

#apt-get install packagename-

在須要卸載的包後面加上一個'-'(我沒有實驗過),固然能夠apt-get install p1 p2-這樣多個命令合併了,裝p1卸p2。


*卸載軟件2:

#apt-get remove packagename

這會卸載相應的軟件,同時也會卸載依賴的部分,沒辦法指定不卸載依賴的。可是軟件的配置文件仍是會留在系統中。


*徹底卸載軟件包括刪除配置:

#apt-get --purge remove packagename

這樣配置文件也會被刪除。


*安裝軟件2(用remove):

#apt-get remove packagename+

這個和用install來卸載軟件的意義相似,在包名稱後面添加一個+,表示安裝。


*修復或者只安裝最新版本:

#apt-get --reinstall install packagename

這裏,若是你的軟件包被破壞了,或者你想要安裝一個最新的軟件,運行這個。


升級軟件包------

*升級軟件包1:

#apt-get -u upgrade

這裏加上-u選項列出將要升級的軟件,可能會提示有些軟件不會升級,由於可能會破壞依賴關係,更好的方法是利用apt-get dist-upgrade

你能夠經過cd或者添加源地址來更新,若是 你想從cd來升級,首先運行apt-cdrom把cd中的軟件添加到/etc/apt/sources源中,而後運行apt-get dist-upgrade來升級,可是由於apt-get老是使用最新版本,若是cd中的不是最新的版本,那麼也不會用到cd。


*升級軟件包2:

#apt-get -u dist-upgrade

這樣安裝的軟件前面apt-get -u upgrade安不了的也會安裝了,但個別的仍然不能安裝,例如:升級會致使須要卸載一些包,卸載這些包會致使另外的軟件不能用,因此就不升級了。


*升級軟件包3:

#apt-get -u install packagename

假設前面升級的時候packagename沒法升級,那麼這個命令會升級packagename若是須要卸載默寫模塊而卸載這些模塊致使一些軟件沒法使用,那麼幹脆把這些軟件都卸載了,而後升級,這個命令會致使packagename最終升級了。


清理沒用的包文件------

用apt-get 安裝軟件包的時候,apt會從/etc/apt/sources.list裏面將相應的軟件包恢復出來,把它們存放在一個本地的文檔庫中(/var/cache/apt/archives/)而後纔開始安裝,隨着時間的增加,這將不斷地消耗硬盤的空間。


*清理全部的緩存文件:

#apt-get clean

這會清理所/var/cache/apt/archives/ 和 /var/cache/apt/archives/partial/中沒有被鎖定的文件。固然你再次安裝軟件的時候,這個軟件又被恢復到本地文檔庫中了。


*僅僅清理舊的緩存文件:

#apt-get autoclean

這會清理舊版本的/var/cache /apt/archives/ 和 /var/cache/apt/archives/partial/中的文件。舊版本是指已經有更新的版本的軟件了,再下載的話應下載最新的而不是這個舊 版本的了。根據apt-show-versions -p能夠知道哪些是舊的。


*安裝指定版本的軟件包:

# apt-get install package=version


查找信息--------


*查找一個含有packagename字符串的包:

#apt-cache search packagename

這樣將輸出所包含packagename字符串的包。


*顯示軟件包的詳細信息:

# apt-cache show stella

這包含了軟件包許多的信息,例如若是你已經安裝了這個軟件包,信息裏面也會顯示。


*顯示軟件包的大體信息:

apt-cache showpkg packagename

這會顯示大體的信息。


*查看那些包能夠升級的信息:

$ apt-show-versions -u

這個apt-show-versions工具須要安裝一下的。


*查看當前特定軟件版本:

apt-show-versions -p packagename


*檢查packagename依賴的包:

#apt-cache depends packagename


工做相關--------


*安裝編譯源代碼須要的庫(包):

# apt-get build-dep packagename

所的源代碼包一個'Build-Depends'域,指明瞭從源代碼編譯這個包須要安裝的軟件。上面的命令能夠下載這些包,其中'packagename'是包名。



*查看編譯一個包須要哪些其餘的庫(包):

#apt-cache show packagename

若是你只是想要檢查編譯一個包須要哪些其餘的包,那麼能夠利用上面的命令,其中'packagename'是包名。



*下載包packagename的源代碼:

$ apt-get source packagename

這將在當前目錄下載個文件:*.orig.tar.gz,*.dsc,*.diff.gz。若是這個包是debian的,那麼最後一個文件沒有,而且第一個文件名裏面不包括"orig"字符串。

.dsc文件被dpkg-source使用,把源代碼包解壓到目錄 packagename-version.每個下載的源代碼包裏面都有一個debian/目錄,這個目錄包含了用於建立.deb包的文件。



*下載的時候自動把源代碼包編譯:

$ apt-get -b source packagename

多是編譯成.deb包,我沒有試過。


*根據下載的源代碼建立deb包:

$ dpkg-buildpackage -rfakeroot -uc -b

若是你決定在下載的時候不建立deb包,你能夠之後經過在下載的包以後建立的目錄裏面運行這個命令來建立。


*直接利用包管理器安裝包:

# dpkg -i file.deb

須要直接使用包管理器,運行這個命令來安裝包。


-------dpkg查找


*已知軟件包中有一個文件,根據文件查找軟件包:

# dpkg -S stdio.h

輸入以後,輸出以下:

libc6-dev: /usr/include/stdio.h

libc6-dev: /usr/include/bits/stdio.h

perl: /usr/lib/perl/5.6.0/CORE/nostdio.h

這在知道包中某些文件的時候,來根據文件查找軟件包這種狀況下很是用。


*查找安裝在你的機器上面的軟件包:

dpkg -l


*自動安裝缺失的軟件:

# auto-apt run command

這裏,command是你要運行的命令。例 如 auto-apt run ./configure .當缺失依賴軟件的時候,它會詢問你安裝,方便了編譯。安裝以後會繼續運行。auto-apt須要保持一個最新的數據庫,利用這個命令進行更 新:auto-apt update, auto-apt updatedb and auto-apt update-local。


--------apt-get查找


*利用apt-file根據文件名查找相應的軟件包:

$ apt-file search filename

若是你只知道程序名字filename,那 麼你能夠運行這個命令,它的工做方式和 dpkg -S差很少,就是根據某個軟件包裏可能包含的文件來查找這個軟件包的名字。另外,它也會顯示包含這個文件的沒有安裝的軟件包。當你編譯的時候,提示缺了什 麼頭文件的時候,利用這個很方便地肯定須要裝哪些軟件包(固然利用audo-apt更方便).


*列出一個軟件包中包含的文件:

$apt-file list packagename

這裏,apt-file是根據一個數據庫來讀取信息的,因此須要保持數據庫是最新的。


*更新apt-file的數據庫:

# apt-file update

默認狀況下,apt-file的數據庫和auto-apt是同樣的。


[其餘]

問題:

如何查看已經安裝的軟件?

如何肯定一個軟件是否已經安裝?

轉載自: http://blog.csdn.net/klarclm/article/details/8561197

相關文章
相關標籤/搜索