什么是软件包
在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序.
但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装.
软件包和软件包管理器, 就好比 "App" 和 "应用商店" 这样的关系.
yum(Yellow dog Updater, Modified)是Linux下非常常用的一种包管理器. 主要应用在Fedora, RedHat,Centos等发行版上.
注意事项
关于 yum 的所有操作必须保证主机(虚拟机)网络畅通!!!
可以通过 ping 指令验证
ping www.baidu.com
[shadow@VM-4-4-centos /]$ ping www.baidu.com
PING www.a.shifen.com (110.242.68.3) 56(84) bytes of data.
64 bytes from 110.242.68.3 (110.242.68.3): icmp_seq=1 ttl=51 time=24.9 ms
64 bytes from 110.242.68.3 (110.242.68.3): icmp_seq=2 ttl=51 time=24.9 ms
64 bytes from 110.242.68.3 (110.242.68.3): icmp_seq=3 ttl=51 time=24.9 ms
64 bytes from 110.242.68.3 (110.242.68.3): icmp_seq=4 ttl=51 time=24.9 ms
64 bytes from 110.242.68.3 (110.242.68.3): icmp_seq=5 ttl=51 time=24.9 ms
查看软件包
通过 yum list 命令可以罗列出当前一共有哪些软件包. 由于包的数目可能非常之多, 这里我们需要使用 grep 命令只筛选出我们关注的包.
举例:
[shadow@VM-4-4-centos /]$ yum list | grep sl
也可以通过命令 yum search sl
[shadow@VM-4-4-centos /]$ yum search sl
注意事项:
软件包名称: 主版本号.次版本号.源程序发行号-软件包的发行号.主机平台.cpu架构.
"x86_64" 后缀表示64位系统的安装包, "i686" 后缀表示32位系统安装包. 选择包时要和系统匹配.
"el7" 表示操作系统发行版的版本. "el7" 表示的是 centos7/redhat7. "el6" 表示 centos6/redhat6.
最后一列, base 表示的是 "软件源" 的名称, 类似于 "小米应用商店", "华为应用商店" 这样的概念.
如何安装软件
通过 yum, 我们可以通过很简单的一条命令完成安装.
举例:
[shadow@VM-4-4-centos /]$ sudo yum install -y sl
yum 会自动找到都有哪些软件包需要下载, 这时候敲 "y" 确认安装.(也可以在指令中直接输入-y选项)
最后出现 "complete" 字样, 说明安装完成.
运行sl
会看到在屏幕上出现一辆小火车
注意事项:
安装软件时由于需要向系统目录中写入内容, 一般需要 sudo 或者切到 root 账户下才能完成.
yum安装软件只能一个装完了再装另一个. 正在yum安装一个软件的过程中, 如果再尝试用yum安装另外一个软件, yum会报错.
如何卸载软件
仍然是一条命令:
[shadow@VM-4-4-centos /]$ sudo yum remove sl -y
最后出现 "complete" 字样, 说明卸载完成.
更新yum源
通过以下命令查看自己的系统下安装了哪些yum源
[shadow@VM-4-4-centos /]$ ll /etc/yum.repos.d/
total 16
-rw-r--r-- 1 root root 614 Jul 20 18:14 CentOS-Base.repo
-rw-r--r-- 1 root root 230 Jul 20 18:14 CentOS-Epel.repo
-rw-r--r-- 1 root root 1358 Sep 5 2021 epel.repo
-rw-r--r-- 1 root root 1457 Sep 5 2021 epel-testing.repo
可以通过wget命令下载更多的yum源
比如从阿里云下载yum源
wget http://mirrors.aliyun.com/repo/Centos-7.repo
关于 rzsz
这个工具用于 windows 机器和远端的 Linux 机器通过 XShell 传输文件.
安装完毕之后可以通过拖拽的方式将文件上传过去.