Linux
系统软件安装
计算机没有安装操作系统,就是一坨废铁,不能实现任何功能;如果计算机安装了操作系统,但没有应用软件,也只是中看不中用的花瓶。所以,我们需要学习软件的安装,只有安装了所需的软件,才能实现想要的功能。比如,想要上网就需要安装浏览器,看电影就需要安装视频播放器。
很多初学者会很困惑:Linux
中的软件安装方法是否和 Windows
中的软件安装方法一样呢? Windows
中的软件是否可以直接安装到 Linux
上呢?理想很美好,现实很骨感,答案是否定的,Linux
和 Windows
是完全不同的操作系统,软件包管理是截然不同的。
Linux
软件包
Linux
下的软件包众多,且几乎都是经 GPL
授权、免费开源(无偿公开源代码)的。这意味着如果你具备修改软件源代码的能力,只要你愿意,可以随意修改
Linux
下的软件包可细分为两种,分别是源码包和二进制包
- 源码包:需要把源代码使用
gcc
进行编译为二进制代码,安装的难度比较高,消耗比较大 - 二进制包:
- 相当于
windows
的.exe
安装文件 - 二进制包是
Linux
下默认的软件安装包,因此二进制包又被称为默认安装软件包 - 一般用于
linux
的rpm
安装和yum
安装
- 相当于
实际rpm
命令安装rpm
软件包,只需要了解就可以了,因为正常来说开发中我们一般使用yum
命令安装rpm
软件包,而不是使用rpm
安装
rpm
离线安装,把安装文件先下载到本地,在通过工具安装软件,并且必须自己手动解决包之间的依赖性问题
以二进制形式发布的软件包
- 在
redhat
、centos
发行版中,软件包使用rpm
包格式 后缀*.rpm
- 在
debian
、ubuntu
发行版中,一般使用deb包格式 后缀*.deb
rpm包管理器命令
rpm [选项] 包名|包文件名
-i
:安装包-U
:升级包-v
:显示安装详情-h
:显示安装进度-e
:卸载包-q
:包查询-l
:列出包中所有文件
安装
注意一定是包全名。涉及到包全名的命令,一定要注意路径,可能软件包在光盘中,因此需提前做好设备的挂载工作
rpm -ivh [完整rpm包名称]
-i
:安装(install
);-v
:显示更详细的信息(verbose
);-h
:打印#
,显示安装进度(hash
);
注意,直到出现两个 100%
才是真正的安装成功,第一个 100%
仅表示完成了安装准备工作。
此命令还可以一次性安装多个软件包,仅需将包全名用空格分开即可
卸载
RPM
软件包的卸载要考虑包之间的依赖性。例如,我们先安装的 httpd
软件包,后安装 httpd
的功能模块 mod_ssl
包,那么在卸载时,就必须先卸载 mod_ssl
,然后卸载 httpd
,否则会报错
如果卸载 RPM
软件不考虑依赖性,执行卸载命令会包依赖性错误
RPM
软件包的卸载很简单,使用如下命令即可
rpm -e 包名
-e
选项表示卸载,也就是 erase
的首字母。
如果没有出现错误,就代表卸载成功
RPM
软件包的卸载命令支持使用nocteps
选项,即可以不检测依赖性直接卸载,但此方式不推荐大家使用,因为此操作很可能导致其他软件也无法正常使用
rpm -e [不完整或者完整的rpm包名] --nodeps
升级
使用如下命令即可实现 RPM
包的升级:
rpm -Uvh 包全名
-U
(大写)选项的含义是:如果该软件没安装过则直接安装;若没安装则升级至最新版本。
rpm -Fvh 包全名
-F
(大写)选项的含义是:如果该软件没有安装,则不会安装,必须安装有较低版本才能升级
查看
rpm -q 包名 # 查询软件包是否安装
rpm -qa # 查询系统中所有安装的软件包
rpm -qi 包名 # 查询软件包的详细信息
yum
yum
,全称Yellow dog Updater, Modified
,是一个专门为了解决包的依赖关系而存在的软件包管理器。就好像 Windows
系统上可以通过 360 软件管家实现软件的一键安装、升级和卸载,Linux
系统也提供有这样的工具,就是 yum
可以这么说,yum
是改进型的 RPM
软件管理器,它很好的解决了 RPM
所面临的软件包依赖问题。yum
在服务器端存有所有的 RPM
包,并将各个包之间的依赖关系记录在文件中,当管理员使用 yum
安装 RPM
包时,yum
会先从服务器端下载包的依赖性文件,通过分析此文件从服务器端一次性下载所有相关的 RPM
包并进行安装
yum
源搭建
使用 yum
安装软件包之前,需指定好 yum
下载 RPM
包的位置,此位置称为 yum
源。换句话说,yum
源指的就是软件安装包的来源。
一般情况下,只要你的主机网络正常,可以直接使用网络 yum
源,不需要对配置文件做任何修改,这里对 yum
源配置文件做一下简单介绍
网络 yum
源配置文件位于 /etc/yum.repos.d/
目录下,文件扩展名为*.repo
只要扩展名为 *.repo
的文件都是 yum
源的配置文件
修改yum
配置文件/etc/yum.repos.d/CentOS-Base.repo
,该文件是网络源的默认配置文件,修改baseurl
清除yum
缓存和刷新yum
缓存
yum clean all #清除缓存
yum makecache #生成(刷新)缓存
yum
命令
yum clean packages :清除缓存目录下的所有软件包清空的是:(/var/cache/yum)目录下的缓存文件
yum clean all :清除缓存目录下的所有软件包和旧的headers
yum list :查看所有的安装的 ,可以安装的包
yum info 包名 :查看某个包的信息
yum install 包名 : 在线安装软件
yum update 包名: 升级软件
yum remove 包名: 删除软件
查询
yum list
:查询所有已安装和可安装的软件包
yum list 包名
:查询执行软件包的安装情况
yum search
关键字:从 yum
源服务器上查找与关键字相关的所有软件包
yum info
包名:查询执行软件包的详细信息
安装
yum -y install 包名
install
:表示安装软件包。-y
:自动回答yes
如果不加-y
,那么每个安装的软件都需要手工回答yes
升级
yum
升级软件包常用命令如下:
yum -y update
:升级所有软件包。不过考虑到服务器强调稳定性,因此该命令并不常用。yum -y update 包名
:升级特定的软件包
卸载
使用 yum
卸载软件包时,会同时卸载所有与该包有依赖关系的其他软件包,即便有依赖包属于系统运行必备文件,也会被 yum
无情卸载,带来的直接后果就是使系统崩溃。
除非你能确定卸载此包以及它的所有依赖包不会对系统产生影响,否则不要使用 yum
卸载软件包
yum remove 包名
创作不易,感谢支持