Ubuntu包管理与Redhat的比较

关于包管理的内容感谢这篇文章给的启发Ubuntu的包管理方式简介(apt-get、dpkg、aptitude)

尤其是对于从RHEL转Ubuntu的管理员来说可以很快上手。

节选:

apt-cache search package    #搜索包(相当于yum list | grep pkg)
apt-cache show package      #显示包的相关信息,如说明、大小、版本等
apt-cache showpg package    #显示包的相关信息,如Reverse Depends(反向依赖)、依赖等
apt-get install package       #安装包
apt-get reinstall package     #重新安装包
apt-get -f install package    #强制安装
apt-get remove package        #删除包(只是删掉数据和可执行文件,不删除配置文件)
apt-get remove --purge package       #删除包,包括删除配置文件等
apt-get autoremove --purge package   #删除包及其依赖的软件包+配置文件等
apt-get update          #更新源
apt-get upgrade         #更新已安装的包
apt-get dist-upgrade    #升级系统
apt-get dselect-upgrade        #使用 dselect 升级
apt-cache depends package      #了解使用依赖
apt-cache rdepends package     #查看该包被哪些包依赖
apt-get build-dep package   #安装相关的编译环境
apt-get source package      #下载该包的源代码
apt-get clean && apt-get autoclean  #清理下载文件的存档 && 只清理过时的包
apt-get check             #检查是否有损坏的依赖
dpkg -S filename          #查找filename属于哪个软件包
apt-file search filename  #查找filename属于哪个软件包
apt-file list packagename #列出软件包的内容
apt-file update           #更新apt-file的数据库
dpkg -l      #列出当前系统中所有的包.可以和参数less一起使用在分屏查看(类似于rpm -qa)
dpkg -l |grep -i "pkg"   #查看系统中与"pkg"相关联的包(类似于rpm -qa | grep pkg)
dpkg -s pkg  #查询一个已安装的包的详细信息(类似于rpm -qi)
dpkg -L pkg  #查询一个已安装的软件包释放了哪些文件(类似于rpm -ql)
dpkg -S file     #查询系统中某个文件属于哪个软件包(类似于rpm -qf)
dpkg -c pkg.deb  #查询一个未安装的deb包将会释放哪些文件(类似于rpm -qpl)
dpkg -I pkg.deb  #查看一个未安装的deb包的详细信息(类似于rpm -qpi)
dpkg -i pkg.deb  #手动安装软件包(不能解决软依赖性问题,可以用apt-get -f install解决)
dpkg -r pkg      #卸载软件包(不是完全的卸载,它的配置文件还存在)
dpkg -P pkg      #全部卸载(不能解决依赖性的问题)
dpkg-reconfigure pkg     #重新配置
dpkg -x pkg.deb dir      #将一个deb包解开至dir目录
dpkg --pending --remove  #移除多余的软件

  

强制安装一个包(忽略依赖及其它问题)

dpkg -i pkg.deb --force-all    #可以参考dpkg --force-help

此外,Ubuntu还有另外一个包管理工具aptitude,以下是常见用法

aptitude update   #更新可用的包列表
aptitude upgrade  #升级可用的包
aptitude dist-upgrade     #将系统升级到新的发行版
aptitude install pkgname  #安装包
aptitude remove pkgname   #删除包
aptitude purge pkgname    #删除包及其配置文件
aptitude search string    #搜索包(相当于yum list | grep pkg,重要)
aptitude show pkgname     #显示包的详细信息 (相当于yum info pkg,重要)
aptitude clean            #删除下载的包文件
aptitude autoclean        #仅删除过期的包文件

aptitude与apt-get是互相补充的,有一些功能双方没有。

aptitude的优势: install, remove, reinstall(apt-get无此功能), show(apt-get无此功能), search(apt-get无此功能), hold(apt-get无此功能), unhold(apt-get无此功能)

apt-get的优势: source(aptitude无此功能), build-dep(低版本的aptitude没有build-dep功能)

apt-get与aptitude一样的地方:update, upgrade (apt-get upgrade=aptitude safe-upgrade, apt-get dist-upgrade=aptitude full-upgrgade)

此外,如果要搜索网络上的bzip2软件包,用apt-cache search bzip2,会搜索出很多杂乱的东西,而aptitude search bzip2结果则精确的多。因为apt-cache根据全文匹配(包含描述等),而aptitude是根据文件名来匹配。

时间: 2024-10-08 22:55:43

Ubuntu包管理与Redhat的比较的相关文章

Ubuntu包管理命令 dpkg、apt和aptitude

起初GNU/Linux系统中只有.tar.gz.用户 必须自己编译他们想使用的每一个程序.在Debian出现之後,人们认为有必要在系统 中添加一种机 制用来管理 安装在计算机上的软件包.人们将这套系统称为dpkg.至此着名的'package'首次在GNU/Linux上出现.不久之後红帽子也开始着 手建立自己的包管理系统 'rpm'. GNU/Linux的创造者们很快又陷入了新的窘境.他们希望通过一种快捷.实用而且高效的方式来安装软件包.这些软件包可以自动处理相互之间 的依赖关系,并且在升级过程中

ubuntu包管理命令apt和dpkg的用法

apt-get命令: apt-get是debian,ubuntu发行版的包管理工具,与红帽中的yum工具非常类似,适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索.安装.升级.卸载软件或操作系统.apt-get在安装包的时候是根据/etc/apt/sources.list文件中指定的源来寻找的安装包,你可以根据自己的需要对这个文件进行修改. apt-get命令一般需要root权限执行,所以一般跟着sudo命令. sudo apt-get install package 安装包

ubuntu包管理

查看某个文件属于哪个包dpkg -S add-apt-repository yum provides /usr/bin/curlrpm -qf /usr/bin/curl dpkgapt dpkg -S tcpdump dpkg -l file=rpm -qa|grep file dpkg -p tcpdumpdpkg -s tcpdump=rpm -qi tcpdump dpkg -L tcpdump=rpm -ql tcpdump apt list ibus* /usr/bin/apt-ke

ubuntu12.04软件中心打开错误和 ubuntu 包管理之“:E: 读错误 - read (5: 输入/输出错误) E: 无法解析或打开软件包的列表或是状态文件。”的解决

运行ubuntu软讲中心时打不开,老是崩溃,从终端也下载不了软件: 运行包管理的update或者search等等会报错: E: 读错误 - read (5: 输入/输出错误) E: 无法解析或打开软件包的列表或是状态文件. 英文是: E:Read error - read (5 Input/output error), E:The package lists or status file could not be parsed or opened. 刚开始是以为分区有错,所以用ubuntu的启动

ubuntu ->包管理 -> apt

apt-cache 该命令用于在apt的软件包缓存中搜索软件.简单来说,就是用于搜索软件包,收集软件包信息并用于搜索哪些可以在Ubuntu或Debian上安装的软件. 列出当前所有可用的软件包apt-cache pkgnames 查找软件包并列出该软件包的相关信息apt-cache search vsftpd 找出所有以vsftpd开头的软件包apt-cache pkgnames vsftp 查看软件包信息apt-cache show netcat查看软件包以来关系 apt-cahce show

ubuntu ->包管理 -> dpkg

dpkg命令的用法 dpkg 是Debian package的简写,为”Debian“ 操作系统 专门开发的套件管理系统,用于软件的安装,更新和移除. 所有源自"Debian"的Linux的发行版都使用 dpkg,   例如"Ubuntu" 阅读目录 安装软件 列出与该包先关联的文件 显示包的版本 移除软件(保留配置) 移除软件(不保留配置) 查找包的详细信息 列出deb包的内容 安装软件 命令:dpkg -i <.deb file name> 实例:d

linux软件包管理——rpm包管理

软件运行环境API:Application Programming Interface 应用程序接口(应用程序和操作系统之间的接口) 凡是符合该api标准的应用程序都可以在支持该api的操作系统上编译通过 程序源代码 --> 预处理 --> 编译 --> 汇编 --> 链接  静态编译:自身包含所有需要调用的库文件  动态编译:自身不包含,需要时调用共享库文件(.so文件)ABI:Application Binary Interface 应用程序二进制接口 规定了二进制文件的格式.

tar ,cpio打包解压. shell脚本for,while,until循环. rpm包管理,select循环菜单,函数function,yum

tar  tar -cf 路径+文件名字后续.tar  +路径 创建归档压缩 tar cf /testdir/etc.tar /etc/ tar cvf 可以查看解压过程 tar tvf 预览作用 tar xvf 解压文件 tar zcvf /testdir/etc2.tar.gz /etc/ 解压再压缩到指定路径,文件格式 tar jcvf cpio 复制 从或到文件 cpio 命令是通过重定向的方式将文件进行打包备份,还原恢复的工具,它可以解压以".cpio"或者".ta

20150910程序包管理

第一.程序包的定义 程序包管理: 内核功能:进程管理:内存管理,网络协议栈.驱动程序----- 应用程序 Linux常用包管理器.打包.包管理(安装.升级.卸载.查询.校验) deb:debian 早期程序包管理 rpm:redhat (redhat package manage---> (标准) RPM is Package Manager( 采用C语言实现.目前成为Linux包的标准) 第二.程序包组成 程序包组成4类: 二进程制程序(/bin,/sbin ,/usr/bin,/usr/sb