yum命令和rpm命令区别(yum命令大全)

yum命令和rpm命令区别(yum命令大全)nbsp Linux nbsp 红帽认证 nbsp IT 技术 nbsp 运维工程师 1000 人技术交流 nbsp 备注 公众号 更快通过 1 rpm 与 deb 的区别 有的系统只支持使用 rpm 包安装 有的只支持 deb 包安装 混乱安装会导致系统问题 关于 rpm 和 deb RPM Red Hat Package Manager

大家好,我是讯享网,很高兴认识大家。



  Linux | 红帽认证 | IT技术 | 运维工程师

👇1000人技术交流 备注【公众号】更快通过


讯享网

1. rpm与deb的区别

有的系统只支持使用rpm包安装,有的只支持deb包安装,混乱安装会导致系统问题。

关于rpm和deb

讯享网

RPM(Red Hat Package Manager),是基于Red hat的Linux Distribution的包管理系统,

同时也指rpm包本身,RPM用于rpm包的管理(诸如安装、卸载、升级等)

像Mandrake和SuSE这些基于RPM的发行版通常有自己特定的rpm包,

如果混合安装可能不会正常工作,而对于第三方发行的rpm包一般都能在基于RPM的系统上正常安装。

对于基于Debian的系统使用deb格式的包,有包转换工具使rpm与deb及其他文件之间互相转换(Alien Package Converter)

其安装和升级可用dpkg,不过它不能很方便地处理包的依赖关系,比较省事的有dselect和apt-get,

Ubunut是debian的变种, 其软件以deb包或者源文件的形式出现。

rpm包主要用于redhat及分支如redhat,centos,Fedora等,而deb包主要用于debian及分支如debian,ubuntu等。

rpm包相对来说版本不是最新的,但是比较稳定;而deb包则相对来说版本比较新,一般某个新软件出来说可能有deb包,但是使用过程中容易引起bugs。

2. deb软件包的格式和使用

2.1 deb软件包命令遵行如下约定

讯享网soft_ver-rev_arch.deb

如:pptview_8.0-5_i386.deb 中名字是pptview,版本号8.0,架构为i386平台。

2.2 dpkg命令

root@huxiping:# dpkg –helpUsage:dpkg -i|–install &lt;.deb file name&gt; … | -R|–recursivedpkg –unpack &lt;.deb file name&gt; … | -R|–recursivedpkg -A|–record-avail &lt;.deb file name&gt; … | -R|–recursivedpkg –configure … | -a|–pendingdpkg -r|–remove | -P|–purge … | -a|–pendingdpkg –get-selections [ …] get list of selections to stdoutdpkg –set-selections set package selections from stdindpkg –update-avail replace available packages infodpkg –merge-avail merge with info from filedpkg –clear-avail erase existing available infodpkg –forget-old-unavail forget uninstalled unavailable pkgsdpkg -s|–status … display package status detailsdpkg -p|–print-avail … display available version detailsdpkg -L|–listfiles … list files owned' by package(s)</span></span></code><code><span class="code-snippet_outer">dpkg -l|<span class="code-snippet__comment">--list [ ...] list packages concisely</span></span></code><code><span class="code-snippet_outer">dpkg -S|<span class="code-snippet__comment">--search ... find package(s) owning file(s)</span></span></code><code><span class="code-snippet_outer">dpkg -C|<span class="code-snippet__comment">--audit check for broken package(s)</span></span></code><code><span class="code-snippet_outer">dpkg <span class="code-snippet__comment">--print-architecture print dpkg architecture</span></span></code><code><span class="code-snippet_outer">dpkg <span class="code-snippet__comment">--compare-versions compare version numbers - see below</span></span></code><code><span class="code-snippet_outer">dpkg <span class="code-snippet__comment">--help | --version show this help / version number</span></span></code><code><span class="code-snippet_outer">dpkg <span class="code-snippet__comment">--force-help | -Dh|--debug=help help on forcing resp. debugging</span></span></code><code><span class="code-snippet_outer">dpkg <span class="code-snippet__comment">--licence print copyright licensing terms</span></span></code><code><span class="code-snippet_outer"><span class="code-snippet__keyword">Use</span> dpkg -b|<span class="code-snippet__comment">--build|-c|--contents|-e|--control|-I|--info|-f|--field|</span></span></code><code><span class="code-snippet_outer">-x|<span class="code-snippet__comment">--extract|-X|--vextract|--fsys-tarfile on archives (type dpkg-deb --help.)</span></span></code><code><span class="code-snippet_outer"><span class="code-snippet__keyword">For</span> internal <span class="code-snippet__keyword">use</span>: dpkg <span class="code-snippet__comment">--assert-support-predepends | --predep-package |</span></span></code><code><span class="code-snippet_outer"><span class="code-snippet__comment">--assert-working-epoch | --assert-long-filenames | --assert-multi-conrep</span></span></code><code><span class="code-snippet_outer">Options:</span></code><code><span class="code-snippet_outer"><span class="code-snippet__comment">--admindir= Use instead of /var/lib/dpkg</span></span></code><code><span class="code-snippet_outer"><span class="code-snippet__comment">--root= Install on alternative system rooted elsewhere</span></span></code><code><span class="code-snippet_outer"><span class="code-snippet__comment">--instdir= Change inst'n root without changing admin dir</span></span></code><code><span class="code-snippet_outer">-O|<span class="code-snippet__comment">--selected-only Skip packages not selected for install/upgrade</span></span></code><code><span class="code-snippet_outer">-E|<span class="code-snippet__comment">--skip-same-version Skip packages whose same version is installed</span></span></code><code><span class="code-snippet_outer">-G|<span class="code-snippet__comment">--refuse-downgrade Skip packages with earlier version than installed</span></span></code><code><span class="code-snippet_outer">-B|<span class="code-snippet__comment">--auto-deconfigure Install even if it would break some other package</span></span></code><code><span class="code-snippet_outer"><span class="code-snippet__comment">--no-debsig Do no try to verify package signatures</span></span></code><code><span class="code-snippet_outer"><span class="code-snippet__comment">--no-act|--dry-run|--simulate</span></span></code><code><span class="code-snippet_outer">Just say what we would <span class="code-snippet__keyword">do</span> - don<span class="code-snippet__string">'t do it</span></span></code><code><span class="code-snippet_outer">-D|--debug= Enable debugging - see -Dhelp or --debug=help</span></code><code><span class="code-snippet_outer">--status-fd Send status change updates to file descriptor</span></code><code><span class="code-snippet_outer">--log= Log status changes and actions to</span></code><code><span class="code-snippet_outer">--ignore-depends=,... Ignore dependencies involving</span></code><code><span class="code-snippet_outer">--force-... Override problems - see --force-help</span></code><code><span class="code-snippet_outer">--no-force-...|--refuse-... Stop when problems encountered</span></code><code><span class="code-snippet_outer">--abort-after Abort after encountering errors</span></code><code><span class="code-snippet_outer">Comparison operators for --compare-versions are:</span></code><code><span class="code-snippet_outer">lt le eq ne ge gt (treat empty version as earlier than any version);</span></code><code><span class="code-snippet_outer">lt-nl le-nl ge-nl gt-nl (treat empty version as later than any version);</span></code><code><span class="code-snippet_outer">&lt; &lt;&lt; &lt;= = &gt;= &gt;&gt; &gt; (only for compatibility with control file syntax).</span></code><code><span class="code-snippet_outer"><span class="code-snippet_outer">Usedselect’ or `aptitude’ for user-friendly package management.root@huxiping:#dpkg -i | –install xxx.deb 安装deb软件包dpkg -r | –remove xxx.deb 删除软件包dpkg -r -P | –purge xxx.deb 连同配置文件一起删除dpkg -I | -info xxx.deb 查看软件包信息dpkg -L xxx.deb 查看文件拷贝详情dpkg -l 查看系统中已安装软件包信息dpkg-reconfigure xxx 重新配置软件包

有些时候,您使用“dpkg”安装一个软件包,系统会提示您该软件包依赖其它软件包。这时,您先安装其它软件包,直到满足依赖关系为止。或者同时安装多个软件包。

讯享网dpkg -i aaa.deb bbb.deb ccc.deb 

2.3 apt-命令

ubuntu的apt-命令能够自动完成软件依赖,用的比较多的是apt-get,其实还有其他的用法可以挖掘一下的,比如下面

root@huxiping:# apt-apt-cache apt-config apt-ftparchive apt-keyapt-cdrom apt-extracttemplates apt-get apt-sortpkgsroot@huxiping:# apt-

如果一个软件依赖关系过于复杂,使用“dpkg”来安装它,并不是一个明智的选择,这个时候您就需要用到APT软件包管理系统。

APT可以自动的检查依赖关系,通过预设的方式来获得相关软件包,并自动安装配置它。事实上,在多数情况下,我们推荐您使用APT软件包管理系统。APT系统需要一个软件信息数据库和至少一个存放着大量deb包的软件仓库,我们称之为“源”。“源”可以是网络服务器,安装CD或者本地软件仓库。您需要修改“/etc/apt/sources.list”文件,使APT系统能够连接到“源”。

3. Unix和Linux的区别

Unix和Linux的主要区别在于它们的许可、历史、用户界面、硬件要求等。以下是相关介绍:

讯享网许可。Unix是一个封闭的商业操作系统,通常只提供给付费用户或特定的合作伙伴;Linux是一个开源的操作系统,遵循GPL协议,允许用户自由地访问、修改和分发其源代码。历史。Unix是最早的商业操作系统之一,由肯·汤普森和丹尼斯·里奇在1969年开发;Linux由芬兰学生林纳斯·托瓦兹于1991年基于Unix的思想和Minix操作系统创建。用户界面。Unix通常更倾向于使用命令行界面,而Linux则更加注重图形用户界面的发展。硬件要求。Unix大多与硬件配套,对硬件的要求较高;Linux可以运行在多种硬件平台上,对硬件的要求较低。应用程序兼容性。由于Unix是商业软件,某些商业软件可能只在其上运行,而Linux有许多开源的替代软件,使得应用程序兼容性较广。发行版本。Unix有不同的版本,每个版本都有自己的特点和功能;Linux有众多的发行版本,如Ubuntu、Red Hat、Debian等,这些发行版本在内核和软件包选择上有所不同。内核。Unix使用的内核是专有的,由相应的厂商开发和维护;Linux使用的内核是开源的,由全球的开发者共同维护和改进。文件系统。Unix和Linux都支持多种文件系统,但Linux支持的文件系统类型更多,如FAT32、NTFS和HFS+等,这使得Linux可以更好地与其他操作系统兼容。

总的来说,Linux是Unix的一种开源克隆版本,两者在许可、历史、用户界面、硬件要求等方面有显著的区别。

Unix和Linux之间的主要区别在于UNIX是一个多用户和多任务操作系统,而Linux是基于UNIX的操作系统。其他区别包括:

1.Linux是开源的,而Unix不是开源的。2.Linux是免费使用的,而Unix是授权的操作系统。3.Linux使用范围更广泛,从台式机,服务器,智能手机到大型机,而Unix主要用于服务器,工作站或PC。

什么是 UNIX?

该操作系统于1960年推出,最初是由贝尔实验室的Ken Thompson领导的一个单人项目。后来逐渐发展成为了一款流行的操作系统,也就是说Unix是专有的操作系统。它本身是一个功能强大的多任务操作系统,它的行为就像用户和计算机之间的桥梁。不仅如此它还能保护用户的数据和资源不会在没有授权的情况下被访问,因此比较受大学、实验室等地方的喜欢。

讯享网什么是 Linux?

Linux是一个开源操作系统,它是由赫尔辛基大学的Linus Torvalds于1991年推出。Unix确实是更好的操作系统,但Unix的价格比较昂贵。Linux的优势就在于免费、开源,任何人都可以使用和更改它。不仅如此,Linux的图形用户界面对于用户使用应用程序更加友好。它还包含一个功能强大的命令行界面 (CLI)用户可以在终端中键入命令以执行大量任务。

UNIX和Linux之间的关系

Linux是基于UNIX的操作系统。

定义

UNIX是一系列多任务,多用户计算机操作系统,源自原始的AT&T Unix。Linux是围绕Linux内核构建的自由和开源软件操作系统系列。

成本

就像前面说的,Unix是比较昂贵的一款操作系统, 而Linux是免费。

安装

安装Unix对于硬件的要求非常高,而Linux要求就很低,甚至比Windows都可能要低。

移植性

考虑到Unix的特性,它不能被移植到其他设备上。但Linux是嵌入式最广泛使用的操作系统之一,可移植性很好。

结论

UNIX和Linux之间的区别在于UNIX是多用户和多任务操作系统,而Linux是基于UNIX的操作系统。此外,UNIX主要用于高端服务器、实验室等,而Linux则被用于更贴近生活的台式机、笔记本等。


课程咨询添加:HCIE666CCIE

↑或者扫描上方二维码↑


你有什么想看的技术点和内容

可以在下方留言告诉小盟哦!



小讯
上一篇 2025-05-10 19:50
下一篇 2025-06-05 23:44

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/193470.html