192.168.26.1にTFTP/DHCP/NFS/SMBサーバー(Ubuntuサーバー12.04 LTS)があります。私はpxelinuxを使用して、Windows、Ubuntuネットワークインストーラー、およびLinux Mint 17の起動およびインストールオプションを含むメニューを表示しますMATEライブCD。これをこのように実行することはすでに厄介で、私はSteamが不足しています...
Linux Mintには、NFSとCIFSの2つのネットブートオプションを用意しました。私はそれをNFSで完全に機能させました:ユーザーはブートメニューでそれを選択でき、しばらくしてからLinux MintライブCDデスクトップに移動します。しかし、CIFSでは、ネットワーキングが適切に初期化されません。 Linux Mintが起動すると、ネットワークは120秒間ハングします。その後、デスクトップから起動し続けますが、net network-manager
が起動していません(起動していません)。 DHCPサーバーが応答しないことが問題であると考えましたが、DHCPサーバーのログでDHCP要求と正常な応答を確認できます。
Linux Mintデスクトップに入ると、ifconfig
はDHCPによって割り当てられたIPアドレスを報告し、サーバーへのpingが機能します。
私のpxelinux構成は(APPEND
の後のすべてが1行にあります。このサイトで読みやすくするために分割しています):
NFS:
LABEL linuxmint17
MENU LABEL Linux Mint 17
KERNEL linux-mint-17/image/casper/vmlinuz
APPEND
root=/dev/nfs boot=casper netboot=nfs
nfsroot=192.168.26.1:/var/lib/tftpboot/linux-mint-17/image
initrd=/linux-mint-17/image/casper/initrd.lz
CIFS:
LABEL linuxmint17smb
MENU LABEL Linux Mint 17 (SMB)
KERNEL linux-mint-17/image/casper/vmlinuz
APPEND
root=/dev/cifs boot=casper netboot=cifs
nfsroot=//192.168.26.1/tftpshare/linux-mint-17/image
ip=dhcp
initrd=/linux-mint-17/image/casper/initrd.lz
CIFSメニューにip=dhcp
オプションを挿入する必要があることに注意してください。そうしないと、ネットワークの初期化時に起動プロセスが120秒間ハングしますが、その後は続行されません。その行を追加してもハングしますが、120秒後も起動し続けます。
セットアップ:
クライアントとサーバーの仮想マシンは、相互(内部ネットワーク)にのみ接続されます。ネットワークには他のマシンはまったくありません。
サーバーの/var/lib/tftpboot/
の下にすべてのpxeブートファイルがあります。 Linux Mint ISO(未変更)は/var/lib/tftpboot/linux-mint-17/image
の下にマウントされています。 vmlinuz
とinitrd
は/var/lib/tftpboot/linux-mint-17/image/casper
にあります。 /var/lib/tftpboot/
はNFSエクスポートです。 /var/lib/tftpboot/
にマップされるtftpshare
というsamba共有があります(読み取り専用、全員へのアクセスを許可)。
smb.conf
[tftpshare]
comment = TFTP Root
path = /var/lib/tftpboot
browsable = yes
guest ok = yes
read only = no
create mask = 0644
dhcpd.conf
authoritative;
subnet 192.168.26.0 netmask 255.255.255.0 {
range 192.168.26.10 192.168.26.40;
next-server 192.168.26.1;
filename "pxelinux.0";
}
これは、ライブデスクトップ環境への正常な起動後のクライアントマシンのsyslog
における2分の奇妙なギャップです。
Jun 14 13:13:18 mint kernel: [ 23.388873] intel_rapl: domain core energy ctr 0:0 not working, skip
Jun 14 13:13:18 mint kernel: [ 23.528409] intel_rapl: domain uncore energy ctr 0:0 not working, skip
Jun 14 13:13:18 mint kernel: [ 23.528453] intel_rapl: no valid rapl domains found in package 0
Jun 14 13:13:20 mint ntpdate[1198]: Can't find Host ntp.ubuntu.com: Name or service not known (-2)
Jun 14 13:13:20 mint ntpdate[1198]: no servers can be used, exiting
(エントリなしの2分のギャップ、おおよそ120秒の起動遅延が発生したとき)
Jun 14 13:15:19 mint dbus[864]: [system] Activating service name='org.freedesktop.ConsoleKit' (using servicehelper)
Jun 14 13:15:19 mint dbus[864]: [system] Activating service name='org.freedesktop.PolicyKit1' (using servicehelper)
Jun 14 13:15:19 mint acpid: starting up with netlink and the input layer
Jun 14 13:15:19 mint acpid: 9 rules loaded
Jun 14 13:15:19 mint acpid: waiting for events: event logging is off
これは、CIFSを使用する場合に両方のケースで何が起こるかです。
サーバー上:
...
Jun 14 13:12:52 ubuntu-netboot in.tftpd[2722]: RRQ from 192.168.26.13 filename /linux-mint-17/image/casper/initrd.lz
Jun 14 13:13:14 ubuntu-netboot dhcpd: DHCPDISCOVER from 08:00:27:1c:c5:43 via eth1
Jun 14 13:13:14 ubuntu-netboot dhcpd: DHCPOFFER on 192.168.26.14 to 08:00:27:1c:c5:43 via eth1
Jun 14 13:13:14 ubuntu-netboot dhcpd: DHCPREQUEST for 192.168.26.14 (192.168.26.1) from 08:00:27:1c:c5:43 via eth1
Jun 14 13:13:14 ubuntu-netboot dhcpd: DHCPACK on 192.168.26.14 to 08:00:27:1c:c5:43 via eth1
ifconfig
によると、デスクトップへのブートが成功した場合にクライアントに割り当てられるIPは、確かに...14
です。
これがどうなるかなしip=dhcp
:
これは、デスクトップが表示される直前のip=dhcp
で発生します。
どんなアイデアでもありがたいです。他のログ(どれですか?)が役立つ場合は、それらを提供できます。
この問題は Serva によって解決されました(私はServa開発に関連しています)
完全なカーネルと追加行、およびCIFSを使用した現在のUbuntu/MintライブバージョンをPXEブートするために必要な追加のinitrd.gzは、次の場所にあります here
基本的に、問題はキャスパーのバグ(AFAIKはこれまでに報告/修正されていない)であり、CIFSネットマウントの場合、カーネルパラメーターのエクスポートを忘れ、後でネットワーク構成スクリプトに影響を与え、ファイル/ etc/networkで遅延とエラーが発生して再作成される/ interfaces。
ServaのUbuntu/Mintの「append」行が表示された場合
append = showmounts toram root=/dev/cifs initrd=NWA_PXE/$HEAD_DIR$/casper/initrd.lz,NWA_PXE/$HEAD_DIR$/casper/INITRD_N11.GZ boot=casper netboot=cifs nfsroot=//$IP_BSRV$/NWA_PXE_SHARE/$HEAD_DIR$ NFSOPTS=-ouser=serva,pass=avres,ro ip=dhcp ro
埋め込まれた「initrd」変数は、2つの「連続してロードされた」initrdファイル(initrd.lzおよびINITRD_N11.GZ)で構成されていることがわかります。
initrd=NWA_PXE/$HEAD_DIR$/casper/initrd.lz,NWA_PXE/$HEAD_DIR$/casper/INITRD_N11.GZ
最初の1つ(initrd.lz)はUbuntu/Mintに付属するもので、2番目の1つ(INITRD_N11.GZ)はパッチされたコンポーネントを含む小さな8K(元々はServaによって開発された)カスタムinitrdです。このアプローチにより、元の大きなinitrd.lz(20 MB)を再作成する必要がなくなります。 INITRD_N11.GZはServaのサイトから自由にダウンロードできます(ここに直接リンクを投稿しないでください)
「追加」行の分析を続けると、この場合、何らかの誤解を招く変数「NFSOPTS」によって実行されるCIFSマウントオプションを追加する必要があることがわかります(OPはこの手順を忘れます)。
NFSOPTS=-ouser=serva,pass=avres,ro
この例では、SMB共有にはuser = servaとpassword = avresがあり、「読み取り専用」としてマウントされます。当然のことながら、ユーザー/パスのパラメーターを編集する必要があります。
TFTPパスとCIFSロケーターは、Servaリポジトリー構造に必要なものです。 PXEサーバーがServaでない場合は、これらのパラメーターを適宜編集する必要があります。
CIPX共有からUbuntu/Mint Liveバージョンをこの方法でPXEブートすると、ネットワーク関連の遅延は発生せず、ブート直後にインターネット/ネットワークが機能します
編集:
バグはすでに buntu Launchpad に報告され、確認されました