web-dev-qa-db-ja.com

PXEブート最近のUbuntu Live CD

私は最近のUbuntuライブCDでPXEを介して起動しようとして問題がありました。私の究極の目標は、新しいUbuntu 12.04.4ビルドを使用して、古いUbuntu 9.04ディスクレスボックスを再構築することです。

良い構成だと思うものを起動しようとすると、次のような出力が得られます。

Loading .../vmlinuz......

// --- lotsa good boot-up stuff ---

Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/casper-premount     ...
 [    6.336295] pcnet32 0000:02:01.0: eth0: link up
done.
done.
IP-Config: eth0 hardware address xx:xx:xx:xx:xx:xx mtu 1500 DHCP RARP
IP-Config: no response after 2 secs - giving up
IP-Config: eth0 hardware address xx:xx:xx:xx:xx:xx mtu 1500 DHCP RARP
IP-Config: no response after 3 secs - giving up
IP-Config: eth0 hardware address xx:xx:xx:xx:xx:xx mtu 1500 DHCP RARP
IP-Config: no response after 4 secs - giving up
IP-Config: eth0 hardware address xx:xx:xx:xx:xx:xx mtu 1500 DHCP RARP
IP-Config: no response after 6 secs - giving up
IP-Config: eth0 hardware address xx:xx:xx:xx:xx:xx mtu 1500 DHCP RARP
IP-Config: no response after 9 secs - giving up
IP-Config: eth0 hardware address xx:xx:xx:xx:xx:xx mtu 1500 DHCP RARP
IP-Config: no response after 16 secs - giving up
IP-Config: eth0 hardware address xx:xx:xx:xx:xx:xx mtu 1500 DHCP RARP
IP-Config: no response after 25 secs - giving up
IP-Config: eth0 hardware address xx:xx:xx:xx:xx:xx mtu 1500 DHCP RARP
IP-Config: no response after 36 secs - giving up
IP-Config: eth0 hardware address xx:xx:xx:xx:xx:xx mtu 1500 DHCP RARP
IP-Config: no response after 64 secs - giving up
IP-Config: eth0 hardware address xx:xx:xx:xx:xx:xx mtu 1500 DHCP RARP

私はもともと手順に従いました here 。現在、次のものがあります。

  • Tomato 1.21を実行しているルーター(はい、古いことはわかっています)
  • TFTPサーバーとライブCDからのファイル(IPアドレス192.168.x.y)を含むボックス

ルーターには、次の行を含むDnsmasqカスタム構成があります。

dhcp-no-override
dhcp-boot=pxelinux.0,,192.168.x.y

これらの設定により、PXEコレクションに新しいものを追加する場合、特定の場所にいくつかのファイルを配置し、特定の構成ファイルに行を追加して、ターゲットボックスを起動する準備ができました。

これを含むいくつかのブート状況で過去にこれを実行しました。

  • バックトラック4r2 i386
  • Debian Lenny、Squeeze、およびWheezy
  • くそー小さなLinux
  • Fedora 18
  • いくつかの古いUbuntuライブCD
  • いくつかの古いUbuntuインストール

新しいUbuntuライブCDをミックスに追加する現在のプロセスは次のとおりです。

  1. ライブCDをISOイメージとしてマウントします。
  2. ISOイメージからすべてのファイルをハードドライブにコピーします。
  3. ISOコンテンツからvmlinuzおよびinitrd.lzファイルをTFTPサーバーからアクセス可能な領域にコピーします。
  4. initramfs.confを変更し、chroot:内でupdate-initramfsを実行することにより、initrd.lzを再構築してPXEブートをサポートします。
    • MODULES = netboot
    • BOOT = nfs
    • NFSROOT = 192.168.x.y:/ path/to/extracted/iso/contents
    • DEVICE = eth0 //以前はこれを実行しませんでした。今説明したとおりに試行します here トラブルがありますが、サイコロはありません。とにかくNICが1つだけ
  5. TFTPサーバーのboot.txtにアイテムを追加します。
  6. Pxelinux.cfgディレクトリの下のファイルに行を追加します。

これらを実行したら、再起動できます。試してみるために、ハードドライブ、CD-ROMドライブ、フロッピードライブのない基本的なVMware Player仮想マシンを使用しています。 PXEから起動するだけです。

過去には、これは素晴らしく機能していました。その後、電源を切り、PXE経由で目的の物理ボックスを同じ方法で起動できます。

上記のようなメッセージが表示されるため、この方法で最後のカップルのUbuntuライブCDを起動できませんでした。

no response after xx secs - giving up` message

最後に、VMware VMの下にISOを直接マウントし、UbuntuをVMに直接インストールしました。それができたら、ハードドライブをマウントし、上記の手順1および2と同様に内容をコピーして、そこからPXEブートを試みて、ディスクレスイメージにしました。

これは以前に機能しました。ただし、12.04インストールでこれを実行しようとすると、12.04ライブCDと同じ症状が表示されます。

no response after xx secs - giving up

this ;を試しましたうまくいきませんでした。これが私の古いおよび新しいpxelinux.cfg/default行です。

label ubuntu_12.04.4-desktop-i386
         kernel /ubuntu/12.04.4-desktop-i386/vmlinuz nosplash
#         append boot=casper netboot=nfs nfsroot=192.168.0.99:/path/to/ubuntu-12.04.4-desktop-i386 initrd=/ubuntu/12.04.4-desktop-i386/initrd.lz
         append boot=nfs root=/dev/nfs nfsroot=192.168.0.99:/path/to/ubuntu-12.04.4-desktop-i386 initrd=/ubuntu/12.04.4-desktop-i386/initrd.lz

誰もが持っている洞察をいただければ幸いです。

ありがとう。

2
jia103

昨日、Maxdata Serverで同じ問題が発生しました。あなたが持っていた同様の問題、それが私があなたの質問を見つけた理由です。

私のサーバーが起動し、しばらくすると、それらのIP-Config: no response after xx secs - giving upメッセージの多くがあふれ、約3分後にカーネルパニックが発生しました。私はこの問題を解決するためにほぼ1日を費やしていますが、直接的な解決策を見つけることができませんでした。

問題は、2つのDHCPコールがあることです。1つはブート時に(PXEがジャンプする直前)、もう1つは両方のノードがブートを停止した時点です。 2番目の要求は、不明な理由でdnsmasqによって応答されない最初の要求よりも短くなります。

基本的に、さまざまなアプローチを試すことができます。

別のネットワークデバイスを使用します:2つの物理NICを持つ実サーバーを使用しました。 2番目のネットワークインターフェイスに切り替えると、すぐに問題が解決しました。

私は仮想マシンの専門家ではないことを認めざるを得ませんが、Oracle VM VirtualBox Managerを使用すると、アダプターを変更することもできますが、VMに最大4つの異なるネットワークデバイスをインストールできますタイプ。私のセットアップではそのようなことをここでテストすることは許可されていないため、設定を少し試してみてください。

これが機能しない場合は、default config-fileをに変更して、ネットワーク構成にDHCPを明示的に使用します

label ubuntu_12.04.4-desktop-i386
     kernel /ubuntu/12.04.4-desktop-i386/vmlinuz nosplash
     append boot=nfs root=/dev/nfs nfsroot=192.168.0.99:/path/to/ubuntu-12.04.4-desktop-i386 initrd=/ubuntu/12.04.4-desktop-i386/initrd.lz ip=:<server-ip>::::eth0:dhcp rw live-netdev=eth0 ethdevice-timeout=10

<server-ip>を忘れずに挿入してください。

ただし、これらのソリューションが機能しない場合は、静的IPに切り替えることができます:

label ubuntu_12.04.4-desktop-i386
     kernel /ubuntu/12.04.4-desktop-i386/vmlinuz nosplash
     append boot=nfs root=/dev/nfs nfsroot=192.168.0.99:/path/to/ubuntu-12.04.4-desktop-i386 initrd=/ubuntu/12.04.4-desktop-i386/initrd.lz ip=<client-ip>:<server-ip>:<gw-ip>:<netmask>:<hostname>:<device>:static rw live-netdev=eth0 ethdevice-timeout=10

クライアントごとに追加の構成ファイルを作成する必要があります(PXEブートでは、ブート時に探しているファイルが表示されるはずです)。

2
MrD

この問題は、いくつかのネットワークインターフェースを備えたデバイスで再現可能です。回避策として、pxelinux.cfgフォルダーの「デフォルト」構成ファイルに「IPAPPEND 2」を追加してみてください

http://www.syslinux.org/wiki/index.php?title=SYSLINUX#IPAPPEND_flag_val_.5BPXELINUX_only.5D

0
Stas

これは、ipconfigのバグであり、DHCP標準を正しく実装していない

迅速な解決策参照/取得Servaは、すでに修正されたipconfigを含むINITRD_N11.GZを作成しました(私はserva開発に関連しています)

http://vercot.com/~serva/an/NonWindowsPXE3.html

0
Pat

これは古い質問であることは知っていますが、それは私にも噛みつきました。

複数のNICがある場合、これは接続されていないものをLinuxが選択したことが原因である可能性があります。ネットワークデバイスの命名が見直され、使用しているバージョンと切り替えたバージョンの間でおそらく有効になりました。

ただし、明らかに起動しなかったため、名前の変更があなたに影響を与えたかどうかはわかりません

ip =nicname
0
Mark