jinfeng_wang

          G-G-S,D-D-U!

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            400 Posts :: 0 Stories :: 296 Comments :: 0 Trackbacks

          apt-get和dpkg的使用

          apt-cache search # ------(package 搜索包)
          apt-cache show #------(package 獲取包的相關信息,如說明、大小、版本等)
          sudo apt-get install # ------(package 安裝包)
          sudo apt-get install # -----(package - - reinstall 重新安裝包)
          sudo apt-get -f install # -----(強制安裝?#"-f = --fix-missing"當是修復安裝吧...)
          sudo apt-get remove #-----(package 刪除包)
          sudo apt-get remove - - purge # ------(package 刪除包,包括刪除配置文件等)
          sudo apt-get autoremove --purge # ----(package 刪除包及其依賴的軟件包+配置文件等(只對6.10有效,強烈推薦))
          sudo apt-get update #------更新源
          sudo apt-get upgrade #------更新已安裝的包
          sudo apt-get dist-upgrade # ---------升級系統
          sudo apt-get dselect-upgrade #------使用 dselect 升級
          apt-cache depends #-------(package 了解使用依賴)
          apt-cache rdepends # ------(package 了解某個具體的依賴?#當是查看該包被哪些包依賴吧...)
          sudo apt-get build-dep # ------(package 安裝相關的編譯環境)
          apt-get source #------(package 下載該包的源代碼)
          sudo apt-get clean && sudo apt-get autoclean # --------清理下載文件的存檔 && 只清理過時的包
          sudo apt-get check #-------檢查是否有損壞的依賴


          apt-get install
          下載 以及所有倚賴的包裹,同時進行包裹的安裝或升級。如果某個包裹被設置了 hold (停止標志,就會被擱在一邊(即不會被升級)。更多 hold 細節請看下面。

          apt-get remove [--purge]
          移除 以及任何倚賴這個包裹的其它包裹。
          --purge 指明這個包裹應該被完全清除 (purged) ,更多信息請看 dpkg -P。

          apt-get update
          升級來自 Debian 鏡像的包裹列表,如果你想安裝當天的任何軟件,至少每天運行一次,而且每次修改了
          /etc/apt/sources.list 后,必須執行。

          apt-get upgrade [-u]
          升級所以已經安裝的包裹為最新可用版本。不會安裝新的或移除老的包裹。如果一個包改變了倚賴關系而需要安裝一個新的包裹,那么它將不會被升級,而是標志為 hold。apt-get update 不會升級被標志為 hold 的包裹 (這個也就是 hold 的意思)。請看下文如何手動設置包裹為 hold。我建議同時使用 '-u' 選項,因為這樣你就能看到哪些包裹將會被升級。

          apt-get dist-upgrade [-u]
          和 apt-get upgrade 類似,除了 dist-upgrade 會安裝和移除包裹來滿足倚賴關系。因此具有一定的危險性。

          apt-cache search
          搜索滿足 的包裹和描述。

          apt-cache show
          顯示 的完整的描述。

          apt-cache showpkg
          顯示 許多細節,以及和其它包裹的關系。

          dselect
          console-apt
          aptitude
          gnome-apt
          APT 的幾個圖形前端(其中一些在使用前得先安裝)。這里 dselect 無疑是最強大的,也是最古老,最難駕馭。

          普通 Dpkg 用法
          dpkg -i
          安裝一個 Debian 包裹文件,如你手動下載的文件。

          dpkg -c
          列出 的內容。

          dpkg -I
          從 中提取包裹信息。

          dpkg -r
          移除一個已安裝的包裹。

          dpkg -P
          完全清除一個已安裝的包裹。和 remove 不同的是,remove 只是刪掉數據和可執行文件,purge 另外還刪除所有的配制文件。

          dpkg -L
          列出 安裝的所有文件清單。同時請看 dpkg -c 來檢查一個 .deb 文件的內容。

          dpkg -s
          顯示已安裝包裹的信息。同時請看 apt-cache 顯示 Debian 存檔中的包裹信息,以及 dpkg -I 來顯示從一個 .deb 文件中提取的包裹信息。

          dpkg-reconfigure
          重新配制一個已經安裝的包裹,如果它使用的是 debconf (debconf 為包裹安裝提供了一個統一的配制界面)。你能夠重新配制 debconf 它本身,如你想改變它的前端或提問的優先權。例如,重新配制 debconf,使用一個 dialog 前端,簡單運行:

          dpkg-reconfigure --frontend=dialog debconf (如果你安裝時選錯了,這里可以改回來喲:)

          echo " hold" | dpkg --set-selections
          設置 的狀態為 hlod (命令行方式)

          dpkg --get-selections ""
          取的 的當前狀態 (命令行方式)

          支持通配符,如:
          Debian:~# dpkg --get-selections *wine*
          libwine ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? hold
          libwine-alsa ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?hold
          libwine-arts ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?hold
          libwine-dev ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? hold
          libwine-nas ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? hold
          libwine-print ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? hold
          libwine-twain ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? hold
          wine ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?hold
          wine+ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? hold
          wine-doc ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?hold
          wine-utils ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?hold

          例如:
          大家現在用的都是 gaim-0.58 + QQ-plugin,為了防止 gaim 被升級,我們可以采用如下方法:

          方法一:
          Debian:~# echo "gaim hold" | dpkg --set-selections
          然后用下面命令檢查一下:
          Debian:~# dpkg --get-selections "gaim"
          gaim ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?hold
          現在的狀態標志是 hold,就不能被升級了。

          如果想恢復怎么辦呢?
          Debian:~# echo "gaim install" | dpkg --set-selections
          Debian:~# dpkg --get-selections "gaim"
          gaim ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?install
          這時狀態標志又被重置為 install,可以繼續升級了。

          同志們會問,哪個這些狀態標志都寫在哪個文件中呢?
          在 /var/lib/dpkg/status 里,你也可以通過修改這個文件實現 hold。

          有時你會發現有的軟件狀態標志是 purge,不要奇怪。
          如:事先已經安裝了 amsn,然后把它卸了。
          apt-get remove --purge amsn
          那么狀態標志就從 install 變成 purge。

          方法二:
          在/etc/apt 下手動建一個 preferences 文件
          內容:
          Package: gaim
          Pin: version 0.58*
          保存
          更詳細內容請看:
          http://linuxsir.com/bbs/showthread.php?s=&threadid=22601

          dpkg -S
          在包裹數據庫中查找 ,并告訴你哪個包裹包含了這個文件。(注:查找的是事先已經安裝的包裹)
          posted on 2007-03-01 09:35 jinfeng_wang 閱讀(1115) 評論(0)  編輯  收藏 所屬分類: ZZLinux
          主站蜘蛛池模板: 金昌市| 嘉黎县| 安福县| 将乐县| 黑河市| 临湘市| 惠水县| 泸水县| 丹寨县| 班戈县| 吴川市| 高要市| 电白县| 连云港市| 宁国市| 孝义市| 广南县| 静安区| 赣榆县| 金寨县| 巩留县| 苍溪县| 贵港市| 高密市| 南投市| 临沧市| 克什克腾旗| 岳阳县| 嘉荫县| 蒲城县| 通榆县| 孙吴县| 郸城县| 金昌市| 孟连| 灵寿县| 阳高县| 同江市| 邢台市| 墨脱县| 石门县|