Linux中yum、rpm、apt-get、wget的区别,yum、rpm、apt-get常用命令,CentOS、Ubuntu中安装wget

简介: Linux中yum、rpm、apt-get、wget的区别,yum、rpm、apt-get常用命令,CentOS、Ubuntu中安装wget

文章目录

一、常见Linux发行版本

二、Linux中yum、rpm、apt-get、wget的区别

  • 2.1 yum
  • 2.2 rpm
  • 2.3 apt-get
  • 2.4 wget
  • 2.5 总结

三、CentOS中yum的作用

  • 3.1 yum清空缓存列表
  • 3.2 yum显示信息
  • 3.3 yum搜索、查看
  • 3.4 yum安装
  • 3.5 yum删除、卸载程序
  • 3.6 yum包的升级、降级

四、Ubuntu中apt-get

五、CentOS、Ubuntu下安装、卸载wget

  • 5.1 CentOS安装wget
  • 5.2 Ubuntu安装wget
  • 5.3 补充

对于初学Linux的人来说,太多的Linux内核版本会让人不知所措,并且刚开始需要我们下载各种编译器、软件包去调试我们的环境。这个时候肯定就需要我们使用到安装下载的工具。所以这里就来一起学习Linux中yum、wget、apt-get的用法和区别吧

Linux系统分为内核版、发行版(Ubuntu/RedHat收费/CentOS-RedHat的社区版、免费)。

  • yum是redhat、centos下的一个软件安装方式,它是基于RedHat的
  • ap-get是ubuntu下的一个软件安装方式,它是基于debain
  • wget不是安装方式,它是一种下载软件、类似于迅雷,如果要下载一个软件 我们可以直接wget 下载地址

Linux软件安装的4种安装方式

  • 二进制发布包安装(软件已经针对具体平台编译打包发布 只需解压、修改配置即可)
  • rpm安装(软件已经按照redhat的包管理规范进行打包 使用rpm命令进行安装 不能自行解决库依赖问题 类似于window控制面板中的程序和功能,rpm -qa查看当前系统中安装的所有软件,rpm -qa | grep mysql )
  • yum安装(一种在线软件安装方式 本质上还是rpm安装 自动下载安装包并安装 安装过程中自动解决库依赖问题)
  • 源码编译安装(软件以源码工程的形式发布 需要自己编译打包)

一、常见Linux发行版本

一般来说著名的linux系统基本上分两大类:

  • RedHat系列:Redhat、Centos、Fedora等
  • Debian系列:Debian、Ubuntu等
分类 包管理工具 常见安装包格式
基于RedHat Red Hat Enterprise Linux、Centos、Fedora、Oracle Linux yum rpm包。安装rpm包的命令是“rpm -参数”,支持tar包
基于Debian Debian、Ubuntu、Linux Mint、sidux、Google Chrome OS apt-get deb包。安装deb包的命令是“dpkg -参数”,支持tar包

可以看到我们常用的CentOSUtuntu,它们一个是基于Red Hat、一个是基于Debian的。

  • CentOS(Community Enterprise Operating System,中文意思是社区企业操作系统)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS完全开源。
  • Ubuntu是一个以桌面应用为主的Linux操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu"一词,意思是“人性”“我的存在是因为大家的存在",是非洲传统的一种价值观。Ubuntu基于Debian发行版和Gnome桌面环境,而从11.04版起,Ubuntu发行版放弃了Gnome桌面环境,改为Unity。从前人们认为Linux难以安装、难以使用,在Ubuntu出现后这些都成为了历史。Ubuntu也拥有庞大的社区力量,用户可以方便地从社区获得帮助。

Linux系统如何查看版本信息

  • 查看当前操作系统内核信息:uname -a
  • 查看当前操作系统版本信息:cat /proc/version
  • 查看当前操作系统发行版信息: cat /etc/redhat-release 或 cat /etc/issue
  • 查看cpu相关信息,包括型号、主频、内核信息等:cat /proc/cpuinfo
  • 列出所有版本信息:lsb_release -a
uname -a              #查看当前操作系统内核信息
cat /proc/version     #查看当前操作系统版本信息

#查看当前操作系统发行版信息
cat /etc/redhat-release
cat /etc/issue 或   

cat /proc/cpuinfo                          #查看cpu相关信息,包括型号、主频、内核信息等
lsb_release -a                             #列出所有版本信息。出现command not found说明没安装lsb_realease,可以执行命令yum install -y redhat-lsb安装lsb_realease,在线安装完成 #yum install -y redhat-lsb 以后,再次查看

二、Linux中yum、rpm、apt-get、wget的区别

yum、rpm、apt-get、wget在Linux系统中扮演着不同的角色,它们各自具有独特的功能和用途。

2.1 yum

  • 定义:yum是Red Hat系列(包括RedHat、CentOS、Fedora等)下基于rpm包的软件包管理器,全称为Yellow dog Updater, Modified。
  • 功能:基于RPM包管理,能够自动从指定的服务器下载RPM包并安装,同时自动处理软件包之间的依赖关系,确保所有必要的依赖包都被安装。
  • 优点:简化了软件包的安装、更新、删除等管理操作,用户无需手动下载和安装依赖包。

yum相关命令 具体见第三节。

rpm与yum区别

  • RMP 是 LINUX 下的一种软件的可执行程序,你只要安装它就可以了。这种软件安装包通常是一个RPM包(Redhat Linux Packet Manager,就是Redhat的包管理器,底层管理工具),后缀是.rpm,适用于所有环境。在安装软件时只会安装指定的软件,而不会安装依赖性文件,若所安装软件无依赖性文件或依赖性文件被解决,则可以安装,否则会报错。需要手工解决软件包的依赖关系,很复杂。

  • YUM(Yellow dog Updater, Modified)基于 rpm,增加了自动解决依赖关系的方案,是上层管理工具,是rpm的前端程序,会自动解决依赖性。yum 在服务器端(yum仓库)存有所有的 RPM 包,并将各个包之间的依赖关系记录在文件中,当使用 yum 安装 RPM 包时,yum 会先从服务器端(仓库 可为本地仓库,也可为HTTP、FTP、nfs形式使用的集中地、统一的网络仓库)下载包的依赖性文件,通过分析此文件从服务器端一次性下载所有相关的 RPM 包并进行安装。

    其特点:自动解决依赖关系;可以对rpm进行分组,基于组进行安装操作;引入仓库概念,支持多个仓库;配置简单

2.2 rpm

  • 定义:rpm是Red Hat的软件包格式和管理工具,全称为Red Hat Package Manager。
  • 功能:用于安装、卸载和查询rpm格式的软件包。用户可以通过rpm命令直接管理rpm包。
  • 特点:rpm包是预先编译好的二进制包,安装时不需要用户编译源代码。但是使用rpm安装软件包时,需要用户手动处理依赖关系。

用于安装、卸载 .rpm软件。

使用wget下载一个 rpm包, 然后用 rpm -ivh xxx.rpm 安装这个软件;嫌麻烦的话,可以直接用 yum install xxx 来自动下载和安装依赖的rpm软件

rpm --help

#安装
rpm -ivh *.rpm      
# -v, --verbose 提供更多的详细信息输出
# -h, --hash 软件包安装的时候列出哈希标记 (和 -v 一起使用效果更好)
# -i, --install 安装软件包

#卸载
rpm -e packgename   
#rpm依赖删除不了的话,就只能通过yum来删除,yum可以删除其所被依赖的所有软件
yum remove xxx
rpm -Uvh xxx            #升级

rpm -qa | grep xxx      #查询是否已安装xx包。rpm -qa|grep wget
rpm -qa | grep -i mysql   #查询某个包。-q 使用询问模式(query),-a 查询所有条件(all),-i 不区分大小写
rpm -q nginx            #查看是否已经安装
rpm -qa                 #查询所有安装的包
rpm -qi xxx 
rpm -ql xxx             #查询软件的安装路径
rpm -qc xxx 
rpm -qf /etc/yum.conf   #查询某个文件是那个rpm包产生
rpm -qpi xxx 
rpm -qa|grep php        #查看已安装的RMP包

2-1.png

2.3 apt-get

  • 定义:apt-get是Debian系列(包括Debian、Ubuntu等)下的软件包管理工具,全称为Advanced Package Tool,又名apt-get。
  • 功能:用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件包或操作系统。apt-get能够自动处理依赖关系,确保所有必要的软件包都被安装。
  • 优点:提供了强大的软件包管理功能,支持从多个软件源获取软件包,并且能够自动更新软件仓库的索引信息。

2.4 wget

  • 定义:wget是一种网络下载工具,类似于迅雷等下载软件。CentOS和Ubuntu都可以用 wget命令用来从指定的URL下载文件,而后通过yum、rpm、apt-get等方式安装。
  • 功能:通过HTTP、HTTPS、FTP等协议从指定的URL下载文件。wget具有在不稳定网络中重试下载的能力,非常适合用于下载大文件或网络条件较差的情况。
  • 特点wget本身并不是一种安装方式,而是一种下载工具。用户可以使用wget下载软件包后,再通过其他方式(如rpm、yum、apt-get等)进行安装。

2.5 总结

工具 定义 功能 特点
yum Red Hat系列下的软件包管理器 自动下载、安装、更新、删除RPM包,处理依赖关系 简化了软件包管理操作
rpm Red Hat的软件包格式和管理工具 安装、卸载、查询rpm包 需要手动处理依赖关系
apt-get Debian系列下的软件包管理工具 自动从软件仓库搜索、安装、升级、卸载软件包 自动处理依赖关系,支持多软件源
wget 网络下载工具 通过HTTP、HTTPS、FTP等协议下载文 不是安装方式,但可用于下载软件包

yum install 和 apt-get install 的主要区别在于它们适用于不同的Linux发行版,‌并且处理软件包的方式有所不同。‌

  • 适用范围:‌yum 是 Fedora、‌Red Hat 和 SUSE 等基于 rpm 的 Linux 发行版的包管理器,‌而 apt-get 主要用于 Debian、‌Ubuntu 等基于 deb 的 Linux 发行版。‌这意味着,‌如果你在使用 Red Hat 系列(‌如 CentOS、‌Fedora)‌的系统上,‌你会使用 yum 来管理软件包;‌如果你在使用 Debian 系列(‌如 Ubuntu、‌Linux Mint)‌的系统上,‌则应该使用 apt-get。‌
  • 下载和安装:‌yum 和 apt-get 都能够自动从互联网的软件仓库中搜索、‌安装、‌升级和卸载软件或操作系统。‌但它们处理的方式有所不同。‌yum 能够从指定的服务器自动下载 RPM 包并且安装,‌可以自动处理依赖性关系,‌并且一次安装所有依赖的软体包,‌而无需繁琐地一次次下载、‌安装;apt-get 则用于运作 deb 包,‌提供类似的功能,‌但针对的是 deb 格式的软件包。‌
  • 命令格式:‌yum 使用的命令格式为 "yum [option] [command]",‌例如安装软件包使用 "yum install \"。‌apt-get 使用的命令格式为 "apt-get [option] [command]",‌安装软件包使用 "apt-get install \"。‌

总的来说,‌yum 和 apt-get 是 Linux 系统中用于管理软件包的两种主要工具,‌它们各自适用于不同的 Linux 发行版,‌并且根据软件包的类型(‌rpm 或 deb)‌和系统的具体配置来选择使用。‌两者都能自动化地处理软件包的依赖关系,‌并从远程仓库下载和安装软件包,‌但命令格式和使用方法略有不同。

三、CentOS中yum的作用

yum的一切信息都存储在一个叫yum.reops.d目录下的配置文件中,通常位于/etc/yum.reops.d目录下。

在这个目录下面有很多文件,都是.repo结尾的,repo文件是yum源(也就是软件仓库)的配置文件,通常一个repo文件定义了一个或者多个软件仓库的细节内容,例如我们将从哪里下载需要安装或者升级的软件包,repo文件中的设置内容将被yum读取和应用。

yum --version      #查看自己安装的yum的信息,一般CentOS是默认安装yum的,如果没有的话,可去网站下载
yum --help
yum [options] COMMAND

3.1 yum清空缓存列表

yum clean packages             # 清除缓存目录下的软件包,清空的是(/var/cache/yum)下的缓存
yum clean headers             # 清除缓存目录下的 headers
yum clean oldheaders         # 清除缓存目录下旧的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders)     # 清除缓存目录下的软件包及旧的headers
#yum 安装一个软件的时候会把软件包下载到本地指定的目录中,所以为了节省磁盘空间,可以用上述命令清空缓存

3.2 yum显示信息

yum list                          # yum list显示所有已经安装和可以安装的程序包   
yum list <package_name>         # 显示安装包信息rpm,显示installed ,这里是包名,版本和仓库名
yum info <package_name>         # 显示安装包rpm的详细信息
yum list installed              # 列出所有已安装的软件包

yum list updates                # 列出所有可更新的软件包
yum list repolist all            # 查询所有的yum仓库
yum groupinfo <group_name>      # 显示程序组group信息

3.3 yum搜索、查看

yum search string                 # 根据关键字string查找安装包
yum deplist <package_name>        # 仅仅查看程序rpm依赖情况
yum provides */命令               # 查看命令是由哪个包提供的(这个命令很有帮助)

3.4 yum安装

yum install package_name        #安装软件包。yum会查询数据库,有无这一软件包,如果有 则检查其依赖冲突关系,如果没有依赖冲突 那么最好,下载安装;如果有,则会给出提示,询问是否要同时安装依赖或删除冲突的包,你可以自己作出判断
yum -y install <package_name>    #不加-y则会询问是否安装,想控制哪些包安装 则不要加-y;想自动安装不进行交互,则加-y
yum install --downloadonly --downloaddir=/xx/xxx/xx/    #只下载软件但不安装

3.5 yum删除、卸载程序

yum remove <package_name>        # 卸载程序包,此卸载命令会yum或rpm安装的包生效,如果是编译安装的,则不受yum控制
yum groupremove <group_name>    # 删除程序组group

3.6 yum包的升级、降级

yum check-update                 #检查可更新的软件有哪些
yum update                         #更新升级所有软件包
yum update <package_name>         #更新指定程序包package,   
yum upgrade <package_name>         #升级指定程序包package

#有时候需要将高版本的依赖降级到低版本,降级命令如下
yum downgrade <package_name>    #降级,对于有依赖的,yum不会自动降级,需要手动降级依赖项

生成缓存

# 运行以下命令生成缓存
yum clean all
yum makecache

3-1.png

四、Ubuntu中apt-get

Ubuntu都会自带apt-get的,可以使用apt-get --version检查一下,就像CentOS自带yum一样,如果没有(还没遇到过),那你还是可以去下载rpm包,然后通过rpm指令进行安装。

常用的为 更新、安装、删除等操作,简单列举如下:

apt-cache search package                     #搜索包
apt-cache show package                       #获取包的相关信息,如说明、大小、版本等
sudo apt-get install package                 #安装包
sudo apt-get install package -- reinstall    #重新安装包
sudo apt-get -f install                      #修复安装"-f = --fix-missing"
sudo apt-get remove package                  #删除包
sudo apt-get remove package -- purge         #删除包,包括删除配置文件等
sudo apt-get update                          #更新源
sudo apt-get upgrade                         #更新已安装的包
sudo apt-get dist-upgrade                    #升级系统
sudo apt-get dselect-upgrade                 #使用 dselect 升级
apt-cache depends package                    #了解使用依赖
apt-cache rdepends package                   #是查看该包被哪些包依赖
sudo apt-get build-dep package               #安装相关的编译环境
apt-get source package                       #下载该包的源代码
sudo apt-get clean && sudo apt-get autoclean #清理无用的包
sudo apt-get check                           #检查是否有损坏的依赖

五、CentOS、Ubuntu下安装、卸载wget

wget命令用来从指定的URL下载文件。wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性,如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。如果是服务器打断下载过程,它会再次联到服务器上从停止的地方继续下载。这对从那些限定了链接时间的服务器上下载大文件非常有用。

5.1 CentOS安装wget

rpm -qa | grep yum                 #检查是否安装yum包

#安装wget并验证yum
yum install -y install wget
rpm -qa | grep wget
wget --version

5-1.png

或者

yum update
yum install -y wget
wget --version

5.2 Ubuntu安装wget

sudo apt-get update
sudo apt-get install wget
wget --version

5.3 补充

rpm -qa | grep wget   #查看环境中是否安装了wget
yum -y install wget   #安装命令(推荐用yum安装,快捷简单、一键搞定)

#若显示有安装过,但是还是使用不了wget功能时,先卸载以前安装的wget再重新装一遍就行了
yum remove wget        #先卸载
yum -y install wget    #再安装

yum clean all           #清除原有 yum 缓存
yum makecache           #刷新缓存
yum makecache fast      #在基于 RPM 包的 Linux 系统(如 CentOS、RHEL 等)中使用 Yum 包管理器的一个命令,主要是更新yum的缓存

#卸载docker
sudo yum remove docker-ce docker-ce-cli containerd.io  #卸载依赖
rm -rf /var/lib/docker                                 #删除镜像、容器、配置文件等内容
rm -rf /var/lib/containerd


#docker里面各种command not found
apt-get update & apt-get install -y iproute2 
apt-get update & apt-get install -y yum
apt-get update & apt-get install -y vim
  • yum可以用于运作rpm包,例如在CentOS、Fedora系统上对某个软件的管理

    • 安装:yum install xxx
    • 卸载:yum remove xxx
    • 更新:yum update
  • apt-get可以用于运作deb包,例如在Ubuntu系统上对某个软件的管理

    • 安装:apt-get install xxx
    • 卸载:apt-get remove xxx
    • 更新:apt-get update
  • wget不是安装方式,它是一种下载工具,类似于迅雷。

    • 通过HTTP、HTTPS、FTP三个最常见的TCP/IP协议下载,并可以使用HTTP代理,名字是World Wide Web”与“get”的结合。
    • 如果要下载一个软件,可以直接运行:wget 下载地址

参考 Linux中wget、yum与apt-get用法及区别一起弄清Linux中yum、wget、apt-get的用法

相关文章
|
4天前
|
Ubuntu Linux 虚拟化
CentOS7扩容踩坑记录(最后只有ubuntu成功)
这篇博客记录了一次尝试给CentOS根分区扩容的过程。作者在VMware中扩展了虚拟磁盘,但最终未能成功将新分区合并到现有卷组中,因为原有分区未创建物理卷(PV)和卷组(VG)。过程中遇到了多个问题,如分区文件正在使用中等。最终作者提醒读者在操作前务必先检查当前的分区和卷组状态。
18 4
CentOS7扩容踩坑记录(最后只有ubuntu成功)
|
1天前
|
负载均衡 Ubuntu 应用服务中间件
nginx修改网站默认根目录及发布(linux、centos、ubuntu)openEuler软件源repo站点
通过合理配置 Nginx,我们可以高效地管理和发布软件源,为用户提供稳定可靠的服务。
26 13
|
17天前
|
缓存 Linux
解决CentOS 7停止更新后yum源失效问题【图文教程】
以上步骤完成后,你的 CentOS 7 系统就会使用阿里云的 yum 源,更换yum以后就可以正常使用啦。
300 2
|
1月前
|
缓存 应用服务中间件 Linux
yum 命令下载软件包到本地
在 Linux 系统中,使用 `yum` 命令可以下载软件包但不安装。通过 `yum` 的下载缓存功能,可以快速获取所需软件包。常用命令包括:`yum list available` 列出可安装的软件包,`yum download nginx` 下载特定软件包,`yum download nginx-1.18.0` 下载特定版本,`yum download -resolve nginx` 下载软件包及其依赖,`yum download nginx -d /path/to/download/directory` 指定下载目录
205 11
|
2月前
|
Linux 开发工具 数据安全/隐私保护
linux异常一:feng 不在 sudoers 文件中,此事将被报告。yum提示Another app is currently holding the yum lock; waiting for
这篇文章介绍了在CentOS 7系统中安装Docker时遇到的两个常见问题及其解决方法:用户不在sudoers文件中导致权限不足,以及yum被锁定的问题。
45 2
linux异常一:feng 不在 sudoers 文件中,此事将被报告。yum提示Another app is currently holding the yum lock; waiting for
|
1月前
|
缓存 应用服务中间件 Linux
yum 命令下载软件包到本地
在 Linux 系统中,使用 yum 命令可以下载软件包但不安装。通过 yum 的下载缓存功能,可以快速获取软件包。常用命令包括:`yum list available` 列出可安装的软件包,`yum download nginx` 下载特定软件包,`yum download nginx-1.18.0` 下载特定版本,`yum download -resolve nginx` 下载软件包及其依赖,`yum download nginx -d /path/to/download/directory` 指定下载目录
133 1
|
2月前
|
Kubernetes Linux 测试技术
|
1月前
|
存储 缓存 Linux
【Linux】另一种基于rpm安装yum的方式
通过本文的方法,您可以在离线环境中使用RPM包安装YUM并进行必要的配置。这种方法适用于无法直接访问互联网的服务器或需要严格控制软件源的环境。通过配置本地YUM仓库,确保了软件包的安装和更新可以顺利进行。希望本文能够为您在特定环境中部署YUM提供实用的指导。
164 0
|
2月前
|
缓存 前端开发 Linux
Linux yum 命令
10月更文挑战第1天
56 2
|
2月前
|
Unix Linux Go
Linux 使用Yum安装Go和配置环境
Linux 使用Yum安装Go和配置环境
下一篇
DataWorks