apt - how to


 http://211.92.88.40/~lyoo/document/apt_howto_zh/ch1.html

2.1 /etc/apt/sources.list文件

作为操作的一部分,APT使用一个文件列出可获得软件包的镜像站点地址,这个文件就是/etc/apt/sources.list.

/etc/apt/sources.list文件可包含多种类型的地址,APT知道如何处理这些不同的地址类型: httpftpfile(本地文件,例如:一个加载了ISO9600文件系统的目录)和 ssh

别忘了在修改完/etc/apt/sources.list文件后运行apt-get update使更改生效。你必须完成这个步骤,以便让APT从你指定的地方获得新的软件包列表。

2.2 如何在本地使用APT

有时你硬盘上有许多软件包,你会希望通过APT来安装它们,以便让它去处理软件包间复杂的依赖关系。

想这么做,就建一个目录,将所有你想要安装的.deb文件放入其中。例如:

# mkdir /root/debs

你可以使用一个重载文件(override file)直接去修改软件包中管理文件中的定义(definitions),使之符合你的软件储藏库管理规则,在这个重载文件中,你可能希望定义一些选项来重载那些软件包的定义,如下所示:

     package priority section

package是软件包的名称,priority有三个级别low,medium或high,section是软件包所属的section,重载文件可任意命名,文件名将在接下来的步骤中做为参数传递给dpkg-scanpackages。如果你不想写重载文件,只需在调用dpkg-scanpackages时使用/dev/null就行了。

仍是在/root目录下执行:

     # dpkg-scanpackages debs file | gzip > debs/Packages.gz

在上述的命令行中,file重载文件,命令生成一个Packages.gz文件,它包含了APT所需的各种软件包信息,要使用这些软件包,在sources.list中加上:

     deb file:/root debs/

完成了上面的工作,就可以通常那样使用APT命令操作这些软件包了。你可以使用同样的方法生成一个源码库,但请记住你需要将.orig.tar.gz文件、.dsc文件和.diff.gz文件包含在目录中,要生成Source.gz文件而不是Packages.gz文件。所使用的命令也不相同,要使用dpkg-scansources,命令如下所示:

     # dpkg-scansources debs | gzip > debs/Sources.gz

注意dpkg-scansource不需要重载文件,在sources.list中的引用法是:

     deb-src file:/root debs/

2.3 选择最佳镜像发布站点加入source.list文件

一个新用户经常问到的问题:“该将哪个Debian镜像发布站点加入source.list文件?”。有很多方法来选择镜像发布站点,专家们可能会写一个脚本去测试不同站点的ping time,不过有一个现成的程序可以帮你:netselect

安装netselect:

# apt-get install netselect

不带参数运行它时会显示它的帮助信息。运行它时加上以空格分隔的镜像主机列表,它会返回一个分值和列表中的一个主机名。这个分值通过评估ping time和hops number(一个网络请求报文到达目标主机所经过的转发主机的个数)得出,它与镜像站点预计下载速度成反比(数值越小越好)。返回的主机名是主机列表中得分最低的那个(查看列表中所以主机的得分情况可使用-vv选项)。看出下的例子:

# netselect ftp.debian.org http.us.debian.org ftp.at.debian.org download.unesp.br ftp.debian.org.br 365 ftp.debian.org.br #

它表示,在netselect后列出的所有主机中,ftp.debian.org.br是下载速度最快的主机,其得分为365。(注意!!这是在我电脑上的测试结果,不同的网络节点网速会大不相同,所以这个分值不一定适用于其它电脑)

现在将netselect找到的连接速度最快的镜像站点加入/etc/apt/sources.list文件

注意:镜像站点列表通常包含在文件http://www.debian.org/mirror/mirrors_full.

从0.3版开始,netselect软件包包含了netselect-apt脚本,它使上述操作自动完成。只需将发布目录树做为参数(默认为stable)输入,sources.list文件就会生成速度最快的main和non-US镜像站点列表,并保存在当前目录下。下面的例子生成一个包含stable发布镜像站点列表的sources.list

# ls sources.list ls: sources.list: File or directory not found
 # netselect-apt stable (...)
# ls -l sources.list sources.list
#

记住:sources.list生成在当前目录下,必须将其移至/etc/apt目录。 directory.

2.4 将CD-ROM加入source.list文件

如果你用APT从CD-ROM上安装及升级软件包,你可以将它加入到sources.list文件中。完成该操作,可使用apt-cdrom程序:

     # apt-cdrom add

将Debian光盘放入光驱,它将加载光盘目录,并在光盘上查找软件包信息。如果你的光驱需要额外设置,可使用以下选项:

     -h           - program help
-d directory - CD-ROM mount point
-r - Rename a recognized CD-ROM
-m - No mounting
-f - Fast mode, don't check package files
-a - Thorough scan mode

例如:

     # apt-cdrom -d /home/kov/mycdrom add

你还可以扫描一张光盘,但不将其加入列表:

     # apt-cdrom ident

注意,只有当你在系统的/etc/fstab中正确设置了光驱后,该程序才会工作。

3.1 更新可用软件包列表

软件包管理系统使用一个私有数据库跟踪列表中软件包的当前状态:已安装、未安装或可安装。apt-get通过该数据库来确定如何安装用户想用的软件包以及正常运行软件包所必须的其它关联包。

你可以使用apt-get update来更新数据库列表。这个命令将扫描/etc/apt/sources.list文件中所指路径中的软件包列表文件。

定时运行这个程序是个好主意,它将使你和你的系统获得最新的软件包更新和安全更新等信息.

下列apt-get选项也许对你有用

     -h  This help text.
-d Download only - do NOT install or unpack archives
-f Attempt to continue if the integrity check fails
-s No-act. Perform ordering simulation
-y Assume Yes to all queries and do not prompt

你可以用apt-get install
package/distribution
来安装指定发布版中的软件包,或者用apt-get install package=version,如下所示:
# apt-get install nautilus/unstable

它将为你安装“unstable”发布版中的nautilus软件包,即使你当前运行的是“stable”版本。命令中“distribution”选项的可用参数值为:stabletestingunstable

在处理关联问题时,你可能更乐意使用-t开关来选择目标发布版,让apt-get帮你考虑使用哪个发布版。

删除软件包只需输入:apt-get remove package remove package

# apt-get install nautilus/unstable

它将为你安装“unstable”发布版中的nautilus软件包,即使你当前运行的是“stable”版本。命令中“distribution”选项的可用参数值为:stabletestingunstable

在处理关联问题时,你可能更乐意使用 -t开关来选择目标发布版,让 apt-get帮你考虑使用哪个发布版
 -u Show a list of upgraded packages as well
要删除软件包只需输入: apt-get remove package。如下所示
     # apt-get remove gnome-panel

上例中运行apt-get会删除指定软件包以及与之有依赖关系的软件包,但它们的配置文件,如果有的话,会完好无损地保留在系统里。如果想彻底删除这些包及其配置文件,运行:

# apt-get --purge remove gnome-panel

更新软件包 apt-get upgrade

在运行该命令时加上 -u选项很有用。这个选项让APT显示完整的可更新软件包列表。不加这个选项,你就只能盲目地更新。APT会下载每个软件包的最新更新版本,然后以合理的次序安装它们。注意在运行该命令前应先运行 apt-get update更新数据库.

移除无用软件包文件:apt-get clean and autoclean

apt-get clean将删除/var/cache/apt/archives/目录和/var/cache/apt/archives/partial/目录下的所有文件,除了被锁定的文件。这样以来,当你需要再次安装某个软件包时,APT将重新下载它。

apt-get autoclean仅删除那些不需要再次下载的文件。

4.3 如何知晓哪些软件包可以升级 $ apt-show-versions -u

apt-show-versions工具可以告诉你系统中哪些包可以更新以及其它一些有用的信息。-u选项可以显示可更新软件包列表.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值