Sida 1 av 1

Kopiera ett rotfilsystem över nätverk?

Postat: 08 mar 2010, 16:45
av CryingFreeman
Jag pysslar som sagt med en deployment-lösning som ska kunna installera datorer över nätverk. I det arbetet behöver jag kopiera en NFS-monterad root-partition till en annan dator, komplett med devices, sys-filsystem och allt.

Jag har testat detta med scp, vilket inte fungerade så som jag gjorde det (i princip en scp -r), vilket jag misstänkte innan. Kopieringen kom till /dev/midi01 och sen bara det tuggade iväg upp mot 200 Mbyte. Det var många midisignaler i den enheten.. ::) Jag antar att den kunde ha matat på i evighet.

NFS-rooten är alltså installerad i en komplett chroot-miljö (ungefär 330 Mbyte) som ligger på servern under /srv/fai/nfsroot/live/filesystem.dir/. När klienten bootar över PXE, får den en kärna över nätverket och monterar sedan NFS-rooten som rotfilsystem. Denna miljö används sedan för installationen av klienten.

Jag vill alltså kunna kopiera hela NFS-rooten från servern till en klient. Rsync, scp, rcp, dd eller något annat spelar ingen roll, bara jag får över ett system som fungerar från en dator till en annan.

Är det någon som har ett förslag på hur detta kan lösas?

Re: Kopiera ett rotfilsystem över nätverk?

Postat: 08 mar 2010, 21:22
av Rune.K
Prova sftp.
Själv använder jag mycket hellre sftp än scp, ingår i ssh-paketet.

Edit:
Det här är kanske intressant för dej. "Booting your machine over HTTP " > http://boot.kernel.org/
Testade det i september 2009. Jag fick nog bara ner PXE Knife när jag hade bootat med USBminnet, resten fick jag timeout på...
Källkoden finns tillgänglig.

Re: Kopiera ett rotfilsystem över nätverk?

Postat: 08 mar 2010, 22:03
av mcNisse
Jag skulle testa med ssh och cpio.

Re: Kopiera ett rotfilsystem över nätverk?

Postat: 08 mar 2010, 22:10
av Emil.s
Du kan inte kopiera /dev, /sys eller /proc rakt av. För att få en chroot att funka normalt så lär du montera dem med "mount --bind". Typ:
"sudo mount --bind /proc /path/to/chroot/proc".

Annars kan chrooten aldrig få kontakt med hårdvaran på ett vettigt sätt.

Så i ditt fall så lär du får kärnan (som laddas över PXE), att skapa /dev/*** osv. Det kanske sköts automatiskt?
Har faktiskt ingen aning.