cifs를 사용하여 Linux Mint (라이브 CD)를 pxebooting 할 때 네트워킹이 제대로 초기화되지 않지만 nfs와 작동


9

192.168.26.1의 TFTP / DHCP / NFS / SMB 서버 (Ubuntu 서버 12.04 LTS)가 있습니다. pxelinux를 사용하여 Windows의 시작 및 설치 옵션, Ubuntu 네트워크 설치 프로그램 및 Linux Mint 17 MATE 라이브 CD가 포함 된 메뉴를 표시합니다. 이런 식으로 작동시키는 것은 이미 불쾌했으며 증기가 부족합니다 ...

Linux Mint의 경우 NFS와 CIFS의 두 가지 netboot 옵션을 제공했습니다. NFS로 완전히 작동했습니다. 사용자는 부팅 메뉴에서 선택할 수 있으며 잠시 후 Linux Mint 라이브 CD 데스크탑에 들어갑니다. 그러나 CIFS를 사용하면 네트워킹이 제대로 초기화되지 않습니다. Linux Mint가 시작되면 네트워킹이 120 초 동안 중단됩니다. 그런 다음 데스크톱으로 계속 부팅되지만 net network-manager이 시작되지 않고 시작되지 않습니다. DHCP 서버가 응답하지 않는 문제 일 수 있다고 생각했지만 DHCP 서버 로그에서 DHCP 요청 및 성공적인 응답을 볼 수 있습니다.

Linux Mint 데스크탑 ifconfig에서 DHCP에 의해 할당 된 IP 주소를보고하면 핑 서버가 작동합니다.

내 pxelinux 구성은 ( APPEND한 줄에 있으면,이 사이트에서 가독성을 위해 분할했습니다).

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

ip=dhcp옵션을 CIFS 메뉴 에 삽입해야 합니다. 그렇게하지 않으면 네트워킹을 초기화 할 때 부팅 프로세스가 120 초 동안 중단되지만 계속 진행되지 않습니다. 해당 줄을 추가해도 여전히 중단되지만 120 초 후에 계속 부팅됩니다.

설정:

클라이언트와 서버 가상 머신은 서로간에 만 연결됩니다 (내부 네트워크). 네트워크에 다른 시스템이 전혀 없습니다.

서버의 모든 pxe 부팅 파일은 아래에 /var/lib/tftpboot/있습니다. Linux Mint ISO (수정되지 않은)는 아래에 마운트됩니다 /var/lib/tftpboot/linux-mint-17/image. vmlinuzinitrd에 있습니다 /var/lib/tftpboot/linux-mint-17/image/casper. /var/lib/tftpboot/NFS 내보내기입니다. 에 tftpshare매핑 되는 삼바 공유 가 있습니다 /var/lib/tftpboot/(읽기 전용, 모든 사람에게 액세스 허용).

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

(120 초의 부팅 지연이 발생할 때 대략 2 분 간격으로 항목이 없음)

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

에 따르면 데스크탑으로 성공적으로 부팅 할 때 클라이언트에 할당 된 IP ifconfig는 실제로 ...14입니다.

이것은 없이 발생 합니다 ip=dhcp:

nodhcp1 nodhcp2

이것은으로 일어나는 것이다 ip=dhcp즉시 데스크톱 쇼 전에 :

성공

나는 어떤 아이디어에 감사합니다. 다른 로그 (어떤?)가 도움이된다면 제공 할 수 있습니다.


이것은 질문을 작성하는 방법입니다 :)
warren

클라이언트에서 무언가를 얻었는지 확인하기 위해 서버에서 tcpdump를 시도 했습니까?
lacasitos 2016 년

1
캐스퍼 부팅 스크립트를 살펴보십시오. 문제가 있다고 생각합니다. initramfs를 재생성 했습니까? BOOT = casper 세트가 있다고 가정합니까?
Matt

1
Matt, OP에 boot = casper 세트가 있음을 분명히 알 수 있습니다. initramfs를 재생성하십시오.
Pat

1
@ warren 방금 시도해 보았습니다. @Sneetsher eth0인터넷에 액세스해야하는 경우 게이트웨이에 연결 합니다.
다이얼러

답변:


3

이 문제는 Serva에 의해 해결되었습니다 (저는 Serva 개발과 관련이 있습니다)

CIFS로 현재 Ubuntu / Mint 라이브 버전을 PXE 부팅하는 데 필요한 전체 커널 및 추가 라인과 추가 initrd.gz는 여기 에서 찾을 수 있습니다.

기본적으로 문제는 캐스퍼 버그 (AFAIK가 이전에보고 / 수정 된 적이 없음)입니다. CIFS netmount의 경우 나중에 커널 구성 매개 변수를 내보내는 것을 잊어 버린 네트워킹 구성 스크립트에 영향을주는 커널 매개 변수를 내보내는 것을 잊어 버립니다. / 인터페이스.

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 

첫 번째 (initrd.lz)는 Ubuntu / Mint와 함께 제공되는 것이고, 두 번째 (INITRD_N11.GZ)는 패치 된 구성 요소를 포함하여 작은 8K (원래 Serva에서 개발 한) 사용자 정의 initrd입니다. 이 방법을 사용하면 큰 원본 initrd.lz (20MB)를 다시 만들 필요가 없습니다. INITRD_N11.GZ는 Serva 사이트에서 무료로 다운로드 할 수 있습니다 (직접 링크를 여기에 게시하지 마십시오)

"추가"라인을 계속 분석하면이 경우 어떤 식 으로든 잘못된 변수 "NFSOPTS"에 의해 수행되는 CIFS 마운트 옵션 (OP는이 단계를 잊어 버림)을 추가해야합니다.

NFSOPTS=-ouser=serva,pass=avres,ro

이 예에서 SMB 공유에는 password = avres를 가진 user = serva가 있으며 "읽기 전용"으로 마운트되며, 코스 / 사용자 / 패스 매개 변수를 적절히 편집해야합니다.

TFTP 경로 및 CIFS 로케이터는 Serva 저장소 구조에 필요한 경로입니다. PXE 서버가 Serva가 아닌 경우 해당 매개 변수를 적절히 편집해야합니다.

CIFS 공유의 Ubuntu / Mint Live 버전으로 PXE를 부팅하면 네트워크 관련 지연이 없으며 부팅 직후 인터넷 / 네트워킹이 작동합니다.

편집하다:

버그가 이미 Ubuntu Launchpad 에보고되어 확인되었습니다.


INITRD_N11.GZServa 사이트에서 언급 한대로 추가 했습니다. NFSOPTS내 삼바 서버가 인증을 사용하지 않기 때문에 포함 하지 않았습니다.
다이얼러

좋은; 명령 줄에서 특정 NFSOPS없이 CIFS를 사용하여 부팅 할 때 캐스퍼는 기본적으로 CIFSOPTS = "-ouser = root, password ="를 사용하지만 나중에 부작용이 발생할 수있는 "ro"는 지정하지 않습니다. 귀하의 경우에는 NFSOPTS = "-ouser = root, password =, ro"를 지정합니다
Pat

1
수정 된 initrd 이미지는 Serva의 개발 팀에서 시작 되었습니까? 아니면 다른 사람이 실제로이 버그를 수리 한 적이 있습니까?
dialer

INITRD_N11.GZ는 Serva 개발입니다. 수정 된 답변을 참조하십시오. 내가 수행 한 버그 보고서에 대한 링크가 있습니다. Ubuntu Launchpad 계정이 있다면 버그를 "확인"할 수 있습니다. 향후 릴리스에서이 문제를 해결하는 데 도움이됩니다.
Pat
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.