在具有IBM®AIX®逻辑分区(LPAR)的经典环境中,安装或卸载CD需要虚拟I / O服务器(VIOS)上的管理员权限。 如果必须频繁执行此操作,则可能是一个非常昂贵的过程。
本文的目的是为没有管理员权限的用户提供工具和方法,以管理AIX LPAR上的CD / DVD挂载和卸载操作。
用户可能希望在没有外部帮助(来自系统管理员或帮助台)的情况下轻松地执行此类操作。 一个简单的过程可以帮助用户执行此基本操作。
以下示例说明了全局体系结构,初步操作和当前操作。
建筑
我们需要:
- 一台名为VIOS的虚拟I / O服务器,在其上创建了虚拟媒体库。
- 一个称为LPAR1的LPAR,在其上实现了一组工具(脚本)
- 另一个称为LPAR2的LPAR,这是安装CD或DVD的目标。
LPAR1和LPAR2可以集中在一个LPAR中,但是在我们的示例中,我们更喜欢有两个不同的LPAR,一个用于工具,另一个用于管理CD / DVD。
表1和表2描述了安装或卸载CD / DVD的所有必要步骤。 这些步骤可以是手动或自动的。
表1.装入CD / DVD的步骤
| 订购 | 步 | 行动 |
|---|---|---|
| 1个 | 将ISO CD文件放在AIX服务器(LPAR1)上 | NFS共享上的用户+命令(scp或ftp命令)或ISO文件 |
| 2 | 将ISO文件推送到虚拟媒体库 | 用户+ mount_CD.ksh脚本 |
| 3 | 在VIOS上执行自动虚拟化过程 | 在VIOS上自动处理 |
| 4 | 将CD装入AIX服务器(LPAR2) | 用户+挂载命令 |
表2。 卸载CD / DVD的步骤
| 订购 | 步 | 行动 |
|---|---|---|
| 1个 | 在AIX服务器(LPAR2)上卸载CD | 用户+ umount命令 |
| 2 | 在VIOS上执行自动虚拟化过程 | 用户+ umount_CD.ksh脚本 |
| 3 | 自动删除IOS CD文件 | 在VIOS上自动处理 |
系统要求
在运行安装或卸载过程之前,必须执行一些初步的操作:
- 在没有管理员权限的情况下在VIOS上创建工具帐户。 工具帐户属于人员组。
- 在VIOS上创建虚拟介质库,并将虚拟介质库的所有权更改为工具帐户。
- 在VIOS上创建一个工作目录。
- 在LPAR1服务器上创建一个工具帐户。
- 为LPAR1上的工具帐户创建一个无密码的安全Shell(SSH)公钥,并将其添加到VIOS上的〜tools / .ssh / authorized_keys文件中。
- 为文件支持的虚拟光学设备创建虚拟目标。
以root用户身份在VIOS上创建帐户
在VIOS上创建没有管理员权限的工具帐户。
清单1.在VIOS上创建用户
# mkuser id=301 pgrp=staff home=/home/tools shell=/bin/ksh tools
VIOS上的虚拟媒体库
有关在VIOS上创建虚拟介质库的更多信息,请参阅IBMdeveloperWorks®Wiki上的VIOLoadISo 。
创建虚拟媒体库后,将所有权更改为工具帐户,并向工具帐户和人员组提供rw permissions 。
在VIOS上创建工作目录
VIOS上需要一个工作目录。 它包含自动脚本使用的标志文件。
清单2.创建一个工作目录
# mkdir –p /var/tools/CDs
# chown tools:staff /var/tools/CDs
# chmod 775 /var/tools/CDs
以root用户身份在LPAR1服务器上创建帐户
清单3.在LPAR1服务器上创建一个用户
# mkuser id=xxx pgrp=staff home=/home/tools shell=/bin/ksh tools
其中xxx是用户ID。
在LPAR1服务器上为工具帐户创建SSH公钥
此公钥将添加到VIOS工具帐户的authorized_keys文件中。 在这里,我们使用了空密码。
清单4. SSH密钥创建
$ ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/tools/.ssh/id_dsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/tools/.ssh/id_dsa.
Your public key has been saved in /home/tools/.ssh/id_dsa.pub.
….
在VIOS上,将此生成的公钥添加到〜tools / .ssh / authorized_keys文件中。 此时,在LPAR1服务器上,工具帐户可以作为工具帐户在VIOS上启动命令。
为文件支持的虚拟光学设备创建虚拟目标
作为VIOS上的padmin用户,使用mkdev命令来创建分配给vhost虚拟光学设备。
清单5.创建虚拟光学设备
$ mkvdev -fbo -vadapter vhost#
vtopt# Available
其中vhost#是VIOS LPAR2的虚拟小型计算机系统接口(VSCSI)设备—您可以使用lsmap –all命令进行检查。 mkdev命令vtopt#设备。
记住LPAR2 vhost#和关联的vtopt# 。 这两个名称在脚本中用作参数。
实作
需要实现四个脚本,一个在VIOS上,三个在LPAR1服务器上。
VIOS上的一个脚本专用于自动过程:
LPAR1上的三个脚本是用户的脚本:
在VIOS上,计划每分钟安排mnt_CD.ksh脚本,并检查标志文件以执行安装或卸载操作。 该脚本还创建有关虚拟光学设备和虚拟介质库的报告。
VIOS实施
必须在padmin用户的主目录中创建mnt_CD.ksh脚本。 该脚本检查由LPAR1中的用户脚本在/ var / tools / CDs文件夹中创建的现有标志文件。
| 标记文件 | 描述 | 脚本完成的动作 |
|---|---|---|
| ISO_file.mount | 包含要挂载的ISO文件名 | 将虚拟光盘(ISO文件)从虚拟介质库加载到虚拟光学设备中 |
| ISO_file.umount | 是删除虚拟光学设备的触发器 | 从虚拟光学设备中删除虚拟光学介质磁盘 |
| ISO_file.remove | 包含要删除的ISO文件名 | 删除相应的ISO文件名 |
每次迭代后,脚本都会删除现有的标志文件。 该脚本还会生成一个报告。 您可以在mount_CD.ksh脚本中找到更多详细信息。
必须根据您的本地配置设置mnt_CD.ksh脚本中的某些参数。
清单6. mnt_CD.ksh脚本
$ ls -l /home/padmin/mnt_CD.ksh
-rwxr-xr-x 1 padmin staff 1929 Sep 23 08:46 /home/padmin/mnt_CD.ksh
该脚本必须在根目录的crontab文件中进行固定。
清单7.在根目录的crontab文件中添加一个新条目
#crontab –e
Append the following entry :
* * * * * su - padmin " -c mnt_CD.ksh " > /tmp/MNT_CD.log 2>&1
Save and close file.
LPAR1实施
从LPAR1服务器,工具用户可以启动脚本来装载或卸载CD。 提供了三个脚本:
| 脚本 | 描述 |
|---|---|
| mount_CD.ksh | 复制或挂载ISO文件 |
| umount_CD.ksh | 卸载或删除ISO文件 |
| check_CD.ksh | 在VIOS上显示由自动脚本生成的报告 |
使用前的mount_CD.ksh或umount_CD.ksh脚本检查与check_CD.ksh脚本配置。
check_CD脚本
check_CD.ksh脚本显示由VIOS上的定期脚本生成的报告。 -h选项提供有关用法的信息。 check_CD.ksh脚本的语法为check_CD.ksh [-h] 。
该脚本从VIO生成报告并将其显示为状态。 该报告分为三个部分:
第一部分提供有关定期脚本执行的最新操作的结果。 第二部分提供有关映射到LPAR2的虚拟设备的状态(尤其是有关虚拟光学设备及其后备设备的状态),第三部分提供有关虚拟介质存储库的信息。
例子1. check_CD.ksh输出
INFO - : DATE: 09/28/11 TIME: 02:28:00 --> ========= Tasks done by script ========
INFO - : DATE: 09/28/11 TIME: 02:28:00 --> No CD to mount
INFO - : DATE: 09/28/11 TIME: 02:28:00 --> No CD to umount
INFO - : DATE: 09/28/11 TIME: 02:28:00 --> No Removal requested
INFO - : DATE: 09/28/11 TIME: 02:28:00 -->
=================== Vhost status ===================================
SVSA Physloc Client Partition ID
--------------- -------------------------------------------- ------------------
vhost9 U9117.MMA.10D8D22-V2-C44 0x00000010
……
……
VTD vtopt1
Status Available
LUN 0x8400000000000000
Backing device /var/vio/VMLibrary/HACMP_5.4.1.iso
Physloc
INFO - : DATE: 09/28/11 TIME: 02:28:01 -->
=================== CD Library list ================================
Size(mb) Free(mb) Parent Pool Parent Size Parent Free
16322 7456 lparvg 2856960 2049024
Name File Size Optical Access
HACMP_5.4.1.iso 457 vtopt1 rw
IBM_Installation_Toolkit_42.iso 1590 None rw
TEST_Toolkit_42.iso 1590 None rw
VIO21-1108.iso 67 None rw
rhel_srv_56_ppc.iso 3680 vtopt0 rw
mount_CD脚本
mount_CD.ksh脚本用于在必要时在虚拟介质库中复制ISO文件,并将其添加到链接到LPAR2服务器的虚拟光学设备。 脚本必须以工具用户身份启动。 适用以下语法:
mount_CD.ksh <-f <ISO file>> [-c] [-h]
选项包括:
| -f <ISO文件> | 表示要传输和挂载的ISO文件 |
|---|---|
| -C | 表示必须将ISO文件复制到VIOS(在虚拟媒体库内部) |
| -H | 提供用法 |
装入CD之前,请确保与虚拟光学设备关联的后备设备是空闲的。 通过使用check_CD.ksh脚本进行检查。
例子2.复制MY_CD.iso文件并挂载它
$ mount_CD.ksh –f MY_CD.iso –c
例子3.以工具用户的身份在LPAR1服务器上挂载已经复制的ISO文件
$ mount_CD.ksh –f MY_CD.iso
等待至少1分钟,以确保在虚拟光学设备中定义了ISO文件。 通过使用check_CD.ksh脚本和有关虚拟光学设备的后备设备的验证行来进行检查。
确保一切正常之后,您可以使用适当的安装命令将CD装载到LPAR2服务器上。
在LPAR2服务器上,运行以下命令:
$ mount -o ro -v cdrfs / dev / cd#/ mnt
/ dev / cd#是VIOS上虚拟光学设备的关联设备。
umount_CD脚本
名称:umount_CD.ksh
语法: umount_CD.ksh <-f <ISO file>> [-r [-h]
描述:
umount_CD.ksh脚本用于在必要时删除虚拟介质库中的ISO文件,并释放与虚拟光学设备关联的后备设备。 脚本必须以工具用户身份启动。
选项:
| -f <ISO文件> | 指示要删除的ISO文件(在虚拟媒体库内部) |
|---|---|
| -r | 表示必须删除ISO文件(在虚拟媒体库内部) |
| -H | 提供用法 |
警告:
释放后备设备之前,必须从LPAR2服务器卸载CD。
例子4.仅删除一个现有的ISO文件MY_CD.iso
$ umount_CD.ksh -r MY_CD.iso
使用check_CD.ksh脚本检查结果,并验证媒体库列表中不存在MY_CD.iso文件。
示例5.释放虚拟光学设备的后备设备
$ umount_CD.ksh –u
使用check_CD.ksh脚本检查结果,并验证后备设备是否已释放。
摘要
在本文中,我们描述了如何在不具有VIOS管理员权限的情况下在LPAR上安装CD / DVD。 这个示例不是很复杂,因为我们有一个单独的LPAR(LPAR1和LPAR2),但这不是强制性的。 通过改进脚本,您只能拥有一个LPAR或一个以上的目标LPAR。 您还可以改进脚本以添加更多功能。 不过,描述了提供此服务的依据。
翻译自: https://www.ibm.com/developerworks/aix/library/au-aix-cd-dvd/index.html
2525

被折叠的 条评论
为什么被折叠?



