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

新しいXenDebian仮想マシンを最初から作成する

はじめに:

このチュートリアルでは、Debian Jessieディストリビューションに基づく新しい仮想マシンを、最小限のコンポーネントでゼロから作成します。
前提条件:Xenハイパーバイザーは、メインシステム(DOM0)にすでにインストールされ、実行されている必要があります。

Xen仮想マシンの作成

この仮想マシンは、VMの作成をブートストラップするxenツールを使用して作成されます。
ブートストラップ:
mkdir -p /virtual/xen/
cd /virtual/xen/
xen-create-image --dir=. --dist=jessie --hostname=mail.myserver.com --size=10Gb --swap=2048Mb --ip=87.176.10.167 --gateway=87.176.10.254 --netmask=255.255.255.0 --memory=4096Mb --arch=amd64 --role=udev

カーネルとpyGrubをインストールします
–生成されたdisk.imgとswap.imgを適切なパスに配置します。
例: in / virtual / xen / MAIL/
ディスクイメージをループにマウントします
mkdir /mnt/MAIL
mount /virtual/xen/MAIL/disk.img /mnt/MAIL -o loop,rw

/ sys、/ proc、/devをマウントしてchrootします
mount /proc /mnt/MAIL/proc -o bind
mount /sys /mnt/MAIL/sys -o bind
mount /dev /mnt/MAIL/dev -o bind
chroot /mnt/MAIL

grub-legacyをVMにインストールします
apt-get update
apt-get install grub-legacy linux-image-3.2.0-4-amd64 mc
mkdir /boot/grub
mcedit /boot/grub/menu.lst
CONTENT:
#----------------
default 0
timeout 2
#
title Debian GNU/Linux
root (hd0,0)
kernel /vmlinuz root=/dev/xvda1 ro
initrd /initrd.img
#
title Debian GNU/Linux (recovery mode)
root (hd0,0)
kernel /vmlinuz root=/dev/xvda1 ro single
initrd /initrd.img
#-------------

chrootを終了し、すべてをアンマウントします。
exit
umount /mnt/MAIL/dev
umount /mnt/MAIL/sys
umount /mnt/MAIL/proc
umount /mnt/MAIL/

VM xen構成を調整します( /etc/xen/mail.server.com.cfg )次のように:
Xen DOMu構成ファイルの古いカーネルとinitrd行を次のように置き換えます:
例:
REPLACE:
kernel = '/boot/vmlinuz-2.6.32-5-xen-amd64'
ramdisk = '/boot/initrd.img-2.6.32-5-xen-amd64'

WITH:
Debian squeezeハイパーバイザーの場合:
bootloader = '/usr/lib/xen-default/bin/pygrub'
Debian wheezyハイパーバイザーの場合:
bootloader = '/usr/lib/xen-4.1/bin/pygrub'
Debian jessieハイパーバイザーの場合:
bootloader = '/usr/lib/xen-4.4/bin/pygrub'

ディスクのパスを適切に調整します。
例:
disk = [
'file:/virtual/xen/MAIL/disk.img,xvda2,w',
'file:/virtual/xen/MAIL/disk.swp,xvda1,w',
]

VMディスクを使用してpyGRUB構成をテストします。
注:GRUBメニューが数秒間表示された後、エラーメッセージが表示されて消えます。エラーメッセージを無視します。最も重要なのは、Grubメニューが表示されることです。
Debian squeezeハイパーバイザーの場合:
/usr/lib/xen-default/bin/pygrub /virtual/xen/MAIL/disk.img>
Debian wheezyハイパーバイザーの場合:
/usr/lib/xen-4.1/bin/pygrub /virtual/xen/MAIL/disk.img
Debian jessieハイパーバイザーの場合:
/usr/lib/xen-4.4/bin/pygrub /virtual/xen/MAIL/disk.img

VMを起動します
Grubメニューが表示され、起動が開始されます。
xm create /etc/xen/mail.server.com.cfg -c

重要な注意: 通常、新しいXen VMのこのようなブートストラップの後、VMは起動時にハイパーバイザーカーネルを使用します。つまり、各VMはカーネルを独立して更新することができません。上記の方法により、VMはハイパーバイザーカーネルから完全に独立し、独自のカーネルを取得します。私が見る唯一の欠点は、一部のカーネルの更新では、/ boot / grub / menu.lstファイルがカーネルのアップグレード中に自動的に置き換えられるため、通常は/の下に保存されている以前の/boot/grub/menu.lstを回復する必要があることです。 VMを再起動する前にboot/grub / menu.lst〜。忘れた場合は、上記の説明に従ってVMイメージをループにマウントし、必要に応じてファイルを置き換えます。その後、VMを起動できるようになります。


Debian
  1. Debian10からDebian11にアップグレードする方法

  2. Lighttpd(Debian Etch)でmod_mysql_vhostを使用して単純な仮想ホストを作成する

  3. Lighttpdでmod_mysql_vhostを使用して単純な仮想ホストを作成する(Debian Squeeze)

  1. Linuxカーネルを最初から構築する方法{ステップバイステップガイド}

  2. Debian 10(Buster)がリリースされました–新機能

  3. Debian – DebianでAes-niを使用しますか?

  1. Debian9にVagrantをインストールする方法

  2. Debian10にTensorFlowをインストールする方法

  3. Ubuntu Server 14.04 / 14.10にKVM(カーネルベースの仮想マシン)をインストールします