APT HOWTO 第四章 幾個非常有用的工具

2021-03-31 08:57:00 字數 2667 閱讀 3243

apt howto

第四章 幾個非常有用的工具

4.1 如何安裝本地編譯的軟體包:equivs

***********************************=

有時,使用者想使用某些軟體的特殊版本,它們只以源**的形式存在,沒有現成的debian軟體包。軟體包管理系統在處理這類事務時可能會出問題。假設你想編譯新版本的郵件伺服器,編譯、安裝一切正常,然而,軟體包管理系統並不知道你在系統中安裝了自己編譯的東西,在debian中許多基於mta(mail transport agent 郵件傳輸**)的軟體包也不知道這些。

現在是equivs登台的時候了。用它來安裝軟體包,它所做的工作就是建立乙個新的空軟體包來實現關聯,讓軟體包管理系統相信關聯實現了。

在我們開始以前,我必須提醒你,編譯某個軟體最安全的方法是對該軟體現有的debian軟體包進行修改後重新編譯,如果你並不知道你正在幹什麼,勸你不要使用equivs替換關聯包。更多資訊請參閱 第六章 原始碼包操作。

繼續上面的例子,你安裝好了新編譯的postfix,接下來打算安裝mutt,突然你發現mutt想與另乙個mta建立關聯,而你想讓它使用你剛安裝的新mta。

轉到某個目錄(例如/tmp)執行:

# equivs-control name

將name替換為你建立的管理檔案(control file),管理檔案按如下格式建立:

section: misc

priority: optional

standards-version: 3.0.1

package:

version:

maintainer:

pre-depends:

depends:

re***mends:

suggests:

provides: <(virtual)package>

architecture: all

.second paragraph

section: misc

priority: optional

standards-version: 3.0.1

package: mta-local

provides: mail-transport-agent

行了,就是這樣。mutt要與mail-transport-agent關聯,這是所有mta共用的乙個虛擬包(virtual package),我可以簡單地將這個軟體包命名為mail-transport-agent,不過我更願意使用系統的虛擬包方案,使用provides 選項。

現在你可以開始建立軟體包了:

# equivs-build name

dh_testdir

touch build-stamp

dh_testdir

dh_testroot

dh_clean -k

# add here ***mands to install the package into debian/tmp.

touch install-stamp

dh_testdir

dh_testroot

dh_installdocs

dh_installchangelogs

dh_***press

dh_fixperms

dh_installdeb

dh_gencontrol

dh_md5sums

dh_builddeb

dpkg-deb: building package `name' in `../name_1.0_all.deb'.

the package has been created.

attention, the package has been created in the current directory,

然後安裝這個新建立的.deb。

眾所周知,equivs的用法很多,它甚至可以幫你為那些常用軟體的底層關聯包建立個性化版本。盡情發揮你的想像力吧,不過要小心。

4.2 移除無用的locale files檔案:localepurge

****************************************===

許多debian使用者僅在固定地區使用debian。例如,在巴西的debian使用者,通常使用pt_br地區配置檔案(locale file)而不會關心es地區配置檔案。

對於這類使用者而言localepurge是乙個非常有用的工具,你可以僅保留你當前所用的地區配置檔案,刪除其它無用的檔案,從而釋放大量硬碟空間。執行apt-get install localepurge就行了。

它配置起來非常容易,debconf的提問將引導使用者一步一步完成設定。在回答第乙個問題時請務必謹慎,如果回答錯了,系統可能刪掉所有的地區配置檔案,包括你正在使用的這個。復原它們的唯一方法就是重灌那些軟體包。

4.3 如何知曉哪些軟體包可以公升級

******************************

apt-show-versions工具可以告訴你系統中哪些包可以更新以及其它一些有用的資訊。-u選項可以顯示可更新軟體包列表:

$ apt-show-versions -u

libeel0/unstable upgradeable from 1.0.2-5 to 1.0.2-7

libeel-data/unstable upgradeable from 1.0.2-5 to 1.0.2-7

第四章 繼承

一 為什麼要繼承 在物件導向中我們將具有很多重複內容的類中的內容提取出來,寫成乙個單獨的類 其他類只需要繼承就能取得這些功能,同時可以在自己類中寫入獨特的自定義方法 二 繼承語法 inte ce circle nsobject 繼承是在介面中定義的 冒號後的類名是要整合的類,nsobject 是co...

第四章 物件

三個特性 身份 型別 值 每個物件都有唯一的身份來標識自己,使用內建函式id 得到。例子 usr bin env python coding utf 8 a 32 print a b a print id a id b 結果 d python27 python.exe e workp python ...

第四章 其他

sizeof和strlen 區別sizeof以位元組為單位給出資料的大小,strlen 函式以字元為單位給出字串的長度。使用strlen 函式要加 include標頭檔案。sizeof計算字元時會將標誌字串結束的不可見的空字元計算在內。定義符號常量 方法一 define name value 優點 ...