其他篇章【Linux专栏】
其他篇章 【C语言专栏】
上期回顾 【Linux】进程概念
文章目录
- [1. 软件包管理器yum](#1. 软件包管理器yum)
1. 软件包管理器yum
1.1 Linux下安装软件的方式
- 源代码安装: 下载到程序的源代码, 并进⾏编译, 得到可执⾏程序(但是还要把相关的编译环境配置也要搬过来,即不同类型的代码需要到不同的编译环境)
- rpm安装: 把⼀些常⽤的软件提前编译好, 做成软件包(可以理解成windows上的安装程序)放在⼀个服务器上, 通过包管理器可以很⽅便的获取到这个编译好的软件包, 直接进⾏安装
- 缺陷:虽然解决了安装环境问题,但是安装依赖未解决,即需要安装一些前置软件、安装的来源、软件的版本(太老太新可能都不使用)
- yum安装: 解决了安装来源、前置软件、软件版本的问题,即类似我们在应用商店直接下载,不需要考虑别的
1.2什么是软件包
软件包 :程序运行所需的可执行文件、动态库、配置文件
包管理器:软件包的管理工具,负责软件的安装、升级就、配置和卸载,能够自动处理复杂的依赖关系-----比如装A软件前,自动先装好B和C这两个基础库,省去你手动查找和安装的麻烦。
- Linux:Debian/Ubuntu 用 apt,RedHat/CentOS 用 yum 或 dnf,Arch 用 pacman
- macOS:Homebrew(brew)最常用
- Windows:winget(微软官方)、Chocolatey(第三方)
1.3 Linux 软件生态
yum(Yellow dog Updater, Modified)是Linux下⾮常常⽤的⼀种包管理器. 主要应⽤在Fedora,RedHat, Centos等发⾏版上

1.3开源的问题?
大家是否和我一样疑惑?开源不收钱?开发的人靠什么赚钱?
实则不然,开源不等于免费!因为是开源,使用的人就会越多,市场占比就会越大,依赖性也就越来越大,当出现问题的时候,就会推动人去资助他们,维护她的人也会越来越多,从而使其运转下去!毕竟当有一个东西影响力越大的时候,人们就越不希望它消失!
1.4 yum的具体操作
Linux操作系统,默认配置的yum是国外的,所以我们的访问速度会比较慢,有可能需要我们后期替换(一般厂商已经替换过了)
输入:ls /etc/yum.repos.d/ -l
c
[qianyv@VM-0-9-centos ~]$ ls /etc/yum.repos.d/ -l
total 8
-rw-r--r-- 1 root root 641 Apr 17 17:28 CentOS-Base.repo
-rw-r--r-- 1 root root 230 Apr 17 17:28 CentOS-Epel.repo
1.4.1 查看软件包
通过 yum list 命令可以罗列出当前⼀共有哪些软件包. 由于包的数⽬可能⾮常之多, 这⾥我们需要使⽤
grep 命令只筛选出我们关注的包. 例如:
c
# Centos
[root@VM-0-9-centos ~]# yum list | grep lrzsz
lrzsz.x86_64
c
# 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
注意事项:
- 软件包名称: 主版本号.次版本号.源程序发⾏号-软件包的发⾏号.主机平台.cpu架构.
- "x86_64" 后缀表⽰64位系统的安装包, "i686" 后缀表⽰32位系统安装包. 选择包时要和系统匹配.
- "el7" 表⽰操作系统发⾏版的版本. "el7" 表⽰的是 centos7/redhat7. "el6" 表⽰ centos6/redhat6.
- 最后⼀列, base 表⽰的是 "软件源" 的名称, 类似于 "⼩⽶应⽤商店", "华为应⽤商店" 这样的概念.
- Ubuntu 有上述有详细介绍
1.4.2 安装软件
通过 yum, 我们可以通过很简单的⼀条命令完成 gcc 的安装
c
# Centos
$ sudo yum install -y lrzsz
# Ubuntu
$ sudo apt install -y lrzsz
- yum/apt 会⾃动找到都有哪些软件包需要下载, 这时候敲 "y" 确认安装.
- 出现 "complete" 字样或者中间未出现报错, 说明安装完成.
注意事项:
- 安装软件时由于需要向系统⽬录中写⼊内容, ⼀般需要 sudo 或者切到 root 账⼾下才能完成.
- yum/apt安装软件只能⼀个装完了再装另⼀个. 正在yum/apt安装⼀个软件的过程中, 如果再尝试⽤yum/apt安装另外⼀个软件, yum/apt会报错.
- 如果 yum / apt报错, 请⾃⾏百度.
1.4.3 卸载软件
c
# Centos
sudo yum remove [-y] lrzsz
# Ubuntu
sudo apt remove [-y] lrzsz
无论是安装还是卸载,都会询问你是否确定,如果你不希望他询问,可以加一个-y
1.4.4 注意事项
关于 yum / apt 的所有操作必须保证主机(虚拟机)⽹络畅通!!!
可以通过 ping 指令验证
c
ping www.baidu.com
1.4.5 安装源
1. Cetnos 安装源路径:
c
[qianyv@VM-0-9-centos ~]$ ll /etc/yum.repos.d/
total 8
-rw-r--r-- 1 root root 641 Apr 17 17:28 CentOS-Base.repo //标准源
-rw-r--r-- 1 root root 230 Apr 17 17:28 CentOS-Epel.repo //扩展源
2.Ubuntu 安装源路径:
c
$ cat /etc/apt/sources.list # 标准源
$ ll /etc/apt/sources.list.d/ # 扩展源