GNU/Linux >> Linux の 問題 >  >> Debian

Debian Wheezy:Xenディスクイメージの分割とサイズ変更

​​背景

私のXen仮想サーバーの1つは、週末に400Gディスクを分割してサイズ変更する必要があり、ダウンタイムを最小限に抑えたいと考えていました。ディスクには240Gが使用され、そのうち235Gは/ backupディレクトリであり、残りの5Gは通常のDebianLinuxインストール専用です。ディスクを2つのディスクに分割したかったのです。Linuxシステムを含む20GBのディスクと、/backupとしてマウントする300Gのディスクです。次に、DRBDセットアップを適用して、その300Gバックアップパーティションを別の2番目のバックアップマシンに複製できます。

物理ホストに大量のデータをコピーしなければならない状況に陥りたくありませんでした。また、実行中に仮想マシンをダウンさせたくありませんでした。

画像を設定する

仮想マシンのディスクイメージは/vm/domains/b1/disk.imgにあり、それに付随するswap.imgについて心配する必要はありません。

問題:

losetup -a

使用されているすべてのループデバイスを検索します。私の場合、/ dev/loop20が最初の無料デバイスでした。次に、イメージのループバックデバイスを設定し、マウントします。

mkdir -p / mnt / loop-copy-from / mnt / loop-copy-to

losetup /dev/loop20 /vm/domains/b1/disk.img

マウント/dev/ loop20 / mnt / loop-copy-from

新しい空のスパースイメージを作成します

ここで、/ backupを移動するのではなく、他のすべてを新しい20Gイメージに移動します。次のコマンドを使用して、20Gのスパースイメージファイルを作成します。

dd if =/ dev / zero of =/ vm / domains / b1 / disk-root.img bs =1k count =1 seek =$(((20 * 1024 * 1024)-1))

次に、新しいループデバイスをセットアップし、ファイルシステムを作成して、最後にこの新しいイメージをマウントする必要があります

losetup /dev/loop21 /vm/domains/b1/disk-root.img

mkfs.ext3 / dev / loop21

/ dev / loop21 / mnt / loop-copy-to

をマウントします ルートファイルシステムをコピー

次に、/ mnt/loop-copy-fromから/mnt/ loop-copy-まで、235Gバックアップディレクトリ以外のすべてをコピーします。

rsync -arplogu --exclude "/ backup" --stats --progress / mnt / loop-copy-from / / mnt / loop-copy-to

既存のファイルシステムをクリーンアップします

/ mnt / loop-copy-fromのバックアップディレクトリを除くすべてを削除したい:

cd / mnt / loop-copy-from; ls | grep-v'バックアップ'| xargs rm -rf

次に、両方のデバイスをアンマウントします:

umount / mnt / loop-copy-from

umount / mnt / loop-copy-to

既存のファイルシステムを縮小する

/ dev / loop20を400Gから300Gに縮小する必要があります:

e2fsck -f / dev / loop20

resize2fs / dev / loop20 300G

ブートデータをコピーする

次に、ループバックデバイスを破棄する前にブートデータをコピーします。

dd if =/ dev / loop20 of =/ dev / loop21 bs =1 count =512

losetup -d / dev / loop20

losetup -d / dev / loop21

Xen構成とVMブート

次に、Xen VM構成ファイル(私の場合は/etc/xen/b1.cfg)を編集し、次のように変更します。

disk = [
  'file:/vm/domains/b1/disk.img,xvda2,w',
  'file:/vm/domains/b1/swap.img,xvda1,w',
]

あり:

disk = [
  'file:/vm/domains/b1/disk-root.img,xvda2,w',
  'file:/vm/domains/b1/disk.img,xvda3,w',
  'file:/vm/domains/b1/swap.img,xvda1,w',
]
そして最後に:

xm create b1.cfg

リンク

IOデジタル秒

Debian WheezyXEN+ゲストセットアップ


Debian
  1. DebianWheezyでビットコインコアをコンパイルしてインストールする方法

  2. ISPConfigとcourier/postfixを使用したDebian6SqueezeからDebian7Wheezyへのアップグレード

  3. DebianJessieへのXenHypervisor4.8のインストール

  1. DebianWheezyでのNFSサーバーとクライアントのセットアップ

  2. Debian 7(Wheezy)でmod_pagespeedとmemcachedを使用してApacheWebサーバーを高速化する

  3. QEMU ディスク イメージのサイズを変更することはできますか?

  1. Debian 7(Wheezy)VPSにGitlab、Ruby、Nginxをインストールする方法

  2. ソースからコンパイルしてDebian7(Wheezy)VPSにNginxをインストールする方法

  3. DebianWheezyにSilexをインストールする