sviluppo-web-qa.it

comprimere dd backup al volo

Forse questo sembrerà una domanda stupida, ma il modo in cui sto cercando di farlo non funziona.

Sono su livecd, l'unità non è montata, ecc.

Quando eseguo il backup in questo modo

Sudo dd if=/dev/sda2 of=/media/disk/sda2-backup-10august09.ext3 bs=64k

... normalmente funzionerebbe ma non ho abbastanza spazio su hd esterno su cui sto copiando (QUASI si adatta quasi). Quindi volevo comprimere in questo modo

 Sudo dd if=/dev/sda2 | gzip > /media/disk/sda2-backup-10august09.gz

... ma mi sono state negate le autorizzazioni. Non capisco.

25
Phil

Hai accesso al file sda2-backup ... gz? Sudo funziona solo con il comando dopo di esso e non si applica al reindirizzamento. Se si desidera che si applichi al reindirizzamento, eseguire Shell come root in modo che anche tutti i processi figlio siano root:

Sudo bash -c "dd if=/dev/sda2 | gzip > /media/disk/sda2-backup-10august09.gz"

In alternativa, è possibile montare il disco con le opzioni di montaggio uid/gid (presupponendo ext3) in modo da disporre delle autorizzazioni di scrittura come qualsiasi utente. Oppure usa root per creare una cartella in/media/disk per cui hai i permessi.

Altre informazioni che potrebbero aiutarti:

  • Le dimensioni del blocco contano davvero solo per la velocità per la maggior parte. Il valore predefinito è 512 byte che si desidera conservare per l'MBR e i floppy disk. Dimensioni maggiori fino a un certo punto dovrebbero accelerare le operazioni, considerandolo analogo a un buffer. Ecco un link a qualcuno che ha fatto alcuni benchmark di velocità con blocchi di dimensioni diverse. Ma dovresti fare i tuoi test, poiché le prestazioni sono influenzate da molti fattori. Dai un'occhiata anche all'altra risposta di andreas
  • Se vuoi farlo attraverso la rete con ssh e netcat, quindi lo spazio potrebbe non essere un grosso problema, vedi questa domanda predefinita del server .
  • Hai davvero bisogno di un'immagine della partizione, potrebbero esserci migliori strategie di backup?
  • dd è un molto comando pericoloso, usa of invece di if e finisci per sovrascrivere ciò che stai cercando di backup !! Notate come le chiavi o e i sono una accanto all'altra? Quindi sii molto, molto attento.
41
Kyle Brandt

Nel primo caso, il dd è in esecuzione come root.

Nel secondo caso, dd è in esecuzione come root ma gzip è in esecuzione come te.

Modifica le autorizzazioni su/media/disk, concediti una shell root o esegui gzip anche come root.

6
chris

Inoltre, puoi sostituire gzip con bzip2 --best per una compressione molto migliore:

Sudo dd if=/dev/sda2 | bzip2 --best > /media/disk/$(date +%Y%m%d_%H%M%S)_sda2-backup.bz2
3
dmityugov