Назад | Перейти на главную страницу

Сеть не инициализируется должным образом при загрузке Linux Mint (live CD) с использованием cifs, но работает с nfs

У меня есть сервер TFTP / DHCP / NFS / SMB (сервер Ubuntu 12.04 LTS) на 192.168.26.1. Я использую pxelinux для отображения меню, содержащего параметры запуска и установки для Windows, сетевой установщик Ubuntu и Live CD Linux Mint 17 MATE. Запускать его так, как это, было уже неприятно, и я выдыхаюсь ...

Для Linux Mint я предоставил 2 варианта сетевой загрузки: NFS и CIFS. У меня он полностью работает с NFS: пользователь может выбрать его в меню загрузки, и через некоторое время он попадает на рабочий стол Live CD Linux Mint. Но с CIFS сеть не инициализируется должным образом. При запуске Linux Mint сеть зависает на 120 секунд. Затем он продолжает загружаться на рабочий стол, но чистая network-manager не запускается (и не запускается). Я подозревал, что проблема может заключаться в том, что DHCP-сервер не отвечает, однако в журнале DHCP-сервера я вижу DHCP-запрос и успешный ответ.

Попав на рабочий стол Linux Mint, ifconfig сообщает об IP-адресе, назначенном DHCP, и проверка связи с сервером работает.

Моя конфигурация 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. vmlinuz и initrd находятся в /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 клиентской машины после успешной загрузки в среду рабочего стола:

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

IP, который назначается клиенту в случае успешной загрузки рабочего стола, согласно ifconfig, действительно ...14.

Вот что происходит без в ip=dhcp:

Вот что происходит с ip=dhcp, непосредственно перед отображением на рабочем столе:

Благодарю за любые идеи. Если какие-либо другие журналы (какие?) Помогут, я могу их предоставить.

Эта проблема была решена Serva (Я связан с разработкой Serva)

Полные строки ядра и добавления плюс дополнительный initrd.gz, необходимый для загрузки PXE текущих версий Ubuntu / Mint live с CIFS, можно найти Вот

В основном проблема заключается в ошибке Casper (AFAIK никогда раньше не сообщал / не исправлялся), которая в случае CIFS netmount забывает экспортировать параметр ядра, который позже влияет на сценарии сетевой конфигурации, которые в конечном итоге с задержками и ошибками воссоздают файл / etc / network / интерфейсы.

Если мы увидим строку "добавления" в Ubuntu / Mint Сервы

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 (20 МБ). INITRD_N11.GZ можно бесплатно скачать с сайта Сервы (пожалуйста, не размещайте здесь прямые ссылки)

Если мы продолжим анализировать строку «добавить», мы увидим необходимость добавить параметры монтирования CIFS (OP забывает этот шаг), которые в этом случае передаются в несколько вводящей в заблуждение переменной «NFSOPTS».

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

В этом примере общий ресурс SMB имеет user = serva с паролем = avres, и он будет смонтирован как «Только для чтения», конечно, параметры user / pass должны быть соответственно отредактированы.

Пути TFTP и локатор CIFS - это те, которые требуются структурой репозитория Serva; если PXE-сервер не является Serva, эти параметры необходимо отредактировать соответствующим образом.

Если вы, ребята, загружаете PXE таким образом версии Ubuntu / Mint Live из общего ресурса CIFS, не будет задержек, связанных с сетью, и Интернет / Сеть будут работать сразу после загрузки

Редактировать:

Об ошибке уже сообщили Панель запуска Ubuntu и подтвердил