【Linux】yum/apt-get/rpm/dpkg/brew之间的区别
目录
简略说明
apt-get 是德班系(Debian、Ubuntu等)的软件管理命令
yum 是红帽系(Redhat、Centos、Fedora等)的软件包管理命令
rpm 是红帽系(Redhat、Centos、Fedora等)的软件包管理命令,但rpm不会管理依赖关系。 yum会自动管理依赖关系,底层调用rpm管理软件包
详细说明
apt-get
apt-get是一条linux命令,适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统。
Yum
Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
yum的用法:https://blog.csdn.net/bandaoyu/article/details/108254624
Yum和apt-get的区别
[Linux] yum和apt-get用法及区别
一般来说著名的linux系统基本上分两大类:
1.RedHat系列:Redhat、Centos、Fedora等
2.Debian系列:Debian、Ubuntu等
RedHat 系列
1 常见的安装包格式 rpm包,安装rpm包的命令是“rpm -参数”
2 包管理工具 yum
3 支持tar包
Debian系列
1 常见的安装包格式 deb包,安装deb包的命令是“dpkg -参数”
2 包管理工具 apt-get
3 支持tar包
tar 只是一种压缩文件格式,所以,它只是把文件压缩打包而已。
rpm 相当于windows中的安装文件,它会自动处理软件包之间的依赖关系。
优缺点来说,rpm一般都是预先编译好的文件,它可能已经绑定到某种CPU或者发行版上面了。
tar一般包括编译脚本,你可以在你的环境下编译,所以具有通用性。
如果你的包不想开放源代码,你可以制作成rpm,如果开源,用tar更方便了。
tar一般都是源码打包的软件,需要自己解包,然后进行安装三部曲,./configure, make, make install. 来安装软件。
Yum和rpm的区别
https://blog.csdn.net/lxlmycsdnfree/article/details/80843197
yum 是rpm的前端,yum 最终会调用rpm。因为rpm不会自己处理依赖关系,所以当出现依赖问题时,需要人工去处理。yum 调用rpm当出现依赖问题时会自动处理依赖关系。
Homebrew
linux系统有个让人蛋疼的通病,软件包依赖,好在当前主流的两大发行版本都自带了解决方案,Red hat有yum,Ubuntu有apt-get
神马,你用mac os,不好意Mac os木有类似的东东,泪奔中几经折腾总算找到了第三方支持:Homebrew,Homebrew简称brew,是Mac OSX上的软件包管理工具,能在Mac中方便的安装软件或者卸载软件,可以说Homebrew就是mac下的apt-get、yum神器
linux命令好玩的命令
传送门好玩的linux命令 - Elite_Y - 博客园
就写一个sudo homebrew install sl
转自:http://blog.csdn.net/yi_an/article/details/54141766
rpm命令
rpm -i ###安装
rpm -v ###显示过程
rpm -h hash ###进度
rpm -e ###卸载
rpm -q ###查看
rpm -ql ###查看软件在系统中的安装文件路径
rpm -qlp ###查看未安装的软件包在系统中如果安装后产生文件的路径
rpm -p ###软件包
rpm -a ###所有
rpm -qf ###根据某个文件找出此文件属于哪个安装包
rpm -qc ###查看软件的配置文件名称
rpm -qd ###查看软件的说明
rpm --scritps ###查看脚本
rpm --nodeps ###安装软件忽略软件依赖
rpm --force ###强行安装软件
rpm --kv ###检测软件包是否被篡改
i -> 安装
v -> 啰嗦模式
h -> 进度条
e -> 卸载
q -> 查询
a -> 所有
l -> 显示rpm中的文件.
-ivh:安装显示安装进度--install--verbose--hash
-Uvh:升级软件包--Update;
-qpl:列出RPM软件包内的文件信息[Query Package list];
-qpi:列出RPM软件包的描述信息[Query Package install package(s)];
-qf:查找指定文件属于哪个RPM软件包[Query File];
-Va:校验所有的RPM软件包,查找丢失的文件[View Lost];
-e:删除包
rpm -q samba //查询程序是否安装
rpm -ivh /media/cdrom/RedHat/RPMS/samba-3.0.10-1.4E.i386.rpm //按路径安装并显示进度
rpm -ivh --relocate /=/opt/gaim gaim-1.3.0-1.fc4.i386.rpm //指定安装目录
rpm -ivh --test gaim-1.3.0-1.fc4.i386.rpm //用来检查依赖关系;并不是真正的安装;
rpm -Uvh --oldpackage gaim-1.3.0-1.fc4.i386.rpm //新版本降级为旧版本
rpm -qa | grep httpd #[搜索指定rpm包是否安装]--all搜索*httpd*
rpm -ql httpd #[搜索rpm包]--list所有文件安装目录
rpm -qpi Linux-1.4-6.i368.rpm #[查看rpm包]--query--package--install package信息
rpm -qpf Linux-1.4-6.i368.rpm #[查看rpm包]--file
rpm -qpR file.rpm #[查看包]依赖关系
rpm2cpio file.rpm |cpio -div #[抽出文件]
rpm -ivh file.rpm #[安装新的rpm]--install--verbose--hash
rpm -ivh
rpm -Uvh file.rpm #[升级一个rpm]--upgrade
rpm -e file.rpm #[删除一个rpm包]--erase
常用参数:
Install/Upgrade/Erase options:
复制代码
-i, --install install package(s)
-v, --verbose provide more detailed output
-h, --hash print hash marks as package installs (good with -v)
-e, --erase erase (uninstall) package
-U, --upgrade=<packagefile>+ upgrade package(s)
--replacepkge 无论软件包是否已被安装,都强行安装软件包
--test 安装测试,并不实际安装
--nodeps 忽略软件包的依赖关系强行安装
--force 忽略软件包及文件的冲突
Query options (with -q or --query):
-a, --all query/verify all packages
-p, --package query/verify a package file
-l, --list list files in package
-d, --docfiles list all documentation files
-f, --file query/verify package(s) owning file
https://www.cnblogs.com/xiaochaohuashengmi/archive/2011/10/08/2203153.html
# 覆盖安装,并自动卸载老版本
rpm -Uvh xxx.rpm --nodeps --force
# 覆盖安装,忽略package xxx is already installed错误
rpm -ivh --replacepkgs xxx.rpm
# 文件冲突,忽略报错:file filepath from install of xxx1 conflicts with file from package xxx2
rpm -ivh --replacefiles xxx.rpm
以为你是流过泪的人」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42427540/article/details/117035848