当前位置:操作系统 > Unix/Linux >>

DebianAPTHOWTO第四章几个非常有用的工具

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: <enter package name; defaults to equivs-dummy>

  Version: <enter version here; defaults to 1.0>

  Maintainer: <your name and email address; defaults to username>

  Pre-Depends: <packages>

  Depends: <packages>

  Recommends: <packages>

  Suggests: <package>

  Provides: <(virtual)package>

  Architecture: all

  Copyright: <copyright file; defaults to GPL2>

  Changelog: <changelog file; defaults to a generic changelog>

  Readme: <README.Debian file; defaults to a generic one>

  Extra-Files: <additional files for the doc directory, commaseperated>

  Description: <short description; defaults to some wise words>

  long description and info

  .

  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 commands to install the package into debian/tmp.

  touch install-stamp

  dh_testdir

  dh_testroot

  dh_installdocs

  dh_installchangelogs

  dh_compress

  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的用法很多,它甚至可以帮你为那些常用软件的底层关联包创建个性化版本。尽情发挥你的想像力吧,不过要小心。

  重要提示:管理文件(control files)的样例文件在/usr/share/doc/equivs/examples目录下。

  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

  ====================================

  APT HOWTO

  1.8.2 - November 2002

  Gustavo Noronha Silva kov@debian.org

  中文翻译:LYOO iamlyoo@163.com

  2003/01/25

  ====================================
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,