目录

一 . 软件包管理器

1.1 什么是软件包?

1.2 Linux软件生态

1.3 yum具体操作

1.3.1 查看软件包

1.3.2 安装软件

1.3.3 卸载软件

1.3.4 注意事项

1.4 安装源

1.4.1 安装源路径

1.4.2 软件源更新问题

一 . 软件包管理器

1.1 什么是软件包?

1、在Linux下安装软件,一个通常的办法是下载到程序的源代码,并进行编译,得到可执行程序;

2、但是这样太麻烦了,于是有些人把一些常用的软件提前编译好,做成软件包(可以理解成windows上的安装程序)放在一个服务器上,通过包管理器可以很方便的获取到这个编译好的软件包,直接进行安装;

3、软件包和软件包管理器,就好比"App"和"应用商店"这样的关系;

4、yum(Yellow dogUpdater,Modified)是Linux下非常常用的一种包管理器.主要应用在Fedora,RedHat,Centos等发行版上;

5、Ubuntu:主要使用apt(Advanced PackageTool)作为其包管理器。apt同样提供了自动解决依赖关系、下载和安装软件包的功能。

1.2 Linux软件生态

Linux下载软件的过程(Ubuntu、Centos、other)

操作系统的好坏评估--- ⽣态问题

为什么会有人免费特定社区提供软件,还发布?还提供云服务器让你下载?

软件包依赖的问题

镜像源:国内镜像源

以下是⼀些国内Linux软件安装源的官⽅链接[由⽂⼼⼀⾔⽣成]:
1. 阿⾥云官⽅镜像站
官⽅链接: https://developer.aliyun.com/mirror/
阿⾥云提供了丰富的Linux发⾏版镜像,包括CentOS、Ubuntu、Debian等,⽤⼾可
以通过该镜像站快速下载和更新软件包。
2. 清华⼤学开源软件镜像站
官⽅链接: https://mirrors.tuna.tsinghua.edu.cn/
清华⼤学镜像站提供了多种Linux发⾏版的镜像,以及Python、Perl、Ruby等编程语
⾔的扩展包。该镜像站还提供了丰富的⽂档和教程,帮助⽤⼾更好地使⽤这些软件
包。
3. 中国科学技术⼤学开源镜像站
官⽅链接: http://mirrors.ustc.edu.cn/
中科⼤镜像站提供了多种Linux发⾏版的镜像,以及常⽤的编程语⾔和开发⼯具。⽤⼾
可以通过该镜像站⽅便地获取所需的软件包和⼯具。 4. 北京交通⼤学⾃由与开源软件镜像站
官⽅链接: https://mirror.bjtu.edu.cn/
北交⼤镜像站提供了多种Linux发⾏版的镜像,以及相关的软件仓库和⼯具。该镜像站
还提供了详细的⽂档和指南,帮助⽤⼾配置和使⽤这些软件源。
5. 中国科学院软件研究所镜像站(ISCAS)
官⽅链接: http://mirror.iscas.ac.cn/
ISCAS镜像站提供了多种Linux发⾏版、编程语⾔和开发⼯具的镜像。⽤⼾可以通过该
镜像站快速获取所需的软件包和更新。
6. 上海交通⼤学开源镜像站
官⽅链接: https://ftp.sjtu.edu.cn/
上海交⼤镜像站提供了丰富的Linux软件资源,包括多种发⾏版的镜像和软件仓库。⽤
⼾可以通过该镜像站⽅便地下载和安装所需的软件包。
7. ⽹易开源镜像站
官⽅链接: http://mirrors.163.com/
⽹易镜像站提供了多种Linux发⾏版的镜像,以及相关的软件仓库和⼯具。该镜像站还
提供了便捷的搜索功能,帮助⽤⼾快速找到所需的软件包。
此外,还有⼀些其他的国内镜像源,如搜狐开源镜像站等,但可能由于时间变化或政策调
整,部分镜像站的链接或状态可能有所变动。因此,建议⽤⼾在使⽤前访问官⽅⽹站或咨询
相关社区以获取最新的信息和帮助。

 生态问题

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

前者会放到稳定软件源,后者则会放到扩展软件源。

新软件变成老软件也会过渡到稳定软件源

sudo yum install -y epel-release

1.3 yum具体操作

1.3.1 查看软件包

通过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>
...

注意事项:

软件包名称格式
主版本号。次版本号。源程序发行号 - 软件包的发行号。主机平台.cpu 架构
补充说明
x86_64 后缀表示 64 位系统的安装包,i686 后缀表示 32 位系统的安装包。选择安装包时需要和系统相匹配。
el7 表示操作系统发行版的版本,指代 CentOS 7/Red Hat 7;el6 指代 CentOS 6/Red Hat 6。
最后一列的 base 表示软件源的名称,这个概念类似于 “小米应用商店”“华为应用商店”。
以上内容同样适用于 Ubuntu 系统

1.3.2 安装软件

通过yum,我们可以通过很简单的一条命令完成gcc的安装——

# Centos
$ sudo yum install -y lrzsz
 
# Ubuntu
$ sudo apt install -y lrzsz

如果是普通用户的话前面加上sudo,我这里已经安装过了提示我是最新版本。

这是我从网上找的安装成功图片

1、yum/apt会自动找到都有哪些软件包需要下载,这时候敲"y"确认安装;
2、出现"complete"字样或者中间未出现报错,说明安装完成。

注意事项:

(1)安装软件时由于需要向系统目录中写入内容,一般需要sudo或者切到root账户下才能完成;

(2)yum / apt安装软件只能一个装完了再装另一个。正在yum / apt安装一个软件的过程中,如果再尝试用yum / apt安装另外一个软件,yum/apt会报错;

(3)如果yum/apt报错,兄弟们可以去问一下AI。

1.3.3 卸载软件

# Centos
sudo yum remove [-y] lrzsz
 
# Ubuntu
sudo apt remove [-y] lrzsz

删了,兄弟们。可以用上面的命令下载。

1.3.4 注意事项

关于 yum / apt 的所有操作必须保证主机(虚拟机)⽹络畅通!!!
可以通过 ping 指令验证
ping www.baidu.com
 
# 当天yum / apt也能离线安装,但是和我们当前⽆关,暂不关⼼。 

1.4 安装源

1.4.1 安装源路径

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-release

Ubuntu安装源路径——

$ cat /etc/apt/sources.list # 标准源 
$ ll /etc/apt/sources.list.d/ # 扩展源
 
# ubuntu 安装扩展源,就结合未来具体场景

1.4.2 软件源更新问题

软件源更新的本质:这个新的配置文件会替换系统的,如果你想保留,可以对老的备份一下——sudo mv;否则就直接覆盖老的——sudo cp。

更新安装源,现场说明原理即可。云服务器不⽤考虑,因为软件源都是国内的了.
Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐