anonymous
написал 25 августа 2004 года в 19:57 (2962 просмотра)
Ведет себя
неопределенно; открыл 1814 темы в форуме, оставил 5575 комментариев на сайте.
Slackware 10.
Вторая машина грузится по PXE. На главной настроен dhcp, tftp, nfs. Всё вроде работает, ядро монолитное 2.6.8.1. Содержимое файла /tftpboot/pxelinux.cfg:
label linux
kernel /vmlinuz-2.6.8.1
APPEND nfsroot=192.168.0.1:/ nfsaddrs=192.168.0.1 root=/dev/nfs
Файл /etc/exports
/ (ro) (ro, insecure. no_root_squash)
При загрузке РХЕ-шной машины надо чтобы стартовал init и цеплялся / главной машины, а так только грузится ядро и всё, до init дело не доходит и / не монтируется. Подскажите куда копать?
Последние комментарии
-
OlegL, 17 декабря в 15:00 → Перекличка 21
-
REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
-
fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
-
Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
-
Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
![ecobeing ecobeing](/uploads/ad/image/d543f002e66d5f1767eb81016544b976336e76e5.png)
Экология и вегетарианство на благо всем живым существам Планеты.
создать правильный initrd и грузить его:
(это у меня так грузится… шлюз. без винта он у меня вообще)
тогда загрузка стопорится с сообщением:
could not find ramdisk image: /initrd.gz
эээххх…
цитирую:
соответственно, должна быть поддержка initrd в ядре.
для nfs-загружаемого pxe-клиента в debian есть несколько пакетов: diskless — создаёт на сервере нужное дерево, netboot — собственно для загрузки самого такого компьютера, diskless-iname-secure и diskless-image-simple — пакеты с файлами, необходимыми для корневого nfs-образа, nfsboot — для предоставления собственно такого способа.
в общем, если не особо понятно, что делать, и как — идёшь на packages.debian.org, скачиваешь эти пакеты (или исходники к ним) и разбираешься.
в этом плане slackware тем и не удобна, что практически всё надо делать самому. это хорошо, когда знаешь, что же именно тебе надо, но во всех остальных случаях появляются проблемы.
Подскажи тогда, что мне даст подгрузка образа initrd, если у меня монолитное ядро? Мне нужен доступ к корню именно по nfs.
Короче, всё настроил, грузит и монтирует по nfs!!
Теперь незадача вот в чем:
после загрузки сообщение-
/sbin/e2fsck: no such file or directory while to open /dev/hda1
the superblock couldn’t be read of doesn’t describe a correct ext2 filesystem.
После этого выход в single-user maintenance shell, причем либо control-d b и перезагрузка, или набрать пароль рута и попадаешь в нормальный shell, и имеешь доступ к файлам и вроде всё ок.
Как бы настроить чтобы попадать прямиком в shell……
/ по nfs экспортируется с опциями (ro,insecure.no_root_squash)
а что, в initrd только модули могут находиться? :))
см. /etc/fstab, /etc/mtab для загружаемой машинки.
и, соответственно, стартовые скрипты при загрузке системы
пляски продолжаются…
покоцал скрипты, теперь РХЕ машина догружается до логина!
Не совсем понятно как жить при загрузках с монтированием / как ro. Почти ничего нельзя сделать, даже по ssh зарутитьтся, все логи в read-only! Вот думаю, что безопаснее: смонтировать nfsroot=rw, или скопировать весь этот локальный / в /tftpboot/pxeclient и только его монтировать как nfsroot=rw?
эээ..
общим правилом является вынесение изменяемых файлов (на их месте делаются симлонки) либо в /dev/shm, либо в отдельный nfs-rw ресурс.
да, я так и сделал, т.к. уж слишком несовместимые загрузочные скрипты получаются…
всё устраивает, единственная беда:
когда делаю ping pxeclient на самом pxeclient , то получаю connect: Invalid argument. А если коннектиться по ssh к pxeclient, то после авторизации терминал зависает!!!
а есть ли
/etc/protocols
и настроен ли
/etc/resolv.conf
(или /etc/hosts)
да, всё есть — взято 1:1 с главной машины! В /etc/hosts только главная машина со статическим ip.