Compressione di cartelle con password tramite riga di comando


59

Vorrei sapere se è possibile effettuare le seguenti operazioni tramite CLI.

Ho una cartella Fche contiene diverse sottocartelle e alcuni file. Voglio comprimere la cartella Fin un .zipfile con "password-only-extract".



1
Googler ... → si prega di smettere di mettere ogni fiducia nelle password zip “protezione” - vedi risposta qui sotto
Frank Nocke

Risposte:


68

Vai alla cartella pertinente usando il cdcomando in questo modo:

cd /path/to/folder/

(Se la tua cartella Fè nella cartella Home, puoi semplicemente farlo cd ~.)

Quindi, digita il tuo terminale:

zip -er F.zip F

Questo ti chiederà una password. Daglielo e questo creerà un file zip protetto da password da quella cartella.

  • -eabilita la crittografia per il tuo file zip. Questo è ciò che lo fa chiedere la password.
  • -r rende il comando ricorsivo, il che significa che tutti i file all'interno della cartella verranno aggiunti al file zip.
  • F.zip è il nome del file di output.
  • F è la cartella che vuoi comprimere.

Esiste un'opzione chiamata -Pche ti permetterà di passare la password nel comando stesso, ma ciò non va bene perché c'è sempre la minaccia di sbirciare da sopra la spalla . Inoltre, altri utenti possono visualizzare la password utilizzando il ps -efcomando se si utilizza -Pswitch. Con tale -Popzione, il comando sarà simile al seguente:

zip -P password -r F.zip F
  • Visita man zipper maggiori informazioni.

-e significa crittografare
dedunumax

Ehi, ho appena modificato la tua domanda per includere un po 'di contesto. Ma puoi modificarlo per includere il tuo -e means encryptcommento, così come il significato -rdell'opzione. Grazie!
Alaa Ali,

Tx Dedunu per il tuo input. Ho solo bisogno di un ulteriore chiarimento. Cosa succede se devo automatizzare questo ... Quello che voglio dire è se invece di richiedere una password posso impostare una password nel comando stesso?
UnderDog

Ho aggiunto anche quello.
dedunumax,

1
Ma è altamente sconsigliato l'uso perché la tua cronologia verrà registrata. altrimenti gli altri utenti possono vedere la tua password con "ps aux"
dedunumax

40

La crittografia dei file zip è debole e può essere interrotta molto facilmente. Usa invece 7zip.

7z a -p Fdirectory.7z /path/to/F
  • a Il comando dice a 7zip di aggiungere file.
  • -p Puoi anche lasciarlo vuoto in modo che ti chieda in modo interattivo o digitare la password qui.
  • Fdirectory.7z è il nome dell'archivio da creare.
  • /path/to/Fè il percorso della tua directory. Può essere un percorso relativo o completo.

Si consiglia di non digitare la password nella shell poiché è visibile a chiunque abbia accesso alla /procdirectory.


3
Sembra che se si passa -psolo 7ze omette la password, si chiede in modo interattivo - anche una seconda volta per conferma.
ssc,

@ssc è l'opzione più utile, ma non è nelle pagine del manuale ..
Braiam

Ho provato il comando sopra per comprimere una cartella con pochi file per un totale di ~ 19 KB di dimensioni. Eppure ci vogliono circa 2 minuti! Perché ci vuole così tanto tempo?
BringBackCommodore64

2
@ BringBackCommodore64 Non usare il flag -r per ricorrere. 7z richiamerà la directory di origine senza quel flag. -raggiungerà invece tutti i file e le sottodirectory della directory di lavoro corrente . La pagina man di 7z mette specificamente in guardia contro questo e dice che questa bandiera dovrebbe essere evitata. linux.die.net/man/1/7z
Håken Lid

1
@ rubo77 qualsiasi formato è soggetto a bruteforcing, ma 7zip algo non è facilmente fragile come mostrato dalla risposta in cui la password> 12 caratteri potrebbe essere impossibile.
Braiam
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.