ディスク修正とは

[更新: 2018年6月7日]

さくらのクラウドのディスク修正機能に関するページです。

1. 概要

ディスクの修正機能は、サーバに接続するディスクの初期設定を行い、IPアドレスやログインアカウントのパスワードなどを設定、変更する機能です。

以下の操作を行ってOSのインストールが完了した直後に動作します。

  • サーバを作成する際
  • ディスクをコピーする際
  • ディスクにOSを再インストールする際

対応OS

CentOS、Debian、Ubuntu、FreeBSD、CoreOS、Windows、RancherOSの各バージョンです。 OSとしてCentOSを採用しているパブリックアーカイブであるSiteGuard LiteおよびKUSANAGIの各バージョンにも対応しています。

※本機能は弊社提供のパブリックアーカイブに対して動作保証をしております。
※Windowsのディスク修正機能詳細は こちらのページ をご参照ください。
※RancherOSのディスク修正機能詳細は こちらのページ をご参照ください。

2. ディスク修正機能の利用方法

ディスク修正機能は以下の操作にて利用できます。

  • サーバ作成時に、設定画面から「ディスクの修正をする」にチェックを入れて作成する
  • ディスクのメニューの「ディスクの修正」を選択し、修正を行う

※ディスクが接続されたサーバの電源がOFFになっている、または、ディスクがサーバに接続されていない場合に実行可能です。

3. ディスク修正機能により修正される項目

ディスク修正は、ユーザが明示的に指定できる項目と、ディスク修正機能が自動的に行う項目があります。

◆ユーザが指定可能な修正

ユーザが指定可能な修正は以下の通りです。コントロールパネルのフォームで修正内容を指定することが可能です。

IPアドレス、ネットマスク、デフォルトゲートウェイ(ルータ+スイッチ/スイッチ接続時)、DHCP

固定IPアドレスを設定された場合、対象のディスクがサーバに接続されているとき、そのサーバに設定されているIPアドレスを、サーバ起動時に有効になるように設定します。ディスクに設定するIPアドレス、ネットマスク、デフォルトゲートウェイはディスク修正画面で指定します。

DHCPを選択された場合、DHCPでIPアドレスを設定します。

CentOS 5.x/6.x /etc/sysconfig/network-scripts/ifcfg-eth0 にIPアドレスとネットマスクを、/etc/sysconfig/network にゲートウェイを設定します
CentOS 7.x /etc/sysconfig/network-scripts/ifcfg-eth0 に設定します
Debian, Ubuntu 18.04 LTS 未満 /etc/network/interfaces に設定します
Ubuntu 18.04 LTS 以上 /etc/netplan/01-netcfg.yaml に設定します
FreeBSD /etc/rc.conf に設定します
CoreOS cloud-config.yml に設定します

ホスト名

サーバのhostnameとして登録する名前です。

CentOS 5.x/6.x, /etc/sysconfig/networkの変数HOSTNAMEを設定します
CentOS 7.x, Debian, Ubuntu /etc/hostnameに設定します
FreeBSD /etc/rc.confの変数hostnameを設定します
CoreOS cloud-config.ymlに設定します

パスワード

管理者アカウントのパスワードです。多くのOSではrootのパスワードです。Ubuntuでは、ユーザ「ubuntu」のパスワードとなります。

公開鍵

管理者アカウントのホームディレクトリの.ssh/authorized_keysに、指定する公開鍵を追加します。

パスワードでのSSHログインの無効化

公開鍵を選択した状態にすると、「パスワード/チャレンジレスポンスでのSSHログインを許可しない」という項目が選択できるようになります。詳しくは よくある質問(セキュリティ事項) をご覧ください。

スタートアップスクリプト

指定するスタートアップスクリプトをコピーし、起動するように設定します。この機能はCoreOSでは利用できません。

◆自動的に実行される修正

ユーザの指定によらず以下の項目は自動的に修正されます。

IPアドレス、ネットマスク、デフォルトゲートウェイ(共有セグメント接続時)

対象のディスクがサーバに接続されているとき、そのサーバに設定されているIPアドレスを、サーバ起動時に有効になるように設定します。IPアドレスはシステムが割り当てるため、任意に付与することはできません。

CentOS 5.x/6.x /etc/sysconfig/network-scripts/ifcfg-eth0 にIPアドレスとネットマスクを、/etc/sysconfig/network にゲートウェイを設定します
CentOS 7.x /etc/sysconfig/network-scripts/ifcfg-eth0 に設定します
Debian, Ubuntu 18.04 LTS 未満 /etc/network/interfaces に設定します
Ubuntu 18.04 LTS 以上 /etc/netplan/01-netcfg.yaml に設定します
FreeBSD /etc/rc.conf に設定します
CoreOS cloud-config.yml に設定します

resolv.conf

対象のディスクがサーバに接続されているとき、そのサーバに適したネームサーバを設定します。設定されるネームサーバは、コントロールパネルの NIC タブで確認できるものと同じです。 同時にresolv.confには「search localdomain」が設定されます。

crontab

システムが定期的に実行するハウスキーピング・ジョブ(日次、週次、月次に実行されるスクリプト)が、特定時刻に一斉に起動しないよう、crontabの設定を変更します。

CentOS 5.x /etc/crontab のエントリ中、cron.hourly、cron.daily、cron.weekly、cron.monthly を含む各行の起動時刻をランダムに変更します
CentOS 6.x/7.x /etc/anacrontab の RANDOM_DELAY の値を240にセットします

注意

これは主に古いOSにおける定時の起動時刻をランダム化して、多数の仮想サーバが同時にディスクアクセスしないようにするための処置です(OSによっては起動時刻にランダム要素が組み込まれているため実施しないケースがあります)。

4. 注意事項

ディスク修正失敗時について

お客様作成アーカイブからディスクへコピーする場合やディスクコピーと同時にディスク修正機能を使用した場合、未対応OSやISOイメージからインストールしたもの、インストール後のOSバージョンアップ操作によりファイル名や設定項目などの仕様が変わったなどのソース側の状況により、ディスク修正が失敗することがあります。この場合、以下のエラーメッセージが表示され作業が中断します。

停止した場合はコピーの実行を中断します。

該当のディスクの有効状態が「失敗」であることを確認し、削除してください。

※ディスク修正が失敗となった場合は未対応OSとなりますので、ディスク修正機能を使用せずにディスクコピーを行ってください

ディスク修正実行判定について

ディスク修正機能では、修正対象とするディスクやアーカイブが以下の仕様を満たしている場合に動作します。

CentOS

  • 最後の位置のパーティションのパーティションタイプが 8300 であること
  • 最後の位置のパーティションのファイルシステムが ext4 であること
  • 最後の位置のパーティションに ディスク修正での修正対象のファイル が存在すること
  • 最後の位置のパーティションに /etc/redhat-release ファイルが存在し中身を初期状態から変更していないこと

Debian

  • 最後の位置のパーティションのパーティションタイプが 8300 であること
  • 最後の位置のパーティションのファイルシステムが ext4 であること
  • 最後の位置のパーティションに ディスク修正での修正対象のファイル が存在すること
  • 最後の位置のパーティションに /etc/debian_version/etc/issue ファイルが存在し中身を初期状態から変更していないこと

Ubuntu

  • 最後の位置のパーティションのパーティションタイプが 8300 であること
  • 最後の位置のパーティションのファイルシステムが ext4 であること
  • 最後の位置のパーティションに ディスク修正での修正対象のファイル が存在すること
  • 最後の位置のパーティションに /etc/lsb-release ファイルが存在し中身を初期状態から変更していないこと

FreeBSD

  • 最後の位置のパーティションのパーティションタイプが A503 であること
  • 最後の位置のパーティションのファイルシステムが ufs であること
  • 最後の位置のパーティションに ディスク修正での修正対象のファイル が存在すること
  • 最後の位置のパーティションに /boot/kernel/kernel ファイルが存在し中身を初期状態から変更していないこと

CoreOS

  • 6番目の位置のパーティションのパーティションタイプが 8300 であること
  • 6番目の位置のパーティションのファイルシステムが ext4 であること
  • 最後の位置のパーティションは9番目であり、そのパーティションのパーティションタイプは FFFF であること
  • 最後の位置のパーティションは9番目であり、そのパーティションのファイルシステムは ext4 であること
  • 最後の位置のパーティションは9番目であり、そのパーティションに ディスク修正での修正対象のファイル が存在すること
  • 最後の位置のパーティションは9番目であり、そのパーティションには /etc/coreos/update.conf ファイルが存在し中身を初期状態から変更していないこと

RancherOS

  • 最後の位置のパーティションのパーティションタイプが 8300 であること
  • 最後の位置のパーティションのファイルシステムが ext4 であること
  • 最後の位置のパーティションに /var/lib/rancher/conf/cloud-config.d ディレクトリが存在すること

※パーディションタイプはLinux環境などで sgdisk -p /dev/<対象のブロックデバイス> のコマンドを使用することで確認できます。
※弊社が公開するパブリックアーカイブでない場合でも、お客様が作成されたディスクがこれらの条件を満たしている場合はディスク修正機能が使用できる場合がありますが、動作について保証するものではありません。お客様ご自身の責任において実行いただくようお願いします。