第十六单元 yum管理RPM包
yum的功能
本地yum配置
光盘挂载和镜像挂载
本地yum配置
网络yum配置
网络yum配置
Yum命令的使用
使用yum安装软件
使用yum删除软件
安装组件
删除组件
清除缓存
查询
课后作业
【本节内容】
1. yum的功能:yum是Yellow dog Updater, Modified的缩写,目的就是为了解决RPM的依赖关系的问题,方便使用者进行软件的安装、升级等等工作。
2. 掌握光盘挂载和镜像挂载
a) 光盘挂载
mount /dev/sr0 挂载点
或者
mount /dev/cdrom 挂载点
b) 镜像文件的挂载
mount -o loop -t iso9660 镜像文件 挂载点
其中,-o loop:用来把一个文件当成硬盘分区挂接上系统
3. 掌握yum的配置
yum的配置一般有两种方式,一种是直接配置/etc目录下的yum.conf文件,另外一种是在/etc/yum.repos.d目录下增加.repo文件。
4. 掌握本地yum配置
[root@localhost ~]# mount /dev/cdrom /mnt #挂载光盘到/mnt目录
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls
rhel-source.repo
[root@localhost yum.repos.d]# cp rhel-source.repo rhel.repo #拷贝一份配置文件
[root@localhost yum.repos.d]# vi rhel.repo #编辑配置文件如下[rhel-local] #模块名称,须修改不能与其他.repo文件中的重名name=Red Hat Enterprise Linux 6 local repo #名称随便起baseurl=file:///mnt #指定rpm仓库的位置
enabled=1 #1开启该配置,0为关闭
gpgcheck=1 #1为校对软件
[root@localhost ~]# yum install vsftpd httpd #安装vsftpd及httpd服务
5. 掌握远程yum配置方法
6. 利用vsftpd搭建yum源服务器:
Vsftpd默认的配置文件是允许匿名访问,这里直接启动就可以了:
[root@localhost ~]# umount /dev/cdrom #卸载光盘
[root@localhost ~]# mount /dev/cdrom /var/ftp/pub/ #挂载光盘到vsftpd的公众目录
[root@localhost ~]# service vsftpd restart #重启vsftpd服务
必须关闭防火墙和selinux
Service iptables stop
Getenforce :查看selinux状态
临时关闭:不用重启:setenforce 0
0 permissive允许 1 enforcing 执行
配置客户机:
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls #rhel.repo是按照本地yum配置生成的
rhel.repo rhel-source.repo
[root@localhost yum.repos.d]# cat rhel.repo #修改为以下内容
[rhel-ftp]
name=Red Hat Enterprise Linux 6
baseurl=ftp://192.168.8.42/pub #指定yum源地址
enabled=1
gpgcheck=1
测试:
[root@localhost ~]# yum install bind #安装DNS服务
7. 掌握使用yum安装软件
yum –y install 软件名
8. 掌握使用yum删除软件
yum –y remove 软件名
9. 掌握使用yum安装组件
yum –y groupinstall 组件名
10. 掌握使用yum删除组件
yum –y groupremove 组件名
11. 掌握清除yum缓存
yum clean all
12. 使用yum查找软件包
yum search
13. 课后作业(用时45分钟)
1) 以最小化开启Linux系统
2) 配置本地yum
3) 安装vim
4) 清除yum缓存
5) 安装组件“KDE 桌面”
rpm包安装讲解
[root@study ~]# qq.tar.qz #编译安装
[root@study ~]# 编译 (源码翻译成二进制)====>安装
root@study ~]# rpm ====>直接安装
rpm包: 增加 、删除、查找
[root@study ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda3 10035836 3658812 5860572 39% /
tmpfs 1019504 76 1019428 1% /dev/shm
/dev/sda1 194241 41004 142997 23% /boot
/dev/sr0 3803432 3803432 0 100% /media/CentOS_6.7_Final
[root@study ~]# cd /media/CentOS_6.7_Final/
[root@study CentOS_6.7_Final]# ll
总用量 558
-r--r--r--. 2 root root 14 8月 5 2015 CentOS_BuildTag
dr-xr-xr-x. 3 root root 2048 8月 5 2015 EFI
-r--r--r--. 2 root root 212 11月 27 2013 EULA
-r--r--r--. 2 root root 18009 11月 27 2013 GPL
dr-xr-xr-x. 3 root root 2048 8月 5 2015 images
dr-xr-xr-x. 2 root root 2048 8月 5 2015 isolinux
dr-xr-xr-x. 2 root root 528384 8月 5 2015 Packages
-r--r--r--. 2 root root 1354 7月 25 2015 RELEASE-NOTES-en-US.html
dr-xr-xr-x. 2 root root 4096 8月 5 2015 repodata
-r--r--r--. 2 root root 1706 11月 27 2013 RPM-GPG-KEY-CentOS-6
-r--r--r--. 2 root root 1730 11月 27 2013 RPM-GPG-KEY-CentOS-Debug-6
-r--r--r--. 2 root root 1730 11月 27 2013 RPM-GPG-KEY-CentOS-Security-6
-r--r--r--. 2 root root 1734 11月 27 2013 RPM-GPG-KEY-CentOS-Testing-6
-r--r--r--. 1 root root 3380 8月 5 2015 TRANS.TBL
[root@study Packages]# ls | less
389-ds-base-1.2.11.15-60.el6.x86_64.rpm
389-ds-base-libs-1.2.11.15-60.el6.x86_64.rpm
abrt-2.0.8-34.el6.centos.x86_64.rpm
abrt-addon-ccpp-2.0.8-34.el6.centos.x86_64.rpm
abrt-addon-kerneloops-2.0.8-34.el6.centos.x86_64.rpm
abrt-addon-python-2.0.8-34.el6.centos.x86_64.rpm
abrt-cli-2.0.8-34.el6.centos.x86_64.rpm
abrt-desktop-2.0.8-34.el6.centos.x86_64.rpm
abrt-gui-2.0.8-34.el6.centos.x86_64.rpm
abrt-libs-2.0.8-34.el6.centos.x86_64.rpm
abrt-python-2.0.8-34.el6.centos.x86_64.rpm
abrt-tui-2.0.8-34.el6.centos.x86_64.rpm
abyssinica-fonts-1.0-5.1.el6.noarch.rpm
acl-2.2.49-6.el6.x86_64.rpm
acpid-1.0.10-2..1el6.x86_64.rpm
aic94xx-firmware-30-2.el6.noarch.rpm
说明:
软件包是奇数是不稳定版本,软件包是偶数是稳定版本
说明:
rpm的文件名分为5部分,其中:
第1部分是name,表示这个rpm软件包的名称;
第2部分是version,表示这个rpm软件包的版本编号;
第3部分是release,表示这个rpm软件包的版本发布次数(修正号码);
第4部分是architectures,表示这个rpm软件包适用于哪些平台;
最后一部分是rpm,表示这个rpm软件包的文件扩展名。
#安装rpm软件包
[root@study Packages]# rpm -ivh dhcp-4.1.1-49.P1.el6.centos.x86_64.rpm
warning: dhcp-4.1.1-49.P1.el6.centos.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
1:dhcp ########################################### [100%]
#同时安装多个rpm软件包
[root@study Packages]# rpm -ivh lrzsz-0.12.20-27.1.el6.x86_64.rpm zip-3.0-1.el6.x86_64.rpm
warning: lrzsz-0.12.20-27.1.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
package zip-3.0-1.el6.x86_64 is already installed
#查看已经安装的软件包
[root@study Packages]# rpm -qa |grep 'dhc'
dhclient-4.1.1-49.P1.el6.centos.x86_64
dhcp-4.1.1-49.P1.el6.centos.x86_64
dhcp-common-4.1.1-49.P1.el6.centos.x86_64
or
[root@study Packages]# rpm -q dhcp
dhcp-4.1.1-49.P1.el6.centos.x86_64
#卸载rpm包
[root@study Packages]# rpm -e dhcp
[root@study Packages]# rpm -e dhcp
error: package dhcp is not installed
or
[root@study Packages]# rpm -e dhcp-4.1.1-49.P1.el6.centos.x86_64
#强制安装
[root@study Packages]# rpm -ivh dhcp-4.1.1-49.P1.el6.centos.x86_64.rpm --force
warning: dhcp-4.1.1-49.P1.el6.centos.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
1:dhcp ########################################### [100%]
#忽略依赖性删除
[root@study Packages]# rpm -e dhcp-common --nodeps
[root@study Packages]# rpm -qa|grep dhcp
dhcp-4.1.1-49.P1.el6.centos.x86_64
[root@study Packages]# rpm -qa|grep dhclient
dhclient-4.1.1-49.P1.el6.centos.x86_64
[root@study Packages]# rpm -ivh dhclient-4.1.1-49.P1.el6.centos.x86_64.rpm
warning: dhclient-4.1.1-49.P1.el6.centos.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
error: Failed dependencies:
dhcp-common = 12:4.1.1-49.P1.el6.centos is needed by dhclient-12:4.1.1-49.P1.el6.centos.x86_64
[root@study Packages]# rpm -ivh dhcp-common-4.1.1-49.P1.el6.centos.x86_64.rpm
warning: dhcp-common-4.1.1-49.P1.el6.centos.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
1:dhcp-common ########################################### [100%]
[root@study Packages]# rpm -ivh dhclient-4.1.1-49.P1.el6.centos.x86_64.rpm
warning: dhclient-4.1.1-49.P1.el6.centos.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
package dhclient-12:4.1.1-49.P1.el6.centos.x86_64 is already installed
#在线安装rpm包
地址:
http://mirror.centos.org/centos-6/6.8/extras/x86_64/Packages/
[root@study Packages]# rpm -ivh http://mirror.centos.org/centos-6/6.8/extras/x86_64/Packages/python-empy-3.3-5.el6.centos.noarch.rpm
Retrieving http://mirror.centos.org/centos-6/6.8/extras/x86_64/Packages/python-empy-3.3-5.el6.centos.noarch.rpm
warning: /var/tmp/rpm-tmp.aIvyBz: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
1:python-empy ########################################### [100%]
[root@study Packages]# pwd
/media/CentOS_6.7_Final/Packages
[root@study Packages]# cd
[root@study ~]# cd /tmp
[root@study tmp]# mkdir -p /service/scripts
[root@study tmp]# cd /service/scripts/
[root@study scripts]# wget http://mirror.centos.org/centos-6/6.8/extras/x86_64/Packages/python-boto-2.32.1-1.el6.centos.noarch.rpm
--2016-11-18 11:04:31-- http://mirror.centos.org/centos-6/6.8/extras/x86_64/Packages/python-boto-2.32.1-1.el6.centos.noarch.rpm
正在解析主机 mirror.centos.org... 202.76.233.2, 2605:9000:401:102::2
正在连接 mirror.centos.org|202.76.233.2|:80... 已连接。
[root@study scripts]# ll
总用量 1684
-rw-r--r--. 1 root root 1722164 11月 4 2014 python-boto-2.32.1-1.el6.centos.noarch.rpm
#安装软件包
[root@study scripts]# rpm -ivh python-boto-2.32.1-1.el6.centos.noarch.rpm
warning: python-boto-2.32.1-1.el6.centos.noarch.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
1:python-boto ########################################### [100%]
#查看软件包详细信息
[root@study scripts]# rpm -qi python-boto
Name : python-boto Relocations: (not relocatable)
Version : 2.32.1 Vendor: CentOS
Release : 1.el6.centos Build Date: 2014年11月01日 星期六 00时47分37秒
Install Date: 2016年11月18日 星期五 11时10分31秒 Build Host: c6b8.bsys.dev.centos.org
Group : Development/Languages Source RPM: python-boto-2.32.1-1.el6.centos.src.rpm
Size : 8846304 License: MIT
Signature : RSA/SHA1, 2014年11月04日 星期二 02时54分24秒, Key ID 0946fca2c105b9de
Packager : CentOS BuildSystem <http://bugs.centos.org>
URL : https://github.com/boto/boto
Summary : A simple, lightweight interface to Amazon Web Services
Description :
Boto is a Python package that provides interfaces to Amazon Web Services.
It supports over thirty services, such as S3 (Simple Storage Service),
SQS (Simple Queue Service), and EC2 (Elastic Compute Cloud) via their
REST and Query APIs. The goal of boto is to support the full breadth
and depth of Amazon Web Services. In addition, boto provides support
for other public services such as Google Storage in addition to private
cloud systems like Eucalyptus, OpenStack and Open Nebula.