Linux之yum软件包管理
一、yum软件包管理相关命令
1.1 yum软件包管理方式说明
yum是一个在RedHat、CentOS中自动处理rpm包依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装;yum是由Python语言编写。
1.2 yum 搜索rpm包
[root@ping ~]# yum list | grep openssh-clients #查看yum仓库中的可用的rpm包,并查看是否有openssh rpm包 openssh-clients.x86_64 5.3p1-81.el6 @anaconda-CentOS-201207061011.x86_64/6.3 [root@ping ~]# yum info lftp #列出lftp软件包相关信息 Loaded plugins: downloadonly, fastestmirror, security Loading mirror speeds from cached hostfile Available Packages Name : lftp Arch : i686 Version : 4.0.9 Release : 1.el6 Size : 735 k ............. yum search lftp [root@ping ~]# yum search wget #在yum仓库中搜索有关lftp 的软件包 Loaded plugins: downloadonly, fastestmirror, security Loading mirror speeds from cached hostfile ============================================== N/S Matched: wget ================================= wget.x86_64 : A utility for retrieving files using the HTTP or FTP protocols
1.3 yum 安装rpm包
[root@ping ~]# yum -y install nmap #安装nmap工具,无需询问是否安装 [root@ping ~]# rpm -qa | grep nmap -i #查看当前系统中安装的所有rpm包,并使用grep配置是否有nmap相关字符 nmap-5.51-2.el6.x86_64 [root@ping ~]# yum -y localinstall /mnt/Packages/wireshark-1.2.15-2.el6_2.1.x86_64.rpm #安装本地的rpm包,需要的相关依赖包会从yum软件仓库中安装 [root@ping ~]# yum install -y https://mirrors.aliyun.com/centos/7.4.1708/os/x86_64/Packages/netsniff-ng-0.5.8-10.el7.x86_64.rpm #安装aliyun镜像网站上的rpm软件包
1.4 yum 卸载rpm包
[root@ping ~]# yum erase nmap -y && yum remove nmap -y #卸载该软件包,但是不会删除该软件的相关依赖包
1.5 查看linux shell命令,由什么rpm包安装的
[root@ping ~]# yum provides /bin/rm #查看rm命令的软件包 coreutils-8.4-19.el6.x86_64 : A set of basic GNU tools commonly used in shell : scripts Repo : mnt_ Matched from: Filename : /bin/rm [root@ping ~]# yum provides *bin/lsb_release redhat-lsb-4.0-3.el6.centos.x86_64 : LSB base libraries support for CentOS Repo : installed Matched from: Filename : /usr/bin/lsb_release
1.6 yum 包组
[root@ping ~]# yum grouplist #列出当前系统安装的软件包组,可以安装的软件包组 [root@ping ~]# yum groupinstall Development tools Base Compatibility libraries Debugging Tools virtualization-tools #安装软件包组 [root@ping ~]# yum groupremove virtualization-tools #卸载软件包组
1.7 查看yum仓库
[root@ping ~]# yum repolist #列出当前系统可以使用yum仓库
1.8 使用yum下载rpm包
[root@ping ~]# yum install --downloadonly --downloaddir=/tmp perl-Sys-Syslog
二、本地yum源仓库
2.1 本地yum源需求说明
当企业Linux服务器在内网中,不能与公网yum源镜像网站之间进行通信,这个时候就需要利用系统光盘镜像配置本地yum源,提供给用户下载软件包。
2.2 搭建本地yum源
2.2.1 将光盘镜像文件挂载到mnt目录下
[root@ping tmp]# mount -o loop /tmp/CentOS-6.3-x86_64-bin-DVD1.iso /mnt/
2.2.2 使用yum-config-magager命令创建yum源文件
[root@ping mnt]# yum-config-manager --add file:///mnt/ Loaded plugins: fastestmirror adding repo from: file:///mnt/ [mnt_] name=added from: file:///mnt/ baseurl=file:///mnt/ enabled=1
2.2.3 配置yum源不进行签名验证
[root@ping ~]# echo -e "gpgcheck=0\n" >> /etc/yum.repos.d/mnt_.repo && sed -i '$a gpgcheck=0' /etc/yum.repos.d/mnt_.repo
2.2.4 查看yum源配置文件
[root@ping ~]# cat /etc/yum.repos.d/mnt_.repo [mnt_] #仓库名称 name=added from: file:///mnt/ #仓库描述信息 baseurl=file:///mnt/ #YUM源url地址,如:[file:// ftp:// http://] enabled=1 #是否激活该YUM源(0代表禁用,1代表激活,默认为激活) gpgcheck=0 #安装软件时是否检查签名(0代表禁用,1代表激活)
2.3 注意
[root@ping ~]# rpm -qf $(which yum-config-manager) yum-utils-1.1.30-40.el6.noarch 有时我们的系统是最小化安装,没有yum-config-manager命令,所以我们需要安装该命令的软件包
三、配置网络yum源
3.1 配置aliyun centos yum源
[root@ping ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
3.2 配置内网网络yum源
[root@ping ~]# yum-config-manager --add ftp://192.168.100.2/centos6.7/ [root@ping ~]# cat /etc/yum.repos.d/192.168.100.2_centos6.7_.repo [192.168.100.2_centos6.7_] name=added from: ftp://192.168.100.2/centos6.7/ baseurl=ftp://192.168.100.2/centos6.7/ enabled=1