Xen が起動に失敗する (/dev/sda2 のマウントがタイムアウト)

Xen が起動に失敗する (/dev/sda2 のマウントがタイムアウト)

私はXen初心者で、Debian Wiki の Xen エントリ十分なスペースがある VMware Workstation イメージに squeeze をインストールしました。ファイル ストレージは LVM 上にあります。

新しくインストールしたゲスト OS が起動しません。busybox ブートローダーがタイムアウトして失敗します。正確なエラーは次のとおりです。

Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Begin: Waiting for root file system ... done.
Gave up waiting for root device.  Common problems:
 - Boot args (cat /proc/cmdline)
   - Check rootdelay= (did the system wait long enough?)
   - Check root= (did the system wait for the right device?)
 - Missing modules (cat /proc/modules; ls /dev)
ALERT!  /dev/sda2 does not exist.  Dropping to a shell!

Debian Squeeze ゲスト OS を Xen 4 で起動するにはどうすればよいですか?

私が思いつくすべての重要な情報:

ゲスト作成:

root@debxentest:/etc/xen-tools# xen-create-image --hostname xenguest1 --scsi --vcpus 1 --pygrub --dist squeeze

General Information
--------------------
Hostname       :  xenguest1
Distribution   :  squeeze
Mirror         :  http://localmirror/debian/
Partitions     :  swap            64Mb  (swap)
                  /               4Gb   (ext3)
Image type     :  full
Memory size    :  64Mb
Kernel path    :  /boot/vmlinuz-2.6.32-5-xen-amd64
Initrd path    :  /boot/initrd.img-2.6.32-5-xen-amd64

Networking Information
----------------------
IP Address     : DHCP [MAC: 00:16:3E:1A:8D:68]


Creating swap on /dev/universe/xenguest1-swap
Done

Creating ext3 filesystem on /dev/universe/xenguest1-disk
Done
Installation method: debootstrap
Done

Running hooks
Done

No role scripts were specified.  Skipping

Creating Xen configuration file
Done
Setting up root password
Generating a password for the new guest.
All done


Logfile produced at:
     /var/log/xen-tools/xenguest1.log

Installation Summary
---------------------
Hostname        :  xenguest1
Distribution    :  squeeze
IP-Address(es)  :  dynamic
RSA Fingerprint :  e3:6e:87:8b:59:78:9d:4d:3b:7f:b2:84:48:95:98:36
Root Password   :  Wppn4eKf

LVM セットアップ (ボリュームとグループ):

  lvm> lvdisplay
  --- Logical volume ---
  LV Name                /dev/universe/xenguest1-swap
  VG Name                universe
  LV UUID                r68Qej-hVOE-ZRMu-KRzU-cXi4-paHN-4FCM0n
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                64.00 MiB
  Current LE             16
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           254:2

  --- Logical volume ---
  LV Name                /dev/universe/xenguest1-disk
  VG Name                universe
  LV UUID                LBZpOl-sHjU-ec3d-zePZ-B2Nv-eLQ3-1pJeJ6
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                4.00 GiB
  Current LE             1024
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           254:3

  --- Logical volume ---
  LV Name                /dev/debxentest/root
  VG Name                debxentest
  LV UUID                XlMXTu-8IEQ-Ec0P-3kaw-menW-Dcz8-Qmu6Ea
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                18.91 GiB
  Current LE             4840
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           254:0

  --- Logical volume ---
  LV Name                /dev/debxentest/swap_1
  VG Name                debxentest
  LV UUID                VJkXmY-kr7D-Rvvv-Ekg2-vo54-f8D0-hXGDYr
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                872.00 MiB
  Current LE             218
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           254:1

  lvm> vgdisplay
  --- Volume group ---
  VG Name               debxentest
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               19.76 GiB
  PE Size               4.00 MiB
  Total PE              5058
  Alloc PE / Size       5058 / 19.76 GiB
  Free  PE / Size       0 / 0   
  VG UUID               1tEMNQ-B81G-82nb-SCXq-mNJR-Swh7-UGXV14

  --- Volume group ---
  VG Name               universe
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               20.00 GiB
  PE Size               4.00 MiB
  Total PE              5119
  Alloc PE / Size       1040 / 4.06 GiB
  Free  PE / Size       4079 / 15.93 GiB
  VG UUID               vxAIfs-wMIT-Nxcc-gEOh-oSoY-e5Zx-r2VTum

Xen のセットアップ

root@debxentest:/home/tester# xm list
Name                                        ID   Mem VCPUs      State   Time(s)
Domain-0                                     0   941     1     r-----     22.4
xenguest1                                    2    64     1     -b----      1.9

答え1

私は、squeeze と wheezy の両方でまったく同じ問題を経験しています。

xen-tools と xen-create-image を使用している場合は、次のいずれかを実行できます。

  • lenny を使用してイメージを作成します。

    xen-create-image --hostname len1 --scsi --dist lenny

  • scsi オプションを使用せずに squeeze イメージを作成します。

    xen-create-image --hostname sqz1 --dist squeeze

この状況は非常に奇妙だと思います。scsiオプションはsqueezeとlennyでサポートされているはずですが、udevの問題でしょうか?Debian Xen Wiki ページ状態:

--scsi は、VM が sda のような通常の SCSI HD 名を使用するようにします。たとえば、Ubuntu Maverick イメージを作成する場合、デフォルトが xvda であるため、このオプションがないと起動しません。xvda は仮想化ディスクであることを明確にするために使用されますが、Ubuntu の標準の pv_ops カーネルのような非 xen カーネルは、それが何であるかを認識しません (ただし、これについては、xen-blkfront ドライバーに関する以下の注記を参照してください)。/etc/xen-tools/xen-tools.conf で scsi=1 を設定して、これをデフォルトにすることもできます。

後に、次のようにも述べられています。

新しい 2.6.32 カーネル イメージには、paravirt_ops ベースの Xen dom0 および domU のサポートがあります。pv_ops を含むカーネルを含む Ubuntu Maverick のイメージを作成すると、Xen のハイパーバイザー上で実行できるため、Xen カーネルではなく Ubuntu の標準カーネルが使用されます。

2.6.32 カーネル domU を以前の dom0 でテストする場合は、xen-blkfront domU ドライバーがロードされ、ルートおよびその他のディスク パーティションが見つかることを確認する必要があります。domU .cfg ファイルで非推奨の hda* または sda* デバイス名をまだ使用している場合は、この限りではありません。2.6.18 および 2.6.26 dom0 カーネルでも動作する xvda* デバイスに切り替えてください。

--scsi オプションは 2.6.35 カーネルを使用する Maverick で動作することを確認しましたが、これは問題ではありません。これはすべて矛盾しているようです。

このリンクも役立つかもしれません:

関連情報