Top

NSD ADMIN DAY05

1 案例1:查询已安装的软件信息

1.1 问题

  1. 列出当前主机已安装的所有RPM软件
  2. 查看firefox软件包的安装清单
  3. 查询ifconfig命令程序是安装哪个软件包后产生的
  4. 查看firefox软件包的用途

1.2 方案

查询所有已安装的rpm包,可以利用命令rpm -qa。

查询一个软件安装清单,可以利用命令rpm -ql 软件名。

查询一个文件是由哪个软件包安装后产生,可以利用命令rpm -qf 文件绝对路径。本题中首先要找到,ifconfig命令的可执行程序在哪里,可以利用which命令。

查看软件的用途,可以利用命令rpm -qi 软件名。

1.3 步骤

实现此案例需要按照如下步骤进行。

步骤一:列出当前主机已安装的所有RPM软件

命令操作如下所示:

  1. [root@localhost ~]# rpm -qa

步骤二:查看firefox软件包的安装清单

命令操作如下所示:

  1. [root@localhost ~]# rpm -ql firefox

步骤三:查询ifconfig命令程序是安装哪个软件包后产生的

命令操作如下所示:

  1. [root@localhost ~]# which ifconfig #查询命令所对应的程序
  2. /sbin/ifconfig
  3. [root@localhost ~]# rpm -qf /sbin/ifconfig
  4. net-tools-1.60-110.el6_2.x86_64
  5. [root@localhost ~]#

步骤四:查看firefox软件包的用途

命令操作如下所示:

  1. [root@localhost ~]# rpm -qi firefox
  2. Name : firefox Relocations: (not relocatable)
  3. Version : 17.0.10 Vendor: Red Hat, Inc.
  4. Release : 1.el6_4 Build Date: 20131023日 星期三 211443
  5. Install Date: 20150106日 星期二 205904秒 Build Host: x86-027.build.eng.bos.redhat.com
  6. Group : Applications/Internet Source RPM: firefox-17.0.10-1.el6_4.src.rpm
  7. Size : 30424459 License: MPLv1.1 or GPLv2+ or LGPLv2+
  8. Signature : RSA/8, 20131029日 星期二 162045, Key ID 199e2f91fd431d51
  9. Packager : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>
  10. URL : http://www.mozilla.org/projects/firefox/
  11. Summary : Mozilla Firefox Web browser
  12. Description :
  13. Mozilla Firefox is an open-source web browser, designed for standards
  14. compliance, performance and portability.
  15. [root@localhost ~]#

2 案例2:查询待安装的.rpm包

2.1 问题

  1. 查询光盘中的 lynx 软件包的用途、安装清单
  2. 查询光盘中的 wireshark 软件包的用途、安装清单

2.2 方案

注意在查询未安装的.rpm包信息时,提供的命令参数应该是准确的包文件路径,仅指定软件名是不行的。指定文件路径时,多利用Tab键补全。提前将RHEL6系统光盘挂载到/media目录,以便使用相关包文件。

2.3 步骤

实现此案例需要按照如下步骤进行。

步骤一:查询光盘中的 lynx 软件包的用途、安装清单

首先将光盘设备手动挂载到/media目录,进行查询操作。

命令操作如下所示:

  1. [root@localhost ~]# mount /dev/cdrom /media/
  2. mount: block device /dev/sr0 is write-protected, mounting read-only
  3.  
  4. [root@localhost ~]# mount | tail -1
  5. /dev/sr0 on /media type iso9660 (ro)
  6. [root@localhost ~]# rpm -qpi /media/Packages/lynx-2.8.8-0.3.dev15.el7.x86_64.rpm
  7. ……
  8. [root@localhost ~]# rpm -qpl /media/Packages/lynx-2.8.8-0.3.dev15.el7.x86_64.rpm
  9. ……

步骤二:查询光盘中的 wireshark 软件包的用途、安装清单

命令操作如下所示:

  1. [root@localhost ~]# rpm -qpi /media/Packages/wireshark-1.10.14-14.el7.x86_64.rpm
  2. ……
  3.  
  4. [root@localhost ~]# rpm -qpl /media/Packages/wireshark-1.10.14-14.el7.x86_64.rpm
  5. ……

3 案例3:RPM软件的安装和卸载

3.1 问题

  1. 找出vim、vi是由哪两个包产生的
  2. 删除vim、vi命令程序
  3. 修复vim、vi
  4. 安装bind-chroot包,体验Linux依赖关系

3.2 方案

本题的思路是,首相通过which命令查找到vim、vi命令可执行程序所在位置,在通过“rpm –qf 文件绝对路径”命令查看该可执行程序,是由那个包产生的。删除该可执行程序后,再将软件包安装重新产生即可。但在安装时需注意,系统会提示改程序已经安装,需加上“—force”选项强制安装。

3.3 步骤

实现此案例需要按照如下步骤进行。

步骤一:找出vim、vi是由那两个包产生的

命令操作如下所示:

  1. [root@localhost ~]# which vi vim
  2. /usr/bin/vi
  3. /usr/bin/vim
  4. [root@localhost ~]# rpm -qf /usr/bin/vi
  5. vim-minimal-7.4.160-4.el7.x86_64
  6. [root@localhost ~]# rpm -qf /usr/bin/vim
  7. vim-enhanced-7.4.160-4.el7.x86_64

步骤二:删除vim、vi命令程序

命令操作如下所示:

  1. [root@localhost ~]# rm -rf /usr/bin/vi /usr/bin/vim
  2. [root@localhost ~]#

步骤三:修复vim、vi

首先将光盘设备手动挂载到/media目录,进行修复操作。

命令操作如下所示:

  1. [root@localhost ~]# mount /dev/cdrom /media/
  2. mount: block device /dev/sr0 is write-protected, mounting read-only
  3. [root@localhost ~]# rpm -ivh --force /media/Packages/vim-minimal-7.4.160-4.el7.x86_64……
  4.  
  5. [root@localhost ~]# rpm -ivh --force /media/Packages/vim-enhanced-7.4.160-4.el7.x86_64
  6. ……
  7. [root@localhost ~]#

步骤四:安装bind-chroot包,体验Linux依赖关系

命令操作如下所示:

  1. [root@localhost ~]# cd /media/Packages
  2. [root@svr5 Packages]# rpm -ivh bind-chroot-9.9.4-61.el7.x86_64.rpm
  3. error: Failed dependencies:
  4. ……
  5.  
  6. [root@svr5 Packages]# rpm -ivh bind-9.9.4-61.el7.x86_64.rpm
  7. Preparing... ########################################### [100%]
  8. 1:bind ########################################### [100%]
  9. [root@svr5 Packages]# rpm -ivh bind-chroot-9.9.4-61.el7.x86_64.rpm
  10. Preparing... ########################################### [100%]
  11. 1:bind-chroot ########################################### [100%]

4 案例4:配置Yum仓库及客户端及验证

4.1 问题

  1. 将光盘挂载到/dvd,搭建本地Yum
  2. 将本机设置为客户端,进行Yum验证
  3. 查询Yum库中是否有firefox包
  4. 使用yum命令安装bind包
  5. 利用Yum安装bind
  6. 利用Yum卸载bind
  7. 利用yum search查询与httpd相关的包
  8. 利用yum info查询firefox包描述信息

4.2 方案

YUM服务器配置思路:

第一步:确保光驱电源加电,放入Linux光盘的iso镜像

第二步:ls -l /dev/cdrom 查看linux系统是否识别光驱设备

第三步:创建挂载目录:mkdir /dvd (或也可以使用linux系统提供的挂载目录/media、/mnt)

第四步:利用mount命令挂载:mount /dev/cdrom /dvd

第五步:查看挂载情况:mount | grep dvd

YUM客户端配置思路:

第一步:切换路径到客户端配置文件路径下:cd /etc/yum.repos.d/

第二步:排除其他文件的干扰

[root@localhost ~]# mkdir /etc/yum.repos.d/repo

[root@localhost ~]# mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/repo

第三步:更改配置文件dvd.repo。

必须更改的字段:

Yum在使用方面,几乎rpm能够做到的事情,Yum也能够做到。此外Yum还具备自动解决依赖关系的功能。

常用的Yum操作:

4.3 步骤

实现此案例需要按照如下步骤进行。

步骤一:搭建一个本地Yum,将光盘手动挂载到/dvd

命令操作如下所示:

  1. [root@localhost ~]# mkdir /dvd
  2. [root@localhost ~]# ls /dvd
  3. [root@localhost ~]# mount /dev/cdrom /dvd/
  4. mount: /dev/sr0 写保护,将以只读方式挂载
  5. [root@localhost ~]# ls /dvd/
  6. [root@localhost ~]# ls /dvd/Packages/

步骤二:将本地设置为客户端,进行Yum验证

Yum客户端需编辑配置文件,命令操作如下所示:

  1. [root@localhost ~]# ls /etc/yum.repos.d/
  2. [root@localhost ~]# mkdir /etc/yum.repos.d/repo
  3. [root@localhost ~]# mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/repo
  4. [root@localhost ~]# ls /etc/yum.repos.d/
  5. [root@localhost ~]# vim /etc/yum.repos.d/dvd.repo
  6. [centos] #仓库标识,可以任意
  7. name=hehe lele CentOS7         #仓库的描述信息,可以任意
  8. baseurl=file:///dvd             #指定服务端位置,file://代表本地为服务端
  9. enabled=1                     #是否启用本文件
  10. gpgcheck=0                     #是否检测红帽签名信息
  11. [root@localhost ~]# yum repolist         #列出仓库信息

步骤三:查询yum库中是否有firefox包

命令操作如下所示:

  1. [root@localhost /]# yum list | grep firefox

步骤四:利用yum安装bind包

命令操作如下所示:

  1. [root@localhost /]# yum -y install bind
  2. ……

步骤二:利用Yum卸载bind

命令操作如下所示:

  1. [root@localhost /]# yum -y remove bind
  2. ……

步骤四:利用yum search查询与httpd相关的包

命令操作如下所示:

  1. [root@localhost /]# yum search httpd
  2. ……

步骤四:利用yum info查询firefox包描述信息

命令操作如下所示:

  1. root@localhost /]# yum info firefox
  2. ……