Linux环境基础开发工具——(1)yum
一.Linux 软件包管理器yum
什么是软件包呢?
在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序.
但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装.
软件包和软件包管理器, 就好比 "App" 和 "应用商店" 这样的关系.
yum(Yellow dog Updater, Modified)是Linux下非常常用的一种包管理器. 主要应用在Fedora, RedHat, Centos等发行版上
总结来说:
1.源代码安装(麻烦,不友好)
2.RMP安装:
了解:什么是RMP? 软件包管理系统 - 在Linux操作系统中,RPM(Red - Hat Package Manager)是一种用于软件包的安装、卸载、升级、查询和验证的工具。它能方便地管理以.rpm为后缀的软件包,许多基于Red Hat的Linux发行版(如CentOS)都广泛使用这种软件包管理方式。 缺点:彼此有依赖性
在Linux的RPM软件包管理系统中,软件包有彼此依赖性主要有以下原因 从功能角度讲,软件程序很少是完全独立运行的。一个软件可能依赖其他软件所提供的库文件或工具来实现全部功能。比如,一个图形处理软件可能依赖于特定的图形库,这些图形库以独立的RPM软件包形式存在。只有安装了这些依赖的库,图形处理软件才能正常运行。
从系统资源利用方面看,避免重复造轮子。多个软件包共享某些底层的依赖,这样可以有效节省系统资源。如果每个软件都自带所有需要的功能组件,会导致系统臃肿且浪费大量的存储空间。例如,多个网络服务软件可能都依赖于同一个基础的网络协议处理软件包。 就好像小朋友:妈妈做饭,给小孩吃,在过程中,可能小孩觉得烫,还要妈妈去吹,或者避免衣服弄脏,要戴围巾,需要做的东西增多,但是,我们最终要的结果是小孩吃饭。同样RMP也是相似的道理:就想要安装软件,但是要求另外的软件。
而yum安装:帮助解决了安装源,安装版本,安装依赖等等问题。因此我们常使用的是它。
讲到这里,我们来谈谈Linux的软件生态问题:
我们的笔记本/手机/ipad/(实质为window/centos)怎么做到去那里下载软件的呢?
我们平常的app软件下载是通过官网(应用商店,软件管家)去下载。而官网当中其实有yum/
apt-get,笔记本/手机/ipad/(实质为window/centos)通过网络,去找到所属的服务器(如华为,阿里云),找到官方的yum源(这里有专门的公司去为我们提供软件服务)各种yum源会存到应用商店里提供大家使用
APT(Advanced Package Tool)是Debian及其衍生的Linux发行版(如Ubuntu)中的一款强大的软件包管理工具,而“apt-get”是APT工具集的命令行工具。
为什么新人会选择Linux操作系统的选型?
原因:
1.获取来源足够多,并且官方的获取容易。
2.Linux的操作系统的版本稳定,是行业内的共识(好,稳定)。
3.Linux有活跃的社区,里面有各种各样的问题已经暴露出来并且已有成熟的解决方案。
4.Linux有成熟的开发文档,它的周边文档丰富,告诉了我们各种各样的场景于应用。
5.Linux系统背后有丰富的软件生态,eg:有各种各样的解决方案。查网络,io端口,CPU等等的资源服务。
6.Linux的配套软件及时跟得上,它即使会出现坑,但是活跃的社区也会弥补这个缺陷。
7.大公司也在使用。说明了Linux是行的!
查看是否联网:
以百度为例,如果能打开,就说明已经联网 ping www.baidu.com
ps:云服务器的话是一定联网的。
接着,了解了上面的知识背景后,我们又怎么知道我们需要安装哪些软件呢?
这个是按照需求来安装的。
yum install -y epel-release
- 安装 epel - release 软件包后,系统会配置好EPEL仓库。这使得用户可以通过 yum 命令从EPEL仓库中获取和安装更多种类的软件包,大大丰富了软件选择范围,比如一些开发工具、服务器软件的额外插件等。
查看软件包
通过 yum list 命令可以罗列出当前一共有哪些软件包. 由于包的数目可能非常之多, 这里我们需要使用 grep 命令只筛选出我们关注的包.
yum list | grep lrzsz
软件包名称: 主版本号.次版本号.源程序发行号-软件包的发行号.主机平台.cpu架构.
"x86_64" 后缀表示64位系统的安装包, "i686" 后缀表示32位系统安装包. 选择包时要和系统匹配. "el7" 表示 操作系统发行版的版本. "el7" 表示的是 centos7/redhat7. "el6" 表示 centos6/redhat6.最后一列, base 表示的是 "软件源" 的名称, 类似于 "小米应用商店", "华为应用商店" 这样的概念
/etc/yum.repos.d
是一个在CentOS、RHEL等基于RPM的Linux系统中非常重要的目录。
目录用途
- 该目录用于存放yum软件包管理器的软件仓库配置文件。yum通过读取这些配置文件来确定软件包的来源,包括从哪里下载软件包、软件包的版本信息、依赖关系信息等内容。
如何安装软件
sudo yum install lrzsz
yum 会自动找到都有哪些软件包需要下载, 这时候敲 "y" 确认安装.出现 "complete" 字样, 说明安装完成.
安装软件时由于需要向系统目录中写入内容, 一般需要 sudo 或者切到 root 账户下才能完成.yum安装软件只能一个装完了再装另一个. 正在yum安装一个软件的过程中, 如果再尝试用yum安装另外一个软件, yum会报错.
查看yum源
ls /ect/yum.repos.d
如何卸载软件
sudo yum remove lrzsz
好了,关于yum的分享到此结束了,希望大家一起进步!
最后到了本次鸡汤环节:
下面!与小伙伴们共勉!