サーバ復旧

Prev Next

VPC環境で利用できます。

正常に起動しないサーバを復旧する方法について説明します。

Single Modeエントリー

以下の状況に該当する場合は、シングルモードに入ってサーバを復旧します。

シングルモードに入ってサーバを復旧する方法は、次の通りです。

  1. サーバリストから起動するサーバをクリックして選択し、 [強制停止] ボタンをクリックします。
    server-ts-repair-vpc-01_ko.png
  2. [開始] ボタンをクリックして停止したサーバを起動した後、 [サーバアクセスコンソール] ボタンをクリックします。
    server-ts-repair-vpc-02_ko.png
  3. OS別シングルモードへのエントリー方法を確認し、サーバの復旧手順を行います。

CentOS Single Modeエントリー

CentOSでシングルモードに入ってサーバを復旧する方法は、次の通りです。

  1. カーネルバージョン選択画面で eを入力し、起動パラメータの変更画面に入ります。
    server-ts-repair-vpc-03

  2. 次のようにパラメータを変更した後、 [Ctrl] + [x] キーを押して変更された起動パラメータで OSを起動します。
    rorw init=/sysroot/bin/bashに変更し、rhgb quietを削除します。
    server-ts-repair-vpc-04

  3. シングルモードに入ります。
    server-ts-repair-vpc-05

  4. 次のコマンドを実行してサーバのパーティション領域をマウントします。

    :/# chroot /sysroot
    

Ubuntu Single Modeエントリー

Ubuntuでシングルモードに入ってサーバを復旧する方法は、次の通りです。

  1. カーネルバージョン選択画面で eを入力し、起動パラメータの変更画面に入ります。
    server-ts-repair-vpc-06

  2. 次のようにパラメータを変更した後、 [Ctrl] + [x] キーを押して変更された起動パラメータで OSを起動します。
    rorw single init=/bin/bashに変更します。
    server-ts-repair-vpc-07

  3. シングルモードに入ります。
    server-ts-repair-vpc-08

Rocky Linux Single Modeエントリー

Rocky Linuxでシングルモードに入ってサーバを復旧する方法は、次の通りです。

  1. カーネルバージョン選択画面で eを入力し、起動パラメータの変更画面に入ります。
    server-ts-repair-vpc-09
  2. 次のようにパラメータを変更した後、 [Ctrl] + [x] キーを押して変更された起動パラメータで OSを起動します。
    rorw init=/sysroot/bin/bashに変更します。
    server-ts-repair-vpc-10
  3. シングルモードに入ります。
    server-ts-repair-vpc-11
  4. 次のコマンドを実行してサーバのパーティション領域をマウントします。
    :/# chroot /sysroot
    

ブートカーネル変更

OS別ブートカーネルを変更してサーバを復旧する方法は、次の通りです。

CentOSブートカーネルの変更

CentOSでブートカーネルを変更する方法は、次の通りです。ここではブートカーネルを CentOS Linux (3.10.0-1127.19.1.el7.x86_64) 7 (Core)に変更する例で説明します。

  1. 次のコマンドを実行して現在のカーネル設定を確認します。
    [root@centos ~]# grub2-editenv list
    saved_entry=CentOS Linux (3.10.0-1127.el7.x86_64) 7 (Core)
    
  2. 次のコマンドを実行してカーネルリストを確認します。
    [root@centos ~]# grep ^menuentry /boot/grub2/grub.cfg | cut -d "'" -f2
    CentOS Linux (3.10.0-1127.19.1.el7.x86_64) 7 (Core)
    CentOS Linux (3.10.0-1127.el7.x86_64) 7 (Core)
    CentOS Linux (0-rescue-4bfdd392cea14cb58d22427c1c69c5df) 7 (Core)
    
  3. デフォルトブートカーネル設定を変更した後、次のコマンドを実行して変更されたカーネル設定を確認します。
    [root@centos ~]# grub2-set-default "CentOS Linux (3.10.0-1127.19.1.el7.x86_64) 7 (Core)"
    
    [root@centos ~]# grub2-editenv list
    saved_entry=CentOS Linux (3.10.0-1127.19.1.el7.x86_64) 7 (Core)
    
  4. サーバを再起動した後、次のコマンドを実行してカーネルを確認します。
    [root@centos ~]# reboot
    
    [root@centos ~]# uname -r
    3.10.0-1127.19.1.el7.x86_64
    

Ubuntuブートカーネルの変更

Ubuntuでブートカーネルを変更する方法は、次の通りです。ここではブートカーネルを 5.4.0-131-genericに変更する例で説明します。

  1. 次のコマンドを実行して現在のカーネル設定を確認します。
    root@ubuntu:~# cat /etc/default/grub | grep GRUB_DEFAULT
    GRUB_DEFAULT=0
    
  2. 次のコマンドを実行してカーネルリストを確認します。
     root@ubuntu:~# awk -F"--class" '/menuentry/ && /with Linux/ {print $1}' /boot/grub/grub.cfg | awk '{print i++ " : " $5,$6,$7,$8}' | sed -e "s/'/ /g"
     0 : 5.4.0-182-generic    
     1 : 5.4.0-182-generic (recovery mode)  
     2 : 5.4.0-131-generic    
     3 : 5.4.0-131-generic (recovery mode)
    
  3. デフォルトブートカーネル設定を変更した後、次のコマンドを実行して変更されたカーネル設定を確認します。
    root@ubuntu:~# sed -i 's/GRUB_DEFAULT=.*/GRUB_DEFAULT=saved/g' /etc/default/grub
    
    root@ubuntu:~# grep "GRUB_DEFAULT" /etc/default/grub
    GRUB_DEFAULT=saved
    
    root@ubuntu:~# grub-set-default "Advanced options for Ubuntu>Ubuntu, with Linux 5.4.0-131-generic"
    
     root@ubuntu:~# grub-editenv list
     saved_entry=Advanced options for Ubuntu>Ubuntu, with Linux 5.4.0-131-generic
    
     root@ubuntu:~# update-grub
     Sourcing file `/etc/default/grub'
     Sourcing file `/etc/default/grub.d/init-select.cfg'
     Generating grub configuration file ...
     Found linux image: /boot/vmlinuz-5.4.0-182-generic
     Found initrd image: /boot/initrd.img-5.4.0-182-generic
     Found linux image: /boot/vmlinuz-5.4.0-131-generic
     Found initrd image: /boot/initrd.img-5.4.0-131-generic
     done
    
  4. サーバを再起動した後、次のコマンドを実行してカーネルを確認します。
    root@ubuntu:~# reboot
    
    root@ubuntu:~# uname -r
    5.4.0-131-generic
    

Rocky Linuxブートカーネル変更

Rocky Linuxでブートカーネルを変更する方法は、次の通りです。ここではブートカーネルを Rocky Linux (4.18.0-553.5.1.el8_10.x86_64) 8.8 (Green Obsidian)に変更する例で説明します。

参考

Rocky Linux 8で、XEN環境では grub2をデフォルトブートローダとして使用しており、KVM環境では BLSCFG(BootLoaderSpec Configuration)がデフォルトです。したがって、XEN環境では grub2コマンドを使用し、KVM環境では grubbyコマンドを使用する必要があります。

  1. 次のコマンドを実行して現在のカーネル設定を確認します。

    • XEN環境の Rocky Linux 8
     [root@rockylinux ~]# grub2-editenv list
    saved_entry=a4746ff35a7a4d2a9f4280ec20051fb6-4.18.0-553.el8_10.x86_64
    boot_success=0
    
    • KVM環境の Rocky Linux 8
     [root@kvm-rockylinux ~]# grubby --default-kernel
     /boot/vmlinuz-4.18.0-553.el8_10.x86_64
    
  2. 次のコマンドを実行してカーネルリストを確認します。

    • XEN環境の Rocky Linux 8
     [root@rockylinux ~]# grep ^menuentry /boot/grub2/grub.cfg | cut -d "'" -f2
    Rocky Linux (4.18.0-553.5.1.el8_10.x86_64) 8.8 (Green Obsidian)
    Rocky Linux (4.18.0-553.el8_10.x86_64) 8.8 (Green Obsidian)
    Rocky Linux (4.18.0-477.13.1.el8_8.x86_64) 8.8 (Green Obsidian)
    Rocky Linux (0-rescue-a4746ff35a7a4d2a9f4280ec20051fb6) 8.8 (Green Obsidian)
    
    • KVM環境の Rocky Linux 8
     [root@kvm-rockylinux ~]# grubby --info=ALL | grep ^kernel
    kernel="/boot/vmlinuz-4.18.0-553.5.1.el8_10.x86_64"
    kernel="/boot/vmlinuz-4.18.0-553.el8_10.x86_64"
    kernel="/boot/vmlinuz-4.18.0-477.27.1.el8_8.x86_64"
    kernel="/boot/vmlinuz-0-rescue-2faf2183dcf14a70b2b32e1b9fe6e4e9"
    
  3. デフォルトブートカーネル設定を変更した後、次のコマンドを実行して変更されたカーネル設定を確認します。

    • XEN環境の Rocky Linux 8
     [root@rockylinux ~]# grub2-set-default "Rocky Linux (4.18.0-553.5.1.el8_10.x86_64) 8.8 (Green Obsidian)"
    
     [root@rockylinux ~]# grub2-editenv list
    saved_entry=Rocky Linux (4.18.0-553.5.1.el8_10.x86_64) 8.8 (Green Obsidian)
    boot_success=0
    
    • KVM環境の Rocky Linux 8
     [root@kvm-rockylinux ~]# grubby --set-default="/boot/vmlinuz-4.18.0-553.5.1.el8_10.x86_64"
     The default is /boot/loader/entries/2faf2183dcf14a70b2b32e1b9fe6e4e9-4.18.0-553.5.1.el8_10.x86_64.conf with index 0 and kernel /boot/vmlinuz-4.18.0-553.5.1.el8_10.x86_64
    
     [root@kvm-rockylinux ~]# grubby --default-kernel
     /boot/vmlinuz-4.18.0-553.5.1.el8_10.x86_64
    
  4. サーバを再起動した後、次のコマンドを実行してカーネルを確認します。

     [root@kvm-rockylinux ~]# reboot
    
     [root@kvm-rockylinux ~]# uname -r
     4.18.0-553.5.1.el8_10.x86_64
    

サーバ復旧不可時にスナップショットによるデータ復旧方法

シングルモードエントリー、またはブートカーネルの変更でサーバの復旧が不可な場合、作成されたスナップショットを使用して希望するサーバに新しいストレージを作成すると、保存されたデータを復旧できます。
スナップショットでデータを復旧する方法は、次の通りです。

  1. スナップショット作成ガイドを参考にスナップショットを作成します。

  2. スナップショットでストレージ作成ガイドを参考にスナップショットを使用してストレージを作成し、サーバにマウントします。

参考
  • スナップショットからストレージのデータを読み取り復旧するため、ディスクパーティション、ストレージフォーマット作業は省略します。
  • 他のサーバの起動用デフォルトストレージでスナップショットを作成したり、ストレージを追加したサーバの既存ストレージのうち1つからスナップショットを作成した場合、ソースサーバのストレージと作成したストレージの識別子が重複するため、マウントできません。
  • ストレージ識別子の変更を参考に作成したストレージの識別子を変更してください。
  1. ストレージをマウントしたパスにアクセスしてデータを復旧します。