Linux软件安装管理(二)

1.yum在线安装

yum简介
前言

在上一小节主要介绍了Linux软件安装包的分类及优缺点,RPM包的命令管理。RPM命令管理缺点:安装过程中,rpm包依赖性太强,如果所有rpm包都是手工安装,则rpm包使用难度较大。
为此官方提供了yum在线安装功能,好处:将所有软件包放到官方服务器上,当进行yum在线安装时,可以自动解决依赖性问题。

简介

Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

yum源文件
  • yum源文件目录:/etc/yum.repos.d/
  • 有4个yum源文件,只有第一个文件(CentOS-Base.repo)是默认生效的,其他都不生效
  • 该文件是网络yum源,如果能联网用这个就能访问了
yum源文件内容

查看yum源文件内容:vi /etc/yum.repos.d/CentOS-Base.repo

Linux软件安装管理(二)_第1张图片
内容说明
  1. mirrorlistbaseurl都是指定yum源服务器地址,配置其中一个即可
  2. gpgcheck一般开启,这样可以保障安装的软件是安全可靠的
  3. yum源服务器地址默认是国外的站点,访问速度会比较慢,可以修改成国内可用的yum源地址
光盘yum源搭建

默认使用的yum源是需要网络才能使用的,如果没有网络,如何使用yum源?其实可以搭建一个本地光盘yum源。
使用网络yum源的好处是可以更新,可以使用更新的软件版本,缺点是不稳定,下载速度不够快,下载时会占用一定的带宽资源,如果没有更新需求的情况下,用本地yum源效率更高。搭建步骤如下:

1.挂载光盘

mkdir /mnt/cdrom #建立挂载点
mount /dev/cdrom /mnt/cdrom/ #挂载光盘

2.使网络yum源失效

cd /etc/yum.repos.d/ #进入yum源目录
mv CentOS-Base.repo CentOS-Base.repo.bak #修改yum源文件后缀名,使其生效

3.使光盘yum源生效

vi /etc/yum.repos.d/CentOS-Media.repo #打开光盘yum源文件
修改baseurl为自己的光盘挂载地址,注释掉其他不存在的地址,修改enabled=1,启用yum源文件

Linux软件安装管理(二)_第2张图片
4.验证

输入命令: yum list,最后一列显示c6-media(即上面的光盘yum源的容器名称),说明光盘yum源搭建成功,这样即使不能联网,也能正常使用yum命令了。

Linux软件安装管理(二)_第3张图片
常用yum命令
1.查询

yum list #查询所有可用软件包列表
yum search 关键字 #搜索服务器上所有和关键字相关的包

2.安装

yum -y install 包名 #-y代表自动回答yes,否则安装依赖时会询问

3.升级

yum -y update 包名
执行升级命令必须加包名,否则会升级所有的软件,包括linux内核,非常耗时且可能导致服务器崩溃。
服务器尽量不升级程序,因为升级需要付出一定的代价(服务重启/服务器重启),且有一定的风险(不能保证安全、可靠、稳定),除非出现了重大漏洞,需要升级修复

4.卸载

yum -y remove 包名
服务器使用最小化安装,用什么软件安装什么,尽量不卸载
卸载的依赖性可能导致系统崩溃或者其他程序无法正常使用

5.查询软件包信息

yum info 包名
软件包基本信息:包名、版本、发行、大小、仓库、摘要、官网、描述等

软件组管理命令

有些功能可能需要安装多个包才行,比如想要让linux支持中文,这时候就可以使用软件组命令。
yum grouplist #列出所有可用的软件组列表
yum groupinstall 软件组名
#安装指定软件组,组名可以由grouplist查询出来
例如安装中文语言:yum groupinstall "Chinese Support"
注意:软件组名必须为英文的,如果远程登录显示的是中文,可以去本机linux查看英文
或者修改当前语言环境:LANG=zh_CN.utf8 #中文、LANG=en_US #英文
yum groupremove 软件组名 #卸载指定软件组

替换默认源

默认源服务器地址是国外网站,访问速度较慢,此处替换为国内站点地址,以网易网站为例
163源地址:http://mirrors.163.com/.help/centos.html

替换步骤

注:如果有搭建光盘yum源,需要先将其关闭

# 1.安装wget
yum -y install wget   
# 2.备份默认yum源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
# 3.进入yum源目录
cd  /etc/yum.repos.d/
# 4.复制对应CentOS版本的链接地址(右键),执行wget命令
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
# 5.运行以下命令生成缓存
yum clean all
yum makecache

2.源码包安装

源码包与RPM包的区别

安装之前的区别,概念上的区别(参考上一小节)
安装之后的区别,安装位置不同

安装位置的不同

RPM包安装位置:是安装在默认位置中(由RPM的作者决定),并不会完全一致

Linux软件安装管理(二)_第4张图片

源码包安装位置:安装在自己指定位置当中,一般是/usr/local/软件名/

安装位置不同带来的影响

RPM包安装的服务可以使用系统服务管理命令(service)来管理,例如RPM包安装的apache的启动方法是:
/etc/rc.d/init.d/httpd start
service httpd start (redhat系列专有命令)
而源码包安装的服务则不能被服务管理命令管理,因为没有安装到默认路径中。所以只能用绝对路径进行服务的管理
例如:/usr/local/apache2/bin/apachectl start

源码包安装过程
安装准备

安装C语言编译器:yum -y install gcc
下载源码包,源码包通常在软件的官网或者github上会有提供

安装注意事项

源代码建议保存位置:/usr/local/src/
软件安装建议位置:/usr/local/
如何确定安装过程报错: 安装过程停止并且出现error、warning或no的提示

安装步骤

通常源码包都是以下几个安装步骤,这里以安装apache服务为例

# 1.下载源码包(如果已下载可以通过ftp工具上传到linux中)
wget -P /tmp/ -c "http://mirror.bit.edu.cn/apache/httpd/httpd-2.2.34.tar.gz"
# 2.解压缩下载的源码包
tar -zxvf httpd-2.2.34.tar.gz
# 3.进入解压缩目录
cd httpd-2.2.34
# 4.指定配置项,./configure 选项
./configure --prefix=/usr/local/apache2
# 5.执行编译,使用gcc将源码翻译为机器语言
make
# 6.执行安装
make install 

make clean #清除编译之后的缓存文件(在make出错时可执行该命令清除编译,排错后重新make)

./configure 软件配置与安装

定义需要的功能选项(比如:指定安装位置)
检测系统环境是否符合安装要求(比如:是否安装gcc)
把定义好的功能选项和检测系统环境的信息都写入Makefile文件,用于后续的编辑

查看安装步骤

安装命令是源码包自带的,基本通用,解压源码包后有一个文件是configure,执行configure后,会生成Makefile文件和INSTALL文件(该文件可以查看安装步骤),如下

Linux软件安装管理(二)_第5张图片
启动源码包服务

进入软件的启动目录下执行start,如:/usr/local/apache2/bin/apachectl start
临时关闭防火墙:service iptables stop
访问服务 如:http://192.168.1.140:80/

源码包卸载

不需要卸载命令,直接删除安装目录即可。不会遗留任何垃圾文件
例如卸载apache服务:rm -rf /usr/local/apache2/

你可能感兴趣的:(Linux软件安装管理(二))