-------------------------------------
一、APT的使用(Ubuntu Linux套裝軟體管理工具一)
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
的用法
apt-get install <package>
下載 <package> 以及所有倚賴的包裹,同時進行包裹的安裝或升級.如果某個包裹被設置了 hold (停止標誌,就會被擱在一邊(即不會被升級).更多 hold 細節請看下面.

apt-get remove [--purge] <package>
移除 <package> 以及任何倚賴這個包裹的其它包裹.--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 <pattern>
搜索滿足 <pattern> 的包裹和描述.

apt-cache show <package>
顯示 <package> 的完整的描述.

apt-cache showpkg <package>
顯示 <package> 許多細節,以及和其它包裹的關係.

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

-------------------------------------

二、 DPKG用法(Ubuntu Linux套裝軟體管理工具二)
dpkg -i <package.deb>
安裝一個 Debian 包裹檔;如你手動下載的文件.

dpkg -c <package.deb>
列出 <package.deb> 的內容.

dpkg -I <package.deb>
<package.deb> 中提取包裹資訊.

dpkg -r <package>
移除一個已安裝的包裹.

dpkg -P <package>
完全清除一個已安裝的包裹. remove 不同的是, remove 只是刪掉資料和可執行
, purge 另外還刪除所有的配製檔.

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

dpkg -s <package>
顯示已安裝包裹的資訊.同時請看 apt-cache 顯示 Debian 存檔中的包裹資訊,
dpkg -I 來顯示從一個
.deb
檔中提取的包裹資訊.

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

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

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

dpkg --get-selections "<package>"
取的 <package> 的當前狀態 (命令列方式)

支持萬用字元,:
Debian:~# dpkg --get-selections *wine*

備註:

-------------------------------------例如:
大家現在用的都是 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....&threadid=22601

dpkg -S <file>
在包裹資料庫中查找 <file>,並告訴你哪個包裹包含了這個檔.(:查找的是事
先已經安裝的包裹)

從源碼建立deb packages

apt-get source [-b] <package>
下載一個源碼的包並解開。
你必須在你的/etc/apt/sources.list檔裡寫入一條 deb-src 的記錄才能完成這
項工作。
如果你輸入了一個-b參數,並且是以root的身份,deb包會被自動的創建。

apt-get build-dep <package>
自動下載並安裝通過源碼創建 <package> 時需要的包。
只有apt 0.5以上版本才支持這個功能。
現在woody和以上版本包含了這個功能。
如果你使有一個舊版本的apt,查找依賴性最簡單的方法是查看源碼包中
debian/control
這個檔,
注意這個路徑是相對的,是包內的路徑。

普通的用法,結合 apt-get source -b,例子 (as root)

apt-get build-dep <package>
apt-get source -b <package>

會下載源碼包,建立依賴性,然後嘗試編譯源碼。

dpkg-source -x <package.dsc>
如果你手工下載了一個程式的源碼包,其中包含了幾個類
.orig.tar.gz , .dsc ,
以及 .diff.gz 之類的檔,
那麼你就可以對 .dsc 檔使用這個命令來 unpack 源碼包。

dpkg-buildpackage
Debian 源碼樹建立一個deb包。你必須在source tree的主目錄才能生效。例
如:

dpkg-buildpackage -rfakeroot -uc -b

這裡 '-rfakeroot' 指定命令使用 fakeroot 程式來模仿 root 許可權 (來實現所有
(ownership)目的)
'-uc'
表示 "Don't cryptographically sign the changelog", '-b' 代表只建立
二進位包.

debuild
一個快速打包腳本類似 dpkg-buildpackage ,能自動的識別是否使用 fakeroot,
同時為你運行 lintian gpg

修正倚賴關係

dpkg --configure --pending
如果dpkgapt-get install upgrade dist-uptradeing 的時候出錯退出,
嘗試使用此命令來配置已經unpack的包。
然後再用 apt-get install upgrade, or dist-upgrade -f
然後再用 apt-get install, upgrade, or dist-upgrade.

可能會重複多次,這樣通常可以解決大多數的依賴性問題。
(
同時,如果提示由於某種原因需要某個特定的包裹,你可以常識安裝或卸載這個包)

apt-get install -f
apt-get upgrade -f
apt-get dist-upgrade -f
嘗試修正上述過程中出現依賴性關係
注意 apt-get install -f 不需要 <package> 作為參數。



-------------------------------------
apt-cdrom -d /media/cdrom0 add 載入光碟機,

/dev/hdc /cdrom iso9660 user,noauto 0 0
用編輯器修改一下存檔,重啟,應該可以了。
然後,apt-cdrom -d /cdrom add
apt-get install (
你要裝的軟體名:《例如gcc)
gcc
相關的軟體會自動裝入。
昨天,剛試過,很爽。
注意:apt不會認你手動掛載的光碟機,如果fstab中設置不對apt不會正常工作。

apt-cdrom -d /media/cdrom0 add 載入光碟機,
需要使用#mkdir /media/cdrom0 否則會錯誤提示說無法讀取檔案系統掛載
/media/cdrom的狀態 -stat(2 沒有那個檔或目錄)”
-------------------------------------

arrow
arrow
    文章標籤
    Ubuntu 11.10
    全站熱搜

    mitblog 發表在 痞客邦 留言(0) 人氣()