Mam skonfigurowane klucze USB do uruchamiania wielu różnych obrazów systemu Linux. Nie miałbym nic przeciwko dodaniu FreeNAS, a jest też dokument z przykładami do dodaniagrub.cfg
menuentry "FreeNAS-8.0.4-RELEASE-x64" {
insmod ufs2
insmod iso9660
# /usr/local/sbin/grub-probe -d /dev/sde1 -t fs_uuid
# c89c-7b3a
#search --no-floppy --fs-uuid --set c89c-7b3a
set isofile="/boot/FreeNAS-8.0.4-RELEASE-x64.iso"
loopback loop $isofile
kfreebsd (loop)/boot/kernel/kernel.gz
kfreebsd_loadenv (loop)/boot/device.hints
#set FreeBSD.vfs.root.mountfrom=ufs:/dev/ad4s1a
set kFreeBSD.vfs.root.mountfrom=ufs:/dev/acd0
set kFreeBSD.vfs.root.mountfrom.options=rw
#set vfs.root.mountfrom=cd9660:/dev/ad1s1
#set vfs.root.mountfrom.options=rw
}
Nie jestem pewien co do ustawienia roota vfs, oto wynik próby uruchomienia tego;
Niektóre przydatne informacje można znaleźć na; uruchom ISO FreeBSD z pamięci USB GRUB2
grub.cfg
Odpowiedzi:
Ponieważ próbujesz uruchomić dysk flash USB, urządzenie rozpocznie pracę od da. Na wyjściu widać, że został wykryty jako / dev / da0. W zależności od sposobu partycjonowania urządzenia może to być coś takiego jak / dev / da0s1a lub / dev / da0a (jeśli nie ma bsdlabel).
Problem polega na tym, że w zależności od komputera może nie być wykrywany jako da0 we wszystkich przypadkach. da jest również używany do urządzeń scsi, a czytniki mediów USB również pojawią się jako urządzenia da *. Obejściem, kiedy można go uruchomić, jest użycie funkcji etykiety GEOM do „nazwania” punktu montowania, a następnie można zmienić fstab, aby odwoływał się do niego po nazwie. Zawsze będzie działać niezależnie od tego, które urządzenie jest wówczas oznaczone. man glabel, aby uzyskać więcej informacji w środowisku FreeBSD. (lub sprawdź stronę z instrukcjami Freebsd)
źródło
Wygląda na to, że jądro utknęło w martwym punkcie, ponieważ jeśli chodzi o uruchamianie dysku USB, to jeszcze nie informowało o jego istnieniu. Zastanawiam się, co robi twoja konfiguracja, ale nie działa i nie dostarczyła jądra FreeBSD poprawnej nazwy urządzenia do rozruchu.
Musisz zapytać jądro o dostępne dyski, wpisując „?” jak sugeruje monit. Następnie należy wpisać poprawną specyfikację głównego systemu plików dla partycji głównej. Powinno to być coś w rodzaju ufs: / dev / da0s1a w zależności od sposobu partycjonowania dysku USB.
Kiedy znajdziesz prawidłową ścieżkę dysku, powinieneś zmienić plik grub.conf tą ścieżką. Pamiętaj też, że powinien on czytać „FreeBSD”, a nie „kFreeBSD”, ponieważ twoje ustawienie jest po prostu dyskretnie ignorowane.
źródło
Spróbuj dodać zmienną modułu ładującego, aby zwiększyć opóźnienie inicjalizacji USB. Możesz dodać tę zmienną do /boot/loader.conf lub w czasie uruchamiania systemu po znaku zachęty. Możesz też wybrać opcję „3” w menu rozruchu, aby umożliwić rozruch z USB. (nie 100% pewności, czy to 3.)
set kern.cam.boot_delay="10000"
Działa to, gdy proces rozruchu ma problem z zamontowaniem pamięci USB.
Wszystkie powyższe trzy opcje pozwalają osiągnąć to samo
Powodzenia
źródło