English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Linux cpio命令

Manuale dei comandi di Linux

Linux cpio命令用于备份文件。

cpio 是用来建立,还原备份档的工具程序,它可以加入,解开 cpio 或 tar 备份档内的文件。

语法

cpio [-0aABckLovV][-C <输入/输出大小>][-F <备份档>][-H <备份格式>][-O <备份档>][--block-size=<区块大小>][--force-local][--help][--quiet][--version] 或 cpio [-bBcdfikmnrsStuvV][-C <输入/输出大小>][-E <范本文件>][-F <备份档>][-H <备份格式>][-I <备份档>][-M <回传信息>][-R <拥有者><:/.><所属群组>][--block-size=<区块大小>][--force-local][--help][--no-absolute-filenames][--no-preserve-owner][--only-verify-crc][--quiet][--sparse][--version][范本样式...] 或 cpio [-0adkiLmpuvV][-R <拥有者><:/.><所属群组>][--help][--no-preserve-owner][--quiet][--sparse][--version][目的目]

参数

  • -0或--null  接受新增列控制字符,通常配合find指令的"-print0"参数使用。
  • -a或--reset-access-time  重新设置文件的存取时间。
  • -A或--append  附加到已存在的备份档中,且这个备份档必须存放在磁盘上,而不能放置于磁带机里。
  • -b或--swap  此参数的效果和同时指定"-sS"参数相同。
  • -B  将输入/输出的区块大小改成5210 Bytes。
  • -c  使用旧ASCII备份格式。
  • -C<区块大小>或--io-size=<区块大小>  设置输入/输出的区块大小,单位是Byte。
  • -d或--make-directories  如有需要cpio会自行建立目录。
  • -E<范本文件>或--pattern-file=<范本文件>  指定范本文件,其内含有一个或多个范本样式,让cpio解开符合范本条件的文件,格式为每列一个范本样式。
  • -f o --nonmatching fa sì che cpio decodifichi tutti i file che non corrispondono al modello.
  • -F<backup> o --file=<backup> specifica il nome del file di backup, sostituisce l'input o l'output standard e può anche utilizzare questo per accedere al file di backup su un dispositivo di archiviazione remoto su un altro host.
  • -H<formato> specifica il formato di backup desiderato.
  • -i o --extract esegue la modalità copy-in, ripristina il file di backup.
  • -l<backup> specifica il nome del file di backup, sostituisce l'input standard e può anche utilizzare questo per leggere il file di backup su un dispositivo di archiviazione remoto su un altro host.
  • -k questo parametro viene ignorato e serve solo a risolvere problemi di compatibilità tra diverse versioni di cpio.
  • -l o --link sostituisce la copia del file con un collegamento hard, può essere utilizzato nella modalità copy-pass.
  • -L o --dereference non crea collegamenti simbolici, copia direttamente il file originale al quale il collegamento si riferisce.
  • -m o preserve-modification-time non sostituire la data di modifica del file.
  • -M<informazione> o --message=<informazione> imposta l'informazione di cambio del supporto di archiviazione.
  • -n o --numeric-uid-gid quando si elencano i contenuti del file di backup con il parametro "-tv", se si aggiunge anche il parametro "-n", l'elenco dei file sarà mostrato sostituendo i nomi del proprietario e del gruppo con gli ID utente e gruppo.
  • -o o --create esegue la modalità copy-out, crea un file di backup.
  • -O<backup> specifica il nome del file di backup, sostituisce l'output standard e può anche utilizzare questo per archiviare il file di backup su un dispositivo di archiviazione remoto su un altro host.
  • -p o --pass-through esegue la modalità copy-pass, salta il passaggio di backup e copia direttamente i file nella directory di destinazione.
  • -r o --rename utilizza la modalità interattiva quando il nome del file deve essere modificato.
  • -R<proprietario><:/.><gruppo> o
  • ----owner<proprietario><:/.><gruppo> durante la modalità copy-in per ripristinare i file di backup, o nella modalità copy-pass per copiare i file, è possibile specificare questi backup, il proprietario e il gruppo dei file copiati.
  • -s o --swap-bytes scambia il contenuto di ogni coppia di byte.
  • -S o --swap-halfwords scambia il contenuto di ogni mezzaword.
  • -t o --list mostra il contenuto degli input.
  • -u o --unconditional sostituisce tutti i file, indipendentemente dalla data e dall'ora, senza chiedere conferma e copia direttamente.
  • -vo--verbose  Mostra dettagliati i passaggi di esecuzione dell'istruzione.
  • -Vo--dot  Aggiungi il punto "." davanti al programma di esecuzione di ogni file durante l'esecuzione dell'istruzione.
  • --block-size=<dimensione del blocco>  Imposta la dimensione del blocco di input/output, se il valore impostato è 5, la dimensione del blocco è 2500, se impostato a 10, la dimensione del blocco è 5120, e così via.
  • --force-local  Obbliga a salvare il file di backup sul host locale.
  • --help  Aiuto online.
  • --no-absolute-filenames  Utilizza il percorso relativo per stabilire il nome del file.
  • --no-preserve-owner  Non conservare il proprietario del file, chi apre il file di backup, i file appartengono a chi lo apre.
  • -only-verify-crc  Quando il file di backup utilizza il formato CRC, è possibile utilizzare questo parametro per verificare che ogni file nel file di backup sia corretto.
  • --quiet  Non mostrare il numero di blocchi copiati.
  • --sparse  Se un file contiene molti byte consecutivi di 0, questo file viene salvato come file sparsamente.
  • --version  Mostra informazioni sulla versione.

Esempio online

Creazione del file di backup

[[email protected] var]# ll //Mostra i file nella directory corrente
Totale 164
drwxr-xr-x  2 root  root  4096 30 marzo 2008 account
drwxr-xr-x  9 root  root  4096 30 marzo 2008 cache
drwxr-xr-x  3 netdump netdump 4096 30 marzo 2008 crash
drwxr-xr-x  3 root  root  4096 30 marzo 2008 db
drwxr-xr-x  3 root  root  4096 30 marzo 2008 empty
drwxr-xr-x  3 root  root  4096 30 marzo 2008 ftp
drwxrwx--T  2 root  gdm   4096 9 aprile 20:17 gdm
drwxr-xr-x 25 root  root  4096 2008-03-30 lib
drwxr-xr-x  2 root  root  4096 2004-08-13 local
drwxrwxr-x  6 root  lock  4096 5月 8 15:25 lock
drwxr-xr-x 14 root  root  4096 5月 8 15:14 log
lrwxrwxrwx  1 root  root   10 2008-03-30 mail -> spool/mail
drwxr-xr-x  2 root  root  4096 2004-08-13 nis
drwxr-xr-x  2 root  root  4096 2004-08-13 opt
drwxr-xr-x  2 root  root  4096 2004-08-13 preserve
drwxr-xr-x 16 root  root  4096 5月 8 15:14 run
drwxr-xr-x 16 root  root  4096 2008-03-30 spool
drwxrwxrwt  3 root  root  4096 1月 13 18:53 tmp
drwx------  2 root  root  4096 2004-07-08 tux
drwxr-xr-x  8 root  root  4096 1月 19 19:39 www
drwxr-xr-x  3 root  root  4096 2008-03-30 yp
[[email protected] var]# ls | cpio -o >123.cpio //Crea il file di backup
25 blocchi
[[email protected] var]# ll //Mostra i file nella directory corrente
Totale 172
-rw-r--r--  1 root  root  1024 24 maggio 13:06 123.cpio
drwxr-xr-x  2 root  root  4096 30 marzo 2008 account
drwxr-xr-x  9 root  root  4096 30 marzo 2008 cache
drwxr-xr-x  3 netdump netdump 4096 30 marzo 2008 crash
drwxr-xr-x  3 root  root  4096 30 marzo 2008 db
drwxr-xr-x  3 root  root  4096 30 marzo 2008 empty
drwxr-xr-x  3 root  root  4096 30 marzo 2008 ftp
drwxrwx--T  2 root  gdm   4096 9 aprile 20:17 gdm
drwxr-xr-x 25 root  root  4096 2008-03-30 lib
drwxr-xr-x  2 root  root  4096 2004-08-13 local
drwxrwxr-x  6 root  lock  4096 5月 8 15:25 lock
drwxr-xr-x 14 root  root  4096 5月 8 15:14 log
lrwxrwxrwx  1 root  root   10 2008-03-30 mail -> spool/mail
drwxr-xr-x  2 root  root  4096 2004-08-13 nis
drwxr-xr-x  2 root  root  4096 2004-08-13 opt
drwxr-xr-x  2 root  root  4096 2004-08-13 preserve
drwxr-xr-x 16 root  root  4096 5月 8 15:14 run
drwxr-xr-x 16 root  root  4096 2008-03-30 spool
drwxrwxrwt  3 root  root  4096 1月 13 18:53 tmp
drwx------  2 root  root  4096 2004-07-08 tux
drwxr-xr-x  8 root  root  4096 1月 19 19:39 www
drwxr-xr-x  3 root  root  4096 2008-03-30 yp
[[email protected] var]# 

Decomprimere il file di backup

[[email protected] var]# ls | cpio -i -l 123.cpio

Decomprimere il file di backup e elencare i dettagli

[[email protected] var]# cpio -t -I 123.cpio  
123.cpio
a.c
b.c
c.c
……Risultati omessi

Forzare la decompressione

[[email protected] var]# cpio -i -u -I 123.cpio 

Decomprimendo, eseguire la corrispondenza inversa per specificare i file da non decomprimere

[[email protected] var]# cpio -i -I 123.cpio -f *.c 
//Non decomprimere i file che terminano con .cpio

Aggiungi file al file .cpio specificato

[[email protected] var]# ls
123.cpio crash ftp local mail preserve tmp yp
account  db  gdm lock  nis  run  tux
cache  vuoto lib log  opt  spool  www
[[email protected] var]# cpio -o -O 123.cpio -A
db  //Inserimento dell'utente, termina premendo Ctrl+D
1 block
[[email protected] var]# 

Backup dei file dall'input standard

[[email protected] test]# ls              
a. a.c b.c c.c d.c  f.c
[[email protected] test]# cpio -o >123.cpio
a.c  //Inserimento dell'utente
b.c
c.c  //Completa l'inserimento premendo Ctrl+D
3 block
[[email protected] test]# 

Copia dei file

[[email protected] test]# cpio -p /root
a.c  //Inserimento dell'utente
b.c
c.c  //Completa l'inserimento premendo Ctrl+D
3 block

Manuale dei comandi di Linux