XenServerホストの rootパーティションサイズを変更

潟若若菴遵

[XenServer]

はじめに

XenServer (Dundee) におけるインストール時での rootパーティション容量変更についてです。

XenServer の Dundee では、従来のバージョンと異なり

  • root パーティションの容量拡張 (約18GB)
  • /var/log を別パーティションになった (4GiB)

といった変更が加えられました。

これにより、46GB以下のHDDにはインストールできなくなりました。が、ちょこっとインストーラを書き換えることで、上記の容量を拡張したり、減らしたりすることも可能となります。

インストーラ起動方法

XenServer のインストーラ起動時に shell と打ち込みます。

boot時:

boot: shell

インストーラの書き換え

そのまましばらく待っていると shell 画面に落ちるので /opt/xensource/installer/constants.py を修正します。

/opt/xensource/installer/constants.py:

min_primary_disk_size = 46 #GB
max_primary_dosk_size_dos = 2047 #GB
MIN_SYSTEM_RAM_MB_RAW = 1024 # MB
MIN_SYSTEM_RAM_MB = MIN_SYSTEM_RAM_MB_RAW - 100

# Change this to True to enable GPT partitioning instead ...
GPT_SUPPORT = True

# Change this to True to force legacy boot instaed of ...
FORCE_LEGACY_BOOT = False

# filesystems and partitions (sizes in MB): 
boot_size = 512
root_mbr_size = 18432
root_gpt_size = 17920
root_size = max(root_mbr_size, root_gpt_size) # used for... 
backup_size = 18432
swap_file_size = 512
swap_size = 1024
logs_size = 4096

上記の

min_primary_disk_size

HDD の容量チェックです。XenServer は、バックアップパーティションを持っているので

root_mbr_size と backup_size は同じである必要があります。

また、root_gpt_size は、root_mbr_size から boot_size を引いたものになります。

18432 - 512 = 17920

今回は例として、18GB となっている rootパーティションを 9GB に減らします(インストール直後、XenServer は、2GB使います)

上記から、変更点だけを列挙すると下記の通りです。

min_primary_disk_size = 30
boot_mbr_size = 9216
boot_gpt_size = 8704
backup_size = 9216

保存後 exit すると、通常のインストーラが起動します。

なお、実際のHDD容量から min_primary_disk_size を引いたものが、Virtual Machine の保存領域となる SR に組み込むことができます。

参考URL

- XenServer 6: Disable GPT and get a larger root partition