<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    jasmine214--love

    只有當你的內心總是充滿快樂、美好的愿望和寧靜時,你才能擁有強壯的體魄和明朗、快樂或者寧靜的面容。
    posts - 731, comments - 60, trackbacks - 0, articles - 0

    說明:由于圖形化界面方法(如Add/Remove... 和Synaptic Package Manageer)比較簡單,所以這里主要總結在終端通過命令行方式進行的軟件包安裝、卸載和刪除的方法。

    一、Ubuntu中軟件安裝方法

    1、APT方式

    (1)普通安裝:apt-get install softname1 softname2 …;

    (2)修復安裝:apt-get -f install softname1 softname2... ;(-f Atemp to correct broken dependencies)

    (3)重新安裝:apt-get --reinstall install softname1 softname2...;

    2、Dpkg方式

    (1)普通安裝:dpkg -i package_name.deb

    3、源碼安裝(.tar、tar.gz、tar.bz2、tar.Z)

    首先解壓縮源碼壓縮包然后通過tar命令來完成

    a.解xx.tar.gz:tar zxf xx.tar.gz
    b.解xx.tar.Z:tar zxf xx.tar.Z
    c.解xx.tgz:tar zxf xx.tgz
    d.解xx.bz2:bunzip2 xx.bz2
    e.解xx.tar:tar xf xx.tar

    然后進入到解壓出的目錄中,建議先讀一下README之類的說明文件,因為此時不同源代碼包或者預編譯包可能存在差異,然后建議使用ls -F --color或者ls -F命令(實際上我的只需要 l 命令即可)查看一下可執行文件,可執行文件會以*號的尾部標志。

    一般依次執行./configure

                          make

                         sudo make install

    即可完成安裝。

    二、Ubuntu中軟件包的卸載方法

    1、APT方式

    (1)移除式卸載:apt-get remove softname1 softname2 …;(移除軟件包,當包尾部有+時,意為安裝)

    (2)清除式卸載 :apt-get --purge remove softname1 softname2...;(同時清除配置)

            清除式卸載:apt-get purge sofname1 softname2...;(同上,也清除配置文件)

    2、Dpkg方式

    (1)移除式卸載:dpkg -r pkg1 pkg2 ...;

    (2)清除式卸載:dpkg -P pkg1 pkg2...;

     

    三、Ubuntu中軟件包的查詢方法

    Dpkg 使用文本文件來作為數據庫.通稱在 /var/lib/dpkg 目錄下. 通稱在 status 文件中存儲軟件狀態,和控制信息. 在 info/ 目錄下備份控制文件, 并在其下的 .list 文件中記錄安裝文件清單, 其下的 .mdasums 保存文件的 MD5 編碼.

    體驗使用數據庫的時刻到了:

    $ dpkg -l
    Desired=Unknown/Install/Remove/Purge/Hold
    | Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed
    |/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
    ||/ Name Version Description
    +++-===========-================-========================================
    ii aalib1 1.4p5-28 ascii art library - transitional package
    ii adduser 3.85 Add and remove users and groups
    ii alien .63 install non-native packages with dpkg
    ... ...


    每條記錄對應一個軟件包, 注意每條記錄的第一, 二, 三個字符. 這就是軟件包的狀態標識, 后邊依此是軟件包名稱, 版本號, 和簡單描述.

    • 第一字符為期望值,它包括:
      • u 狀態未知,這意味著軟件包未安裝,并且用戶也未發出安裝請求.
      • i 用戶請求安裝軟件包.
      • r 用戶請求卸載軟件包.
      • p 用戶請求清除軟件包.
      • h 用戶請求保持軟件包版本鎖定.
    • 第二列,是軟件包的當前狀態.此列包括軟件包的六種狀態.
      • n 軟件包未安裝.
      • i 軟件包安裝并完成配置.
      • c 軟件包以前安裝過,現在刪除了,但是它的配置文件還留在系統中.
      • u 軟件包被解包,但還未配置.
      • f 試圖配置軟件包,但是失敗了.
      • h 軟件包安裝,但是但是沒有成功.
    • 第三列標識錯誤狀態,可以總結為四種狀態. 第一種狀態標識沒有問題,為空. 其它三種符號則標識相應問題.
      • h 軟件包被強制保持,因為有其它軟件包依賴需求,無法升級.
      • r 軟件包被破壞,可能需要重新安裝才能正常使用(包括刪除).
      • x 軟包件被破壞,并且被強制保持.

    也可以以統配符模式進行模糊查詢, 比如我要查找以nano字符開始的所有軟件包:

    $ dpkg -l nano*
    Desired=Unknown/Install/Remove/Purge/Hold
    | Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed
    |/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
    ||/ Name Version Description
    +++-==============-==============-============================================
    ii nano 1.3.10-2 free Pico clone with some new features
    pn nano-tiny <none> (no description available)



    un nanoblogger <none> (no description available)


    以上狀態說明: 系統中安裝了 nano 版本為 1.3.10-2 ;安裝過 nano-tiny , 后來又清除了; 從未安裝過nanoblogger .

    如果覺得 dpkg 的參數過多, 不利于記憶的話, 完全可以使用 dpkg-query 進行 dpkg 數據庫查詢.

    應用范例:

    • 查詢系統中屬于nano的文件:
      $ dpkg --listfiles nano
      or
      $ dpkg-query -L nano
    • 查看軟件nano的詳細信息:
      $ dpkg -s nano
      or
      $ dpkg-query -s nano
    • 查看系統中軟件包狀態, 支持模糊查詢:
      $ dpkg -l
      or
      $dpkg-query -l
    • 查看某個文件的歸屬包:
      $ dpkg-query -S nano
      or
      $ dpkg -S nano

    三、其他應用總結

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

    dpkg --info "軟件包名" --列出軟件包解包后的包名稱.
    dpkg -l --列出當前系統中所有的包.可以和參數less一起使用在分屏查看. (類似于rpm -qa)
    dpkg -l |grep -i "軟件包名" --查看系統中與"軟件包名"相關聯的包.
    dpkg -s 查詢已安裝的包的詳細信息.
    dpkg -L 查詢系統中已安裝的軟件包所安裝的位置. (類似于rpm -ql)
    dpkg -S 查詢系統中某個文件屬于哪個軟件包. (類似于rpm -qf)
    dpkg -I 查詢deb包的詳細信息,在一個軟件包下載到本地之后看看用不用安裝(看一下唄).
    dpkg -i 手動安裝軟件包(這個命令并不能解決軟件包之前的依賴性問題),如果在安裝某一個軟件包的時候遇到了軟件依賴的問題,可以用apt-get -f install在解決信賴性這個問題.
    dpkg -r 卸載軟件包.不是完全的卸載,它的配置文件還存在.
    dpkg -P 全部卸載(但是還是不能解決軟件包的依賴性的問題)
    dpkg -reconfigure 重新配置


    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
    在軟件包名稱和描述中,搜索包含xxx的軟件包。

    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*
    保存

    dpkg -S
    在包數據庫中查找 ,并告訴你哪個包包含了這個文件。(注:查找的是事先已經安裝的包)

    --------------------------------------------
    Debian的軟件包管理工具命令不完全列表
    --------------------------------------------
    Debian系統中所有的包信息都在/var/lib/dpkg下.其中/var/lib/dpkg/info目錄中保存了各個軟件包的信息及管理文件.每個文件的作用如下:
    以 ".conffiles"     結尾的文件記錄軟件包的配置列表.
    以 ".list"          結尾的文件記錄了軟件包的文件列表,用戶可在文件當中找到軟件包文件的具體安裝位置.
    以 ".md5sums"       結尾的文件記錄了md5信息,用來進行包的驗證的.
    以 ".config"        結尾的文件是軟件包的安裝配置角本.
    以 ".postinst"      角本是完成Debian包解開之后的配置工作,通常用來執行所安裝軟件包相關的命令和服務的重新啟動.
    以 ".preinst"       角本在Debain解包之前運行,主要作用是是停止作用于即將升級的軟件包服務直到軟件包安裝或和升級完成.
    以 ".prerm"         腳本負責停止與軟件包關聯的daemon服務,在刪除軟件包關聯文件之前執行.
    以 ".postrm"        腳本負責修改軟件包鏈接或文件關聯,或刪除由它創建的文件.

    /var/lib/dpkg/available是軟件包的描述信息.
    包括當前系統中所有使用的Debian安裝源中所有的軟件包,還包括當前系統中已經安裝和未安裝的軟件包.
             
    1.dpkg包管理工具

    dpkg -r 卸載軟件包.不是完全的卸載,它的配置文件還存在.
    dpkg --info "軟件包名" --列出軟件包解包后的包名稱.
    dpkg -l     --列出當前系統中所有的包.可以和參數less一起使用在分屏查看.
    dpkg -l |grep -i "軟件包名" --查看系統中與"軟件包名"相關聯的包.
    dpkg -s   查詢已安裝的包的詳細信息. dpkg -L   查詢系統中已安裝的軟件包所安裝的位置.
    dpkg -S   查詢系統中某個文件屬于哪個軟件包.
    dpkg -I   查詢deb包的詳細信息,在一個軟件包下載到本地之后看看用不用安裝(看一下唄).
    dpkg -i 手動安裝軟件包(這個命令并不能解決軟件包之前的依賴性問題),如果在安裝某一個軟件包的時候遇到了軟件依賴的問題,可以用apt-get -f install在解決信賴性這個問題.
    dpkg -reconfigure 重新配置
    dpkg -P 全部卸載(但是還是不能解決軟件包的依賴性的問題)

     


    2. apt高級包管理工具
       (1)GTK圖形的"synaptic",這是APT的前端工具.
       (2)"aptitude",這也是APT的前端工具.
       用APT管理工具進行包的管理,可以有以下幾種方法做源:
       (1)拿安裝盤做源,方法如下:
            apt-cdrom ident        掃描光盤的信息
            apt-cdrom add          添加光盤源
       (2)這也是最常用的方法就是把源添加到/etc/apt/source.list中,之后更新列apt-get update


    APT管理工具常用命令
    apt-cache 加上不同的子命令和參數的使用可以實現查找,顯示軟件,包信息及包信賴關系等功能.
    apt-cache stats 顯示當前系統所有使用的Debain數據源的統計信息.
    apt-cache search +"包名",可以查找相關的軟件包.
    apt-cache show   +"包名",可以顯示指定軟件包的詳細信息.
    apt-cache depends +"包名",可以查找軟件包的依賴關系.
    apt-get upgrade   更新系統中所有的包到最新版
    apt-get install   安裝軟件包
    apt-get --reindtall install 重新安裝軟件包
    apt-get remove 卸載軟件包
    apt-get --purge remove 完全卸載軟件包
    apt-get clean 清除無用的軟件包
    在用命令apt-get install之前,是先將軟件包下載到/var/cache/apt/archives中,之后再進行安裝的.所以我們可以用apt-get clean清除/var/cache/apt/archives目錄中的軟件包.


    源碼包安裝
       apt-cache showsrc 查找看源碼包的文件信息(在下載之前)
       apt-get source 下載源碼包.
       apt-get build-dep +"包名" 構建源碼包的編譯環境.

     

    清除處于rc狀態的軟件包

    dpkg -l |grep ^rc|awk '{print $2}' |tr ["\n"] [" "] | sudo xargs dpkg -P -

    原文; http://qiuye.javaeye.com/blog/461394

    主站蜘蛛池模板: 免费一级毛片在线播放不收费| 男女作爱在线播放免费网站| 五月婷婷综合免费| 久久久久亚洲精品无码蜜桃| 波多野结衣免费一区视频| 亚洲日韩一页精品发布| 99视频免费在线观看| 亚洲精品中文字幕无码蜜桃| 成人无码a级毛片免费| 久久精品国产96精品亚洲| 久久精品一本到99热免费| 亚洲精品人成电影网| 99在线视频免费观看视频| 亚洲最大无码中文字幕| 国产jizzjizz视频全部免费| 国产亚洲漂亮白嫩美女在线| 亚洲精品成人区在线观看| 丝袜足液精子免费视频| 亚洲美女自拍视频| 毛片大全免费观看| 特级毛片在线大全免费播放| 亚洲色精品aⅴ一区区三区| 99re这里有免费视频精品 | 波多野结衣一区二区免费视频| 美女黄色毛片免费看| 亚洲精品白浆高清久久久久久| 久久久国产精品无码免费专区| 亚洲一区二区三区不卡在线播放| 亚洲精品线在线观看| 日韩av无码成人无码免费| 一级女性全黄久久生活片免费 | 亚洲精品夜夜夜妓女网| 99久久精品免费视频| 亚洲欧美日韩中文无线码 | 91av免费在线视频| 亚洲视频在线观看一区| 日本大片在线看黄a∨免费| 成人av片无码免费天天看| 亚洲一区二区三区在线网站| 亚洲AV永久无码精品一区二区国产 | 日韩精品免费一区二区三区|