ESX.confをいじって起動しなくなってしまったり、/etc/vmware/passthru.confをいじって紫色の画面からリカバれなくなったときのメモ
設定手順
ディスクを適当なLinuxにマウントさせる
USBメモリ等で起動していたら、そのUSBメモリをLinuxでマウントします。
SANとかから起動していたときは…がんばれ
ディスクを認識すると、ディスクは以下のようなパーティションが切られています。
root@debian:/# fdisk -l Disk /dev/sde: 7.4 GiB, 7913816064 bytes, 15456672 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: gpt Disk identifier: F8AACB19-044B-4685-BE93-D7E326BFC728 Device Start End Sectors Size Type /dev/sde1 64 8191 8128 4M EFI System /dev/sde2 1843200 10229759 8386560 4G Microsoft basic data /dev/sde3 10229760 15456638 5226879 2.5G unknown /dev/sde5 8224 520191 511968 250M Microsoft basic data /dev/sde6 520224 1032191 511968 250M Microsoft basic data /dev/sde7 1032224 1257471 225248 110M unknown /dev/sde8 1257504 1843199 585696 286M Microsoft basic data
自分の場合、sde6が最新のデータでした。もしかしたら5とかその他になる可能性もありますが、その場合は適当に見比べてください
root@debian:/# mount /dev/sde6 /a root@debian:/# ls /a/ a.b00 b.b00 ipmi_ipm.v00 misc_dri.v00 net_enic.v00 net_ixgb.v00 rste.v00 scsi_aac.v00 scsi_lpf.v00 state.tgz ata_pata.v00 block_cc.v00 ipmi_ipm.v01 mtip32xx.v00 net_forc.v00 net_mlx4.v00 sata_ahc.v00 scsi_adp.v00 scsi_meg.v00 s.v00 ata_pata.v01 boot.cfg ipmi_ipm.v02 net_be2n.v00 net_ib_c.v00 net_mlx4.v01 sata_ata.v00 scsi_aic.v00 scsi_meg.v01 tboot.b00 ata_pata.v02 chardevs.b00 jumpstrt.gz net_bna.v00 net_ib_c.v01 net_mlx4.v02 sata_sat.v00 scsi_bnx.v00 scsi_meg.v02 uhci_usb.v00 ata_pata.v03 ehci_ehc.v00 k.b00 net_bnx2.v00 net_ib_i.v00 net_nx_n.v00 sata_sat.v01 scsi_bnx.v01 scsi_mpt.v00 user.b00 ata_pata.v04 elxnet.v00 lpfc.v00 net_bnx2.v01 net_ib_m.v00 net_tg3.v00 sata_sat.v02 scsi_fni.v00 scsi_mpt.v01 useropts.gz ata_pata.v05 esx_dvfi.v00 lsi_mr3.v00 net_cnic.v00 net_ib_s.v00 net_vmxn.v00 sata_sat.v03 scsi_hps.v00 scsi_mpt.v02 weaselin.t00 ata_pata.v06 ima_qla4.v00 lsi_msgp.v00 net_e100.v00 net_ib_u.v00 ohci_usb.v00 sata_sat.v04 scsi_ib_.v00 scsi_qla.v00 xlibs.v00 ata_pata.v07 imgdb.tgz misc_cni.v00 net_e100.v01 net_igb.v00 qlnative.v00 sb.v00 scsi_ips.v00 scsi_qla.v01 xorg.v00
中身が読めればOKです
state.tgzを解凍して編集する
/bootbank/state.tgzが起動時に読み込まれる/etc/以下の設定になるので、state.tgzを解凍します。
すると、中からlocal.tgzが出てくるので、更に解凍し、etc/以下の中身を編集します。
root@debian:/# cd /tmp root@debian:/tmp# tar xf /a/state.tgz -C /tmp/ root@debian:/tmp# ls local.tgz root@debian:/tmp# tar xf local.tgz root@debian:/tmp# ls etc local.tgz root@debian:/tmp# find ./etc/ ./etc/vmware/hostd/vmAutoStart.xml ./etc/vmware/hostd/pools.xml ./etc/vmware/hostd/vmInventory.xml ./etc/vmware/hostd/hostsvc.xml ./etc/vmware/hostd/authorization.xml ./etc/vmware/ssl/rui.crt ./etc/vmware/ssl/rui.key ./etc/vmware/dvsdata.db ./etc/vmware/config ./etc/vmware/esx.conf ./etc/vmware/locker.conf ./etc/vmware/.backup.counter ./etc/vmware/passthru.map ./etc/vmware/license.cfg ./etc/vmware/snmp.xml ./etc/vmware/vmware.lic ./etc/vmware/vpxa/vpxa.cfg ./etc/ssh/ssh_host_dsa_key ./etc/ssh/ssh_host_dsa_key.pub ./etc/ssh/ssh_host_rsa_key.pub ./etc/ssh/ssh_host_rsa_key ./etc/ssh/sshd_config ./etc/vmsyslog.conf.d/hostd.conf ./etc/vmsyslog.conf.d/vpxa.conf ./etc/vmsyslog.conf.d/fdm.conf ./etc/security/access.conf ./etc/shadow ./etc/keymap ./etc/passwd ./etc/resolv.conf ./etc/dhclient-vmk0.leases ./etc/chkconfig.db ./etc/random-seed ./etc/vmsyslog.conf ./etc/hosts ./etc/sfcb/uuid ./etc/sfcb/sfcb.cfg ./etc/sfcb/repository/root/config/omc_namespaceconfig.idx ./etc/sfcb/repository/root/config/omc_config.idx ./etc/sfcb/repository/root/config/omc_config ./etc/sfcb/repository/root/config/omc_namespaceconfig ./etc/sfcb/repository/root/interop/sfcb_registeredprofile.idx ./etc/sfcb/repository/root/interop/cim_listenerdestinationcimxml.idx ./etc/sfcb/repository/root/interop/cim_indicationfilter.idx ./etc/sfcb/repository/root/interop/sfcb_registeredprofile ./etc/sfcb/repository/root/interop/cim_indicationsubscription.idx ./etc/sfcb/repository/root/interop/cim_indicationhandlercimxml.idx ./etc/ntp.conf
解凍後、目当てのファイルを編集します。
ファイルを固め直す
編集したect/配下を、再度圧縮します。その際には、local.tgzという名前で圧縮します。
root@debian:/tmp# mv local.tgz local.tgz_ root@debian:/tmp# tar zcf local.tgz etc/ root@debian:/tmp# tar tvf local.tgz drwxr-xr-x root/root 0 2016-02-08 05:27 etc/ -rw-r--r-- root/root 107 2016-02-08 03:15 etc/ntp.conf drwxr-xr-x root/root 0 2016-02-08 05:27 etc/sfcb/ drwxr-xr-x root/root 0 2016-02-08 05:27 etc/sfcb/repository/ drwxr-xr-x root/root 0 2016-02-08 05:27 etc/sfcb/repository/root/ drwxr-xr-x root/root 0 2016-02-08 05:27 etc/sfcb/repository/root/interop/ -rw-r--r-- root/root 0 2014-08-23 11:30 etc/sfcb/repository/root/interop/cim_indicationhandlercimxml.idx -rw-r--r-- root/root 0 2014-08-23 11:30 etc/sfcb/repository/root/interop/cim_indicationsubscription.idx -rw-r--r-- root/root 508 2016-02-08 03:15 etc/sfcb/repository/root/interop/sfcb_registeredprofile -rw-r--r-- root/root 0 2014-08-23 11:30 etc/sfcb/repository/root/interop/cim_indicationfilter.idx -rw-r--r-- root/root 0 2014-08-23 11:30 etc/sfcb/repository/root/interop/cim_listenerdestinationcimxml.idx -rw-r--r-- root/root 39 2016-02-08 03:15 etc/sfcb/repository/root/interop/sfcb_registeredprofile.idx drwxr-xr-x root/root 0 2016-02-08 05:27 etc/sfcb/repository/root/config/ -rw-r--r-- root/root 596 2016-02-08 03:15 etc/sfcb/repository/root/config/omc_namespaceconfig -rw-r--r-- root/root 384 2016-02-08 03:15 etc/sfcb/repository/root/config/omc_config -rw-r--r-- root/root 29 2016-02-08 03:15 etc/sfcb/repository/root/config/omc_config.idx -rw-r--r-- root/root 56 2016-02-08 03:15 etc/sfcb/repository/root/config/omc_namespaceconfig.idx -rw-r--r-- root/root 934 2016-02-08 03:15 etc/sfcb/sfcb.cfg -rw-r--r-- root/root 36 2016-02-08 03:15 etc/sfcb/uuid -rw-r--r-- root/root 183 2016-02-08 03:15 etc/hosts -rw-r--r-- root/root 146 2016-02-08 03:16 etc/vmsyslog.conf -rw------T root/root 512 2016-02-08 03:55 etc/random-seed -rw-r--r-- root/root 902 2016-02-08 03:16 etc/chkconfig.db -rw-r--r-- root/root 744 2016-02-08 03:15 etc/dhclient-vmk0.leases -rw-r--r-- root/root 22 2016-02-08 03:15 etc/resolv.conf -rw-r--r-- root/root 251 2016-02-08 03:15 etc/passwd -rw-r--r-- root/root 9 2016-02-08 03:15 etc/keymap -rw------- root/root 363 2016-02-08 03:15 etc/shadow drwxr-xr-x root/root 0 2016-02-08 05:27 etc/security/ -rw-r--r-- root/root 114 2016-02-08 03:16 etc/security/access.conf drwxr-xr-x root/root 0 2016-02-08 05:27 etc/vmsyslog.conf.d/ -rw-r--r-- root/root 219 2016-02-08 03:15 etc/vmsyslog.conf.d/fdm.conf -rw-r--r-- root/root 225 2016-02-08 03:15 etc/vmsyslog.conf.d/vpxa.conf -rw-r--r-- root/root 234 2016-02-08 03:15 etc/vmsyslog.conf.d/hostd.conf drwxr-xr-x root/root 0 2016-02-08 05:27 etc/ssh/ -rw------- root/root 755 2016-02-08 03:15 etc/ssh/sshd_config -r-------- root/root 1704 2016-02-08 03:15 etc/ssh/ssh_host_rsa_key -rw------- root/root 381 2016-02-08 03:15 etc/ssh/ssh_host_rsa_key.pub -rw-r--r-- root/root 604 2016-02-08 03:15 etc/ssh/ssh_host_dsa_key.pub -rw------- root/root 672 2016-02-08 03:15 etc/ssh/ssh_host_dsa_key drwxr-xr-x root/root 0 2016-02-08 05:29 etc/vmware/ drwxr-xr-x root/root 0 2016-02-08 05:27 etc/vmware/vpxa/ -r--r--r-- root/root 2193 2016-02-08 03:17 etc/vmware/vpxa/vpxa.cfg -rw------- root/root 29 2016-02-08 03:15 etc/vmware/vmware.lic -rw-r--r-- root/root 278 2016-02-08 03:15 etc/vmware/snmp.xml -rw-r--r-- root/root 310 2016-02-08 03:15 etc/vmware/license.cfg -rw-r--r-- root/root 885 2016-02-08 05:29 etc/vmware/passthru.map -rw-r--r-- root/root 138 2016-02-08 03:55 etc/vmware/.backup.counter -rw-r--r-- root/root 51 2016-02-08 03:16 etc/vmware/locker.conf -rw------- root/root 33778 2016-02-08 03:55 etc/vmware/esx.conf -rw-r--r-- root/root 1476 2016-02-08 03:17 etc/vmware/config -rw-r--r-- root/root 512 2016-02-08 03:51 etc/vmware/dvsdata.db drwxr-xr-x root/root 0 2016-02-08 05:27 etc/vmware/ssl/ -r-------- root/root 1704 2016-02-08 03:15 etc/vmware/ssl/rui.key -rw-r--r-- root/root 1428 2016-02-08 03:15 etc/vmware/ssl/rui.crt drwxr-xr-x root/root 0 2016-02-08 05:27 etc/vmware/hostd/ -rw-r--r-- root/root 885 2016-02-08 03:15 etc/vmware/hostd/authorization.xml -rw-r--r-- root/root 137 2016-02-08 03:17 etc/vmware/hostd/hostsvc.xml -rw-r--r-- root/root 550 2016-02-08 03:15 etc/vmware/hostd/vmInventory.xml -rw-r--r-- root/root 617 2016-02-08 03:16 etc/vmware/hostd/pools.xml -rw-r--r-- root/root 399 2016-02-08 03:16 etc/vmware/hostd/vmAutoStart.xml root@debian:/tmp# tar zcf state.tgz local.tgz
ファイルを固め直す2
local.tgzという名前で圧縮したアーカイブを、更にstate.tgzというファイル名で圧縮します。2重圧縮になりますが、以下のような構造になります。
state.tgz
└local.tgz
└etc/
└....
root@debian:/tmp# tar zcf state.tgz local.tgz root@debian:/tmp# tar tvf state.tgz -rw-r--r-- root/root 18397 2016-02-08 05:34 local.tgz
bootbankに移動する
圧縮ししたファイルを元のbootbankに戻します。元のファイルも一応取っておいた方が良いと思われるので、適当にstate.tgz_にリネームします
root@debian:/tmp# mv /a/state.tgz /a/state.tgz_ root@debian:/tmp# mv state.tgz /a/ root@debian:/tmp# umount /a
その後、マウントを解除し元のホストに戻します。
ホストの電源を入れ、神に祈る
元のホストに戻したら、電源を入れます。起動するかどうかは普段の行い次第なので、神に祈ります。
普段の行いが良ければ、変更が反映されホストが上がってきます。
参考
また、/boot/state.tgzは、次のシャットダウン/再起動時か、1時間おきに必要であれば更新される。
/etc/配下のファイルの変更を即時に反映するには
/sbin/auto-backup.sh
を実行する。
Related articles