



1、在Linux下安装软件,一个通常的办法是下载到程序的源代码,并进行编译,得到可执行程序; 2、但是这样太麻烦了,于是有些人把一些常用的软件提前编译好,做成软件包(可以理解成windows上的安装程序)放在一个服务器上,通过包管理器可以很方便的获取到这个编译好的软件包,直接进行安装; 3、软件包和软件包管理器,就好比"App"和"应用商店"这样的关系; 4、yum(Yellow dogUpdater,Modified)是Linux下非常常用的一种包管理器.主要应用在Fedora,RedHat,Centos等发行版上; 5、Ubuntu:主要使用apt(Advanced PackageTool)作为其包管理器。apt同样提供了自动解决依赖关系、下载和安装软件包的功能。








一个应用十几年前甚至几十年前就诞生了理念,这么多年还在稳定更新——相当于经过了十几年的DeBug——稳定;一个新的应用,没有经过时间验证——还不够稳定。
前者会放到稳定软件源,后者则会放到扩展软件源。


sudo yum install -y epel-releaseUnbuntu的扩展源很麻烦,好在不是很要紧。

通过yumlist命令可以罗列出当前一共有哪些软件包,由于包的数目可能非常之多,这里我们需要使用grep命令只筛选出我们关注的包,例如:
# Centos
$ yum list | grep lrzsz
lrzsz.x86_64 0.12.20-36.el7 @base
# Ubuntu
$ apt search lrzsz
Sorting... Done
Full Text Search... Done
cutecom/focal 0.30.3-1build1 amd64
Graphical serial terminal, like minicom
lrzsz/focal,now 0.12.21-10 amd64 [installed]
Tools for zmodem/xmodem/ymodem file transfer
$ apt show lrzsz
Package: lrzsz
Version: 0.12.21-10
Priority: optional
Section: universe/comm
Origin: Ubuntu
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Martin A. Godisch <godisch@debian.org>
...注意事项:
1、软件包名称:主版本号.次版本号.源程序发行号-软件包的发行号.主机平台.cpu架构; 2、"x86_64"后缀表示64位系统的安装包,"i686"后缀表示32位系统安装包.选择包时要和系统匹配; 3、"el7"表示操作系统发行版的版本."el7"表示的是centos7/redhat7, "el6"表示centos6/redhat6; 4、最后一列,base表示的是“软件源”的名称——谁提供的软件,类似于"小米应用商店","华为应用商店”这样的概念; 5、Ubuntu有上述有详细介绍。
通过yum,我们可以通过很简单的一条命令完成gcc的安装——
# Centos
$ sudo yum install -y lrzsz
# Ubuntu
$ sudo apt install -y lrzsz

1、yum/apt会自动找到都有哪些软件包需要下载,这时候敲"y"确认安装; 2、出现"complete"字样或者中间未出现报错,说明安装完成。
注意事项:
(1)安装软件时由于需要向系统目录中写入内容,一般需要sudo或者切到root账户下才能完成; (2)yum / apt安装软件只能一个装完了再装另一个。正在yum / apt安装一个软件的过程中,如果再尝试用yum / apt安装另外一个软件,yum/apt会报错; (3)如果yum/apt报错,uu们可以去问一下AI。
我们也可以用一条命令解决——
# Centos
sudo yum remove [-y] lrzsz
# Ubuntu
sudo apt remove [-y] lrzsz
关于yum / apt的所有操作,必须保证主机(虚拟机)网络畅通!!!
可以通过ping指令验证——
ping www.baidu.com
# 当天yum / apt也能离线安装,但是和我们当前⽆关,暂不关⼼。 一次。
usr/bin目录下——(sudo / root)root账号安装,安装一次就够了。
Linux中yum / apt不能同时安装多个软件,会报错;只能一个装完再装另一个。

Windows在安装软件的时候会询问是多用户安装还是单用户安装,前者和Linux一样,装了就所有的用户都装好了,后者则只会安装指定用户。
Windows系统一般只有一个用户。
Windows系统中做好了软件隔离,可以同时安装各种软件。

Cetnos安装源路径——
$ ll /etc/yum.repos.d/
total 16
-rw-r--r-- 1 root root 676 Oct 8 20:47 CentOS-Base.repo # 标准源
-rw-r--r-- 1 root root 230 Aug 27 10:31 epel.repo # 扩展源
# 安装扩展源,方便演⽰
# $ sudo yum install -y epel-releaseUbuntu安装源路径——
$ cat /etc/apt/sources.list # 标准源
$ ll /etc/apt/sources.list.d/ # 扩展源
# ubuntu 安装扩展源,就结合未来具体场景
软件源更新的本质:这个新的配置文件会替换系统的,如果你想保留,可以对老的备份一下——sudo mv;否则就直接覆盖老的——sudo cp。
关于更新安装源,能够说明原理即可。云服务器不用考虑,因为软件源都是国内的了。
CentOs已经是停更的状态了。
Wget:去特定的网址获取内容。
1、更新配置文件;
2、清理安装原缓存——
[root@VM-4-17-centos ~]# sudo yum clean all3、使用新的配置,重新形成缓存——
[root@VM-4-17-centos ~]# sudo yum makecache

在Linux操作系统中安装、查找、卸载软件的问题——

Linux软件包生态问题——

包管理器:yum / apt——

uu们,本文的内容到这里就全部结束了,艾莉丝再次感谢您的阅读!
往期回顾:
【Linux权限 (二)】Linux权限机制深度解析:umask如何决定默认权限与粘滞位的妙用
结语:本期我们在前一篇博客的基础上继续深入学习了Linux中的指令篇,希望对学习Linux指令相关内容的uu有所帮助,不要忘记给博主“一键四连”哦!
🗡博主在这里放了一只小狗,大家看完了摸摸小狗放松一下吧!🗡 ૮₍ ˶ ˊ ᴥ ˋ˶₎ა