天天看点

关于Ubuntu下apt的一些用法及和yum的比较

fedora和red hat有yum安装软件,ubuntu有apt工具。

apt简单的来说,就是给ubuntu安装软件的一种命令方式。

/etc/apt/sources.list

设置软件包的获取来源

/etc/apt/apt.conf

apt配置文件

/etc/apt/apt.conf.d/

apt的零碎配置文件

/etc/apt/preferences

版本参数

/var/cache/apt/archives/

存放已经下载的软件包

/var/cache/apt/archives/partial

存放正在下载的软件包

/var/lib/apt/lists/

存放已经下载的软件包详细信息

/var/lib/apt/lists/partial/

存放正在下载的软件包详细信息

update

更新软件包列表

upgrade

升级系统中的所有软件包

install

安装软件包

remove

卸载软件包

autoremove

仅删除不需要再次下载的软件包

purge

彻底删除软件包(包括配置文件)

source

下载源代码

build-dep

自动下载安装编译某个软件所需要的软件包

dist-upgrade

升级整个发行版

dselect-upgrade

安装dselect的选择进行升级

clean

删除本地缓存的所有升级包

autoclean

删除本地缓存中无用的软件包

check

检查是否存在有问题的依赖关系

例:$ sudo apt-get install php5-mysql apache2

$ sudo apt-get update && sudo apt-get upgrade

-d,--download-only

仅下载,不安装

-f,--fix-broken

修复依赖问题(用于install和remove子命令)

-m,--ignore-missing,--fix-missing

忽略缺失的软件包。遇到无法下载的软件包,自动忽略

--no-download

禁止下载软件包。与-m配合,可以使apt只使用已经下载的软件包

-q,--quiet

静默模式,输出的信息适合做日志

-s,--simulate,--just-print

模拟测试,不做出实际操作,不改变系统

-y,--yes,--assume-yes

在系统提问时,自动应答yes

-u,--show-upgraded

显示已升级的软件包

-v,--verbose-versions

显示已安装和已升级的软件包的完整版本号

-b,--compile,--build

在源码包下载完成后进行编译

--ignore-hold

忽略被保留的软件包

--no-upgrade

不要升级软件包

--force-yes

强制回答yes

--print-uris

仅答应软件包地址,不安装

--purge

彻底删除,包括配置文件

--reinstall

重新安装软件包

功能:搜索某个软件包的名字或显示某个软件包的详细信息

搜索mysql的软件包

$ apt-cache search mysql

查看ssh软件包的详细版本号

$ apt-cache show ssh

任务

red hat、fedora

ubuntu

基本信息

软件包后缀

*.rpm

*.deb

软件源配置文件

/etc/yum.conf

安装、删除、升级软件包

每次运行yum时自动执行

apt-get update

从软件仓库软件安装软件

yum install package

apt-get install package

安装一个已下载的软件包

yum install pkg.rpm

rpm -i pkg.rpm

dpkg -i pkg.deb

pkg --install pkg.deb

删除软件包

rpm -e package

apt-get remove package

软件包升级检查/测试

yum check-update

apt-get -s upgrade

apt-get -s dist-upgrade

升级软件包

yum update

rpm -uvh [args]

apt-get upgrade

升级整个系统

yum upgrade

apt-get dist-upgrade

软件包信息

获取某软件包的信息

yum search package

apt-cache show package

获取所有软件包的信息

yum list available

apt-cache dumpavail

显示所有已安装的软件

yum list installed

rpm -qa

dpkg -l

dpkg --list

获取某个已安装软件包的信息

yum info package

rpm -qi package

dpkg --status package

列出某个已安装软件包所包含的文件列表

rpm -ql package

列出某个已安装软件包所包含的文档

rpm -qd package

列出某个已安装软件包所包含的配置文件

rpm -qc package

显示某个软件包所依赖的软件包列表

rpm -qr package

apt-cache depends package

显示某个软件包的反向依赖关系

rpm -q -whatrequires [args]

apt-cache rdepends package

软件包文件信息

获取某个软件包文件的信息

rpm -qpi pkg.rpm

dpkg --info pkg.deb

获取某个软件包文件所包含的文件列表

rpm -qpl pkg.rpm

dpkg --contents pkg.deb

获取某个软件包文件所包含的文档

rpm -qpd pkg.rpm

获取某个软件包文件所包含的配置文件

rpm -qpc pkg.rpm

软件包解压

rpm2cpio pkg.rpm | cpio -vid

dpkg-deb --extract pkg.deb

搜索某个文件是由哪个软件包安装的

rpm -qf /file/name

dpkg -s /file/name

dpkg --search /file/name

搜索所有提供某个文件的软件包

yum provides /file/name

apt-file search /file/name

杂项

显示本地软件包缓存的状态

apt-cache stats

校验所有已安装的软件包

rpm -va

debsums

删除本地缓存的所有软件包

yum clean packages

apt-get clean

仅删除本地缓存中过时的软件包

apt-get autoclean

删除所有软件包信息

yum clean headers

apt-file purge

继续阅读