阅读更多
APT(Advanced Packaging Tool),是Debian Linux和基于Debian进行开发的Linux发行版(如Ubuntu)使用的高级包管理系统.APT最初的设计目的是处理Debian系统中的. deb软件包,但现在通过apt4rpm,已经可以在其他系统处理rpm软件包了.
APT通过自动获取软件包(从wan,lan,cdrom上)自动配置,自动编译和安装APT源.,他可以很大程度上简化在Linux系统上安装和删除软件的过程.
APT并不是某个具体的命令,而是由一组命令组成的包管理工具集,最常用的APT命令包括apt-get和apt-cache.
设置APT源
apt源的设置对Debian系统非常重要,这要正确设置了apt源,apt源等管理命令才能实现其强大的包管理功能.
设置apt源的文件位置在/etc/apt/的sources.list文件,典型的sources.list文件如下:
$cat /etc/apt/sources.list
deb http://debian.cn99.com/debian/ stable main
deb-src http://debian.cn99.com/debian/ stable main
deb http://security.debian.org/ stable/updates main
将Debian的安装光盘做为源
apt-cdrom命令用于扫描Debian安装光盘信息,也将安装光盘做为安装源添加到sources.list里.
在使用apt-cdrom命令前,确认当前主机的光盘驱动器中已经放入Debian Linux的安装光盘,并且当前的Debian系统能够正确的识别光驱设备.
apt-cdrom的命令格式为:apt-cdrom [选项] 命令
命令包括:
add: 增加一个CDROM
ident: 报告CDROM的验证信息
选项包括:
-h: 帮助
-d: 光盘挂载点
-r: 为一个已经识别的光盘改名字
-m: 无挂载
-f: 快速模式,不检查软件包文件
-a: 完整扫描模式
-c=?: 读取配置文件
-o=?: 设置任意的配置选项,例如-o dir::cache=/temp
扫描安装光盘信息
apt-cdrom ident 命令可以扫描Debian安装光盘的内容,并给出光盘的相应信息.该命令只显示安装光盘信息,而不修改sources.list文件.
添加安装做为安装源
apt-cdrom add 命令用于将当前光盘驱动器中的Debian安装光盘添加到sources.list文件源列表中做为系统安装源.
apt-setup设置软件源和apt代理
不管通过什么手段添加了apt的sources.list的安装源,都需要更新软件信息
apt-get update 更新软件信息
查询软件包信息
APT包管理的大多数信息查询功能都可以由apt-cache命令实现,通过apt-cache命令配合不同的子命令和参数的使用,可以实现查找,显示软件包信息及包依赖关系等功能.
显示数据源中的包的统计信息
apt-cache stats命令用于显示当前系统所使用的Debian数据源的统计信息,用户可以使用该命令查看数据源的相关统计信息.
按关键字查找软件包
apt-cache search 命令可以按关键字查找软件包,通常用于查询的关键字会使用软件包的名字或软件包的一部分.
例如:apt-cache search vim
显示软件包的详细信息
通过apt-cache search 命令查询到与关键字相关联的软件包后,可以使用apt-cache show命令显示指定软件包的详细信息.
例如:apt-cache show vim
查询软件包的依赖关系
通过apt包管理工具可以有效的解决软件包的安装,卸载过程中的包依赖关系问题,而当用户需要了解某个软件包依赖于其他哪些包时,可以使用apt-cache depends来查询包依赖关系.
例如:apt-cache depends vim
查询软件包反向依赖关系
apt-cache rdepend命令用于查询指定软件包的反向依赖关系,即那些其他的软件包需要依赖指定的软件包做为安装和运行的必须条件.
管理软件包
Debian linux 系统中的软件包管理功能通常可以使用apt-get 命令完成,常用功能包括:升级软件包,安装软件包,和卸载软件包.
升级系统中的软件包
当使用Debian一段时间过后,Debian工程师们会升级一些软件包的版本,而apt-get upgrade命令就是使本机的软件包版本和Debian升级后的软件包版本同步.
使用apt-get upgrade升级软件包之前,需要执行apt-get update 命令从当前系统使用的Debian数据源中更新软件包列表.
升级整个系统的版本
apt-get dist-upgrade与升级系统中的软件包不同的是,apt-get dist-upgrade是将整个系统都升级了过去,例如安装光盘使用的是stable 而我却想使用testing,怎么办呐~?
首先编辑sources.list 把stable的软件服务器指向testing
例如:
将deb ftp://ftp.nsysu.edu.tw/Linux/Debian/ stable main中的stable改为testing就会将软件服务器指向testing,这样在输入apt-get dist-upgrade 就会将整个版本升级为testing版.
安装软件包
Debian安装软件包是我使用过的发行版中最方便的(呵呵可能也是我孤陋寡闻),从下载到安装只是需要一条命令.最重要的就是不需要抓耳挠腮的在网上找你所需要的软件的下载位置而且自动解决了软件包依赖关系.
apt-get install 通过这条命令就可以轻松的完成安装过程.
apt-get install 命令可以按照sources.list文件中设置的Debian数据源地址自动下载所需要的软件包并进行安装.
重新安装指定的软件包
到系统中的某个软件包安装到系统中的文件受到破坏,或需要安装软件包的新版本时,用户可以使用apt-get --reinstall install命令重新安装指定软件包.
例如:apt-get --reinstall install lynx
卸载软件包
对于系统中安装的软件包,当用户不需要使用时,可以使用apt-get remove 命令对该软件包安装到系统中的文件进行删除,该软件包所使用的配置文件将不被删除,当用户需要在次安装该软件包时,可以使用保留下来的配置文件.
例如:apt-get remove lynx
apt-get remove 可以蛮好的解决软件包卸载过程中的包依赖关系问题,依赖于被卸载软件包的其他软件包将被一同卸载.
卸载软件包和配置文件(完全卸载)
apt-get --purge remove 命令可以从系统中完全卸载指定的软件包,即卸载软件包中文件的同时还删除该软件包所使用的配置文件,是从系统中删除某个软件包最彻底的方法.
例如:apt-gt --purge remove lynx
清除无用的安装包
apt-get install命令在安装软件包的过程中,会将软件包的安装文件(deb)包下载到目录/var/cache/apt/archives/中,然后在进行 安装.系统通过apt-get install 安装的软件包越多/var/cache/apt/archives/目录中保存的deb包就越多.
可以通过rm命令删除/var/cahce/apt/archives/目录中的软件包,但这是非常危险的.
建议使用apt-get clean命令安全有效的清理/var/cache/apt/archives/目录中的文件.
当然用移动设备保存一些/var/cahce/apt/archive/目录中的软件也不是错的选择,在linuxsir啊上看到,将这里面的文件保存起来后,在次安装系统可以将软件复制到相同的位置,输入安装命令可以免去下载之苦了,具体我也没试过,有时间弄下看看.
源码包管理
对于一般用户通常不需要源码包管理,使用apt-get就可以很好的安装.如果对软件包需要特殊的订制,就需要对源码包进行管理.
查看源码包文件信息
apt-cache showsrc命令用于查看源码包的信息,在下载源码包之前可以使用该命令获取指定的源码包信息.
例如:apt-cache showsrc lynx
获取源码包
apt-get source 命令用于下载指定软件包到当前目录中,该命令只需要软件包的名字就可以从网路上下载所需要的全部源码包文件.
由于源码包文件下载后需要保存在当前目录中,因此需要建立并进入临时目录.
然后进行下载.
例如:mkdir temp
cd temp
apg-get source lynx
构件源码包编译环境
每个软件源码包在进行编译之前都需要先构件该源码包的编译环境,即安装该源码包编译所需要的其他软件包.
通过apt-get build-deb命令可以为指定的源码包构件编译环境.
例如:apt-get build-deb lynx
进入系统之后可以安装些基本的软件
如果在安装系统时所选择的apt源太慢
也可以等到apt-spy测试之后在安装
当然这也是按需的
apt-get install vim 安装VIM编辑器
apt-get install gcc 安装GCCr
apt-get install rar 安装 rar
apt-get install make 安装 make
apt-get install modconf 安装硬件管理模块工具
apt-get install rcconf 安装启动管理模块工具
tzconfig 修改系统默认时区