Copia i file senza perdere le autorizzazioni per file / cartelle


36

Come posso copiare file / cartelle da un computer Ubuntu su un filesystem ext4 su un altro computer Ubuntu che si trova anche su un filesystem ext4, usando una chiavetta USB che usa un filesystem vfat senza perdere i permessi dei file?

Ho provato il ctrl-c di base dal computer di origine, quindi ctrl-v su usb, quindi ctrl-c da usb, quindi ctrl-v sul computer di destinazione e nessuna delle autorizzazioni per file / cartelle rimane intatta.


vfatnon supporta le autorizzazioni del filesystem unix. Dovrai conservarli in un tarball, o qualcosa di simile, se vuoi preservarli.
Alex L.

perché no rsync, come ho suggerito?
Siddhartha

Risposte:


56

È possibile creare un archivio tar della sorgente, copiarlo sull'altro computer utilizzando l'unità USB ed estrarlo lì. Tar conserva i permessi dei file.

1 - Sul computer di origine:

cd /path/to/folder/to/copy
tar cvpzf put_your_name_here.tar.gz .

2 - Copia put_your_name_here.tar.gzsull'unità USB e poi sull'altro computer

3 - Sul computer di destinazione:

cd /path/to/destination/folder
tar xpvzf put_your_name_here.tar.gz

tar ricrea la struttura delle cartelle archiviate con tutte le autorizzazioni intatte.

Tali comandi archiviano i contenuti della cartella di origine e quindi li estraggono nella cartella di destinazione. Se si desidera copiare la cartella stessa, è necessario, al passaggio 1:

cd /path/to/parent/folder
tar cvpzf put_your_name_here.tar.gz folder_to_copy

Lo stesso meccanismo potrebbe essere utilizzato per singoli file.


Se riesci a connetterti da un computer all'altro utilizzando ssh, @siddharthart answer ( rsync) potrebbe essere più pratico.


Non dimenticare la -pbandiera tarper garantire che le autorizzazioni vengano conservate.
Haziz,

@haziz In realtà, -pnon è davvero necessario, vedi il mio commento alla risposta di @ mikewhatever. Il -znon è necessaria anche quando scompattazione, come tarè in grado di capire il tipo di compressione stessa, a meno che sia una versione. Includere le bandiere nel comando non fa male, duro.
sierrasdetandil,

3
Non credo che tu possa contare su questo comportamento. Citando BTW dalla pagina man tar "-p, --preserve-Permissions, --same-Permissions estrae informazioni sui permessi dei file (default per superutente)" questo sembra essere il comportamento predefinito solo se tar è usato come superutente. Non conta su questo come comportamento predefinito. Inoltre vorrei sempre esplicitamente sillabare la -zbandiera durante la compressione o decompressione (o -jse si utilizza bzip2).
Haziz,

È possibile aggiungere facilmente la crittografia (di base)? (Immagino che ci sarebbero molti modi per farlo, ma mi chiedo, ma se fatto tramite la riga di comando, come verrebbe fornita la password / chiave di crittografia / passphrase? In questo modo ******** o come il sudo-Password, in cui nessuna chiave-colpi sono resi visibili)?
nocciola su Natty

tarsoffre di un problema molto serio: soffoca su percorsi più lunghi di 100 caratteri.
Nathan Osman,

12

Puoi provare rsynccon -aflag per mantenere tutte le autorizzazioni durante la copia. Non sono a conoscenza di una soluzione più semplice, ma l'avevo usata per uno scopo in passato.

Rsync offre un supporto brillante per la ripetuta copia, l'aggiornamento di cartelle ecc., Pur rimanendo incredibilmente veloce.


6
Mi piace rsync(lo adoro, in effetti: -]), ma le autorizzazioni per i file ext4 andranno perse se il dispositivo di destinazione è formattato in vfat, come descritto da oshirowanen. La tarsoluzione è migliore in questo caso.
yuric

6

Penso che il taring e quindi l'annullamento della registrazione dovrebbero funzionare sia sui file che sulle directory.

tar:

tar cvpfz /target.tar.gz /source/

per decomprimere:

tar xvpfz /source/

La pbandiera sta per --preserve-permissions.

Dovresti vedere man tarper maggiori informazioni.


Ho appena fatto un test rapido per essere sicuro e -pnon è necessario: tar conserva le autorizzazioni per impostazione predefinita, almeno quando l'utente possiede i file che vengono archiviati / estratti.
sierrasdetandil,

2
È vero, ma non ci hai detto quali file desideri copiare e non avevo motivo di ritenere nulla da solo.
mikewhatever,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.