Sziasztok!
Keresem a megoldást, hogy a Raspberry Pi model 3 B plus tudjon NFS-ről Raspbiant betölteni. A cél az lenne, hogy ne SD kártyáról fusson a Raspbian Stretch Lite, hanem NFS-ről.
Amivel szeretném megoldani, ha lehetséges:
- Raspberry Pi model 3 B plus
- NAS, ami támogatja az NFS-s, RPI-ből fel is tudom mount-olni, valamint támogatja a TFTP szervert is, az is az /nfs mappára mutat
- Tomato firmware alapú router, DHCP-vel (ha ezen kell valamit állítani)
Tehát optimális lenne, ha az RPI valahogy PXE-n keresztül letöltené a TFTP szerverről a boot-hoz szükséges fájlokat és NFS-ről pedig beindulna a Raspbian.
Ezek alapján:
https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmode…
https://www.makeuseof.com/tag/network-boot-raspberry-pi-without-microsd/
https://hackaday.com/2018/10/08/hack-my-house-running-raspberry-pi-with…
http://lig-membres.imag.fr/duble/software/raspberry-pi-netboot/
https://raspberrypi.stackexchange.com/questions/628/how-do-i-configure-…
Amit már megtettem:
echo program_usb_boot_mode=1 | sudo tee -a /boot/config.txt
"
$ vcgencmd otp_dump | grep 17:
17:3020000a
Ensure the output 0x3020000a is correct.
"
Nekem ez oké.
mount 192.168.1.11:/nfs/server01 /nfs/server01/
sudo rsync -xa --progress --exclude /nfs / /nfs/server01
Tehát ott van fent NFS-en a teljes OS.
cd /nfs/server01
sudo mount --bind /dev dev
sudo mount --bind /sys sys
sudo mount --bind /proc proc
Innentől nem tiszta, ha az első leírást akarom követni, ezt:
https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmode…
Elakadtam. Hogy miket kell jelen esetben csinálnom, ha a másik szerver nem RPI, hanem külön NAS + DHCP-s router.
Nekem úgy is jó, ha pendrive-ról valahogy boot-ol, és NFS-ről indul az OS, vagy úgy is, hogy SD kártyáról boot-ol, és onnan olvassa az NFS-t, csak az SD-t lehetőleg read only-ként szeretném használni.
Továbbá ebben az esetben ha jön egy újabb kernel, akkor az SD/USB-t is frissítenem kell, vagy az kb csak egy boot loader lesz, és nem kell hozzá nyúlni?
Köszönöm.
Hozzászólások
3B+ már tud natívan PXE bootot (lásd a leírásod), nem kell SD-vel meg USB-vel bohóckodni.
Tomato-n van dnsmasq meg pxe boot lehetőség, oda tedd a /tftpboot folderbe a /boot tartalmát (meg persze a megfelelő DHCP beállításokat is tedd meg).
A dnsmasq.conf-ot ne szerkeszd, hanem van a Tomato GUI-n egy rész ahol adhatsz saját opciókat hozzá (meg talán a PXE-re is külön).
--
"After successfully ignoring Google, FAQ's, the board search and leaving a undecipherable post in the wrong sub-forum don't expect an intelligent reply."
Első körben nem ment a DNSMASQ beállításai a Tomato firmware-rel, lehet régebbi / butított, jobban megnézem.
Akkor a TFTP-ről küldött file-okat a router-re kell másolnom, hiába van a NAS-on is TFTP szerver?
Köszönöm az infót.
Sakk-matt,
KaTT :)
Ha router DHCP configjaban at tudod állítani a next server DHCP optiont, akkor a nas is lehet a tftp server.
dnsmasq-ban nem next-server, hanem dhcp-boot a konfig option:
https://www.linksysinfo.org/index.php?threads/tomato-dhcp-server-with-p…
Köszönöm kipróbálom, és írok.
Tehát a routeren a DNSMASQ megmondja, hogy melyik IP-ről húzza le TFTP-n a boot-hoz szükséges fájlokat, ami itt jelen esetben a NAS. (Akkor a NAS-on lévő TFTP szerver lesz használva)
Majd a boot ha elindult, akkor pedig NFS-ről folytatja a fájlok beolvasását, és azon fog futni a Raspbian.
Ebben az esetben ha több hasonló PXE-s gép van, hogy oldom meg, hogy más-más NFS mappából működjön? A DNSMASQ-nál, a boot-nál vagy máshol?
(Láttam olyan iskolai hálózatot régen, ahol minden diák gép PXE-ről indult be, külön-külön NFS-es mappából működtek, bár ott Linux volt a router+dhcp+storage is, minden.)
Sakk-matt,
KaTT :)