2013年5月1日水曜日

Oracle VM CLI の自動化はexpectで。

Oracle VM CLI で処理を自動化するときは、
expect コマンドを使用します。

expect は、コマンド実行を自動化することができるツールで、
Linuxでは標準的に使用されます。
RPMは、Oracle Linux のインストールDVD(もしくはISOイメージ)に同梱されています。

Oracle VM のマニュアルでも、expectによるスクリプト化を説明しています。
Oracle VM
Command Line Interface User's Guide for Release 3.2.1
1.6. Using Expect Scripts
http://docs.oracle.com/cd/E35328_01/E35336/html/vmcli-script.html

今回は、とりあえず expect をインストールします。
導入先のOSは、Oracle Linux 5.9 です。
[root@ovmm31 ~]# cat /etc/oracle-release
Oracle Linux Server release 5.9

まず、OracleLinuxのインストールDVDをマウントしておきます。
[root@ovmm31 ~]# mount /dev/cdrom /media/
mount: ブロックデバイス /dev/cdrom は書き込み禁止です、読込み専用でマウントします

Yumリポジトリの登録ファイルを作成し、
YumコマンドがマウントしたDVDからRPMをインストールできるようにします。
既にファイルがある場合は、一時的にリネームして退避しておきます。
[root@ovmm31 ~]# cd /etc/yum.repos.d/
[root@ovmm31 yum.repos.d]# mv public-yum-el5.repo public-yum-el5.repo_bk
[root@ovmm31 yum.repos.d]# vi dvd.repo

(記載例)
[OEL59-dvd-Server]
name=OEL59-dvd-Server
baseurl=file:///media/Server
gpgcheck=0
enabled=1

Yumコマンドで expect をインストールします。
[root@ovmm31 ~]# yum install expect
Loaded plugins: rhnplugin, security
This system is not registered with ULN.
You can use up2date --register to register.
ULN support will be disabled.
OEL59-dvd-Server                                                    | 1.1 kB     00:00
OEL59-dvd-Server/primary                                            | 1.5 MB     00:00
OEL59-dvd-Server                                                                 3344/3344
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package expect.i386 0:5.43.0-8.el5 set to be updated
--> Processing Dependency: libtcl8.4.so for package: expect
---> Package expect.x86_64 0:5.43.0-8.el5 set to be updated
--> Running transaction check
---> Package tcl.i386 0:8.4.13-6.el5 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
==================================================================
 Package          Arch             Version                Repository                  Size
==================================================================
Installing:
 expect           i386             5.43.0-8.el5           OEL59-dvd-Server           158 k
 expect           x86_64           5.43.0-8.el5           OEL59-dvd-Server           161 k
Installing for dependencies:
 tcl              i386             8.4.13-6.el5           OEL59-dvd-Server           1.3 M
Transaction Summary
==================================================================
Install       3 Package(s)
Upgrade       0 Package(s)
Total download size: 1.6 M
Is this ok [y/N]: y
Downloading Packages:
------------------------------------------------------------------
Total                                                       27 MB/s | 1.6 MB     00:00
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : expect                                                              1/3
  Installing     : tcl                                                                 2/3
  Installing     : expect                                                              3/3
Installed:
  expect.i386 0:5.43.0-8.el5                  expect.x86_64 0:5.43.0-8.el5
Dependency Installed:
  tcl.i386 0:8.4.13-6.el5
Complete!
[root@ovmm31 ~]#

インストールされました。
root@ovmm31 ~]# expect -v
expect version 5.43.0

以上、とりあえず expect をインストールしました。つづく…

0 件のコメント:

コメントを投稿