Backupscript, pipe:ar en tar till en NAS via ssh, segt.

Här diskuterar vi skal, kommandon och klassiska linuxverktyg.
Brasse
Inlägg: 12
Blev medlem: 30 jun 2008, 09:36
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu

Backupscript, pipe:ar en tar till en NAS via ssh, segt.

Inlägg av Brasse »

Som jag nämnde ovan..
Jag använder följande script för enkel backup, från en server till en netgear NAS

Kod: Markera allt

tar --totals -czf - /source | ssh user@192.168.0.1 "cat > /target/backupfile.tar.gz"
Men hastigheten peakar på 1.8MB/s, och snittar på kanske 1.5MB/s och jag misstänker att NASen inte pallar filöverföring via SSH riktigt, då den använder ca 95-99% av CPUn till sshd-processen när jag kör scriptet.

Har någon ett vettigt förslag på alternativ till det här?
Det är ju en oerhört smidig kommandorad, inget mountande av diskar och liknande, inga samba/filservrar på NASen som körs osv.

Då både server och NAS befinner sig i samma nätverk så finns det i dagsläget inte något behov av direkt hög säkerhet(nån kan bara gå å plocka med sig disken istället för att snoka trafiken) så kryptering är inget behov.

Jag är öppen för förslag!
andol
Inlägg: 3093
Blev medlem: 31 dec 2007, 00:19
OS: Ubuntu
Utgåva: 23.10 Mantic Minotaur

Re: Backupscript, pipe:ar en tar till en NAS via ssh, segt.

Inlägg av andol »

Tja, rör det sig om en relativt enkel hemma-NAS så låter det inte alls orimligt att CPU:n inte klarar att hanterar att dekryptera större dataströmmar än så i realtid. En betydligt lättviktigare variant att pröva kan då vara att använda netcat för att sätta upp en enkel TCP-länk att tunnla genom.

Det första steget är att sätta upp en lyssnande netcat på NAS:en. Det kan du göra genom att ssh:a in på den och köra något i stil med följande kommando.

Kod: Markera allt

nas$ nc -l 6565 | cat > /target/backupfile.tar.gz
Därefter kan pipe:a iväg en tar-ström från datorn där filerna ligger.

Kod: Markera allt

datorn$ tar --totals -czf - /source | nc 192.168.0.1 6565
När väl tar-strömmen har strömmat färdigt så avslutar den lyssnande nc:en sig själv.

Är väl egentligen ingen jätterobust lösning för scriptad backup, även om det säkert går att bygga något åtminstone semi-fungerande. Däremot kan det ju vara intressant för engångskörning och testfall, etc.
andol
Inlägg: 3093
Blev medlem: 31 dec 2007, 00:19
OS: Ubuntu
Utgåva: 23.10 Mantic Minotaur

Re: Backupscript, pipe:ar en tar till en NAS via ssh, segt.

Inlägg av andol »

Ett annat alternativ, givet att NAS:en stödjer det, är att dra igång en rsync-demon. På så vis kan du kör "rå" rsync-traffik, utan den i sammanhanget betungande overheaden från ssh.
Brasse
Inlägg: 12
Blev medlem: 30 jun 2008, 09:36
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu

Re: Backupscript, pipe:ar en tar till en NAS via ssh, segt.

Inlägg av Brasse »

Det verkar lite småbökigt och inte helt stabilt, som du säger, med netcat.

NAS:en stöder rsync. Hur skulle ett kommando med rsync, motsvarande det jag kör idag med ssh, kunna se ut ?


Edit: nc finns ej på NASen heller.. :(
Användarvisningsbild
johanre
Serveradmin
Inlägg: 3888
Blev medlem: 22 okt 2006, 09:13
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS
Ort: Malmö

Re: Backupscript, pipe:ar en tar till en NAS via ssh, segt.

Inlägg av johanre »

T.ex:

Kod: Markera allt

rsync --rsync-path=/sokvag/till/rsync/pa/din/NAS -av /source username@192.168.0.1:/target/ 
Brasse
Inlägg: 12
Blev medlem: 30 jun 2008, 09:36
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu

Re: Backupscript, pipe:ar en tar till en NAS via ssh, segt.

Inlägg av Brasse »

Tänkte bara säga att jag löste det via FTP.. följande metod:

Kod: Markera allt

tar --totals -cPzf - /var/www/ | ncftpput -m -c $ftphost "/www/`date "+%Y-%m-%d"`.tar.gz"
Funkar kanon :)
Tack för all hjälp!

Edit: kan passa på att nämna att hastigheten är helt OK också, mellan 15-20MiB/s, jämfört med 1-3MiB/s som jag låg på när jag använde SSH
NAS:en i fråga är en Netgear ReadyNAS NV+
Skriv svar

Återgå till "Terminalforum"