CPIO(1L)

NOME
cpio - executa funções de arquivamento de dados

SINOPSE
cpio {-o|--create} [-0acvABLV] [-C bytes] [-H format] [-M message] [-O [[user@]host:]archive] [-F [[user@]host:]archive] [--file=[[user@]host:]archive] [--format=format] [--message=message] [--null] [--reset-access-time] [--verbose] [--dot] [--append] [--block-size=blocks] [--dereference] [--io-size=bytes] [--quiet] [--force-local] [--help] [--version] < name-list [> archive] cpio {-i|--extract} [-bcdfmnrtsuvBSV] [-C bytes] [-E file] [-H format] [-M message] [-R [user][:.][group]] [-I [[user@]host:]archive] [-F [[user@]host:]archive] [--file=[[user@]host:]archive] [--make-directories] [--nonmatching] [--preserve-modification-time] [--numeric-uid-gid] [--rename] [--list] [--swap-bytes] [--swap] [--dot] [--unconditional] [--verbose] [--block-size=blocks] [--swap-halfwords] [--io-size=bytes] [--pattern-file=file] [--format=format] [--owner=[user][:.][group]] [--no-preserve-owner] [--message=message] [--force-local] [--no-absolute-filenames] [--sparse] [--only-verify-crc] [--quiet] [--help] [--version] [pattern...] [< archive] cpio {-p|--pass-through} [-0adlmuvLV] [-R [user][:.][group]] [--null] [--reset-access-time] [--make-directories] [--link] [--quiet] [--preserve-modification-time] [--unconditional] [--verbose] [--dot] [--dereference] [--owner=[user][:.][group]] [--no-preserve-owner] [--sparse] [--help] [--version] destination-directory < name-list

DESCRIÇÃO
Esta página de manual documenta a versão GNU do programa cpio. cpio copia arquivos para ou de um arquivo em formato cpio ou tar, o qual é um arquivo que contém outros arquivos e informações sobre estes, tais como seu nome, dono, data de atualização e permissões de acesso. O arquivo pode estar em outro disco, em uma fita ou um conector para outra tarefa. cpio tem três modos de operação.

No modo de cópia de saída, cpio copia os arquivos em um arquivo maior. Ele lê uma lista de nomes de arquivos, um em cada linha, na entrada padrão, e grava-os em um arquivo maior na saída padrão. Um forma típica de gerar uma lista de arquivos é através do comando find ; devendo-se informar o parâmetro -depth para minimizar os problemas com permissões em diretórios que não podem ser gravados ou pesquisados.

No modo de cópia de entrada, cpio extrai os arquivos de um arquivo maior ou de uma lista de arquivos de entrada. Ele lê o arquivo da entrada padrão. Qualquer dado informado na linha de comando, que não seja um parâmetro de cpio será considerado um padrão global; e somente arquivos contidos no arquivo maior cujos nomes confiram com um ou mais desses padrões serão extraídos do arquivo maior. Dependendo do ambiente de trabalho, um nome de arquivo iniciado por `.' é um nome de arquivo que pode ser extraído via padrões, assim como arquivos que contenham um `/' em seu nome. Caso nenhum padrão seja informado todos os arquivos serão extraídos.

No modo de cópia de passagem, cpio copia arquivos de uma árvore de diretórios para outra, combinando os modos cópia de entrada e de saída sem na verdade usar o modo de arquivamento. Ele lê uma lista de arquivos a serem copiados a partir da entrada padrão; o diretório no qual eles serão copiados deve ser informado como um parâmetro não opcional.

cpio suporta os seguintes formatos de arquivamento: binário, ASCII antigo, ASCII novo, crc, binários HPUX, binários HPUX antigos, tar antigos e tar POSIX.1. O formato binário está obsoleto porque codifica informações sobre arquivos de uma forma não portável entre diferentes arquiteturas de máquinas. O formato ASCII antigo é portável entre diferentes arquiteturas, mas não pode ser usado em sistemas de arquivos com mais de 65535 inodes. O formato ASCII novo é portável entre diferentes arquiteturas, e pode ser usado em sistemas de arquivos de qualquer tamanho, mas não é suportado por todas as versões de cpio atuais, porém é suportada somente pelas versões GNU e Unix System V R4. O formato crc é similar ao formato ASCII novo, mas contém ainda um algoritmo de checagem de integridade para cada arquivo que cpio calcula ao criar o arquivo maior, o qual é verificado quando o arquivo é extraído. Os formatos HPUX são disponibilizados para garantir a compatibilidade com arquivos gerados pelo cpio em plataformas HPUX, os quais são armazenados de forma diferente.

O formato tar é disponibilizado para manutenção da compatibilidade com o comando tar. Esta opção não pode ser utilizada com nomes de arquivos maiores que 100 caracteres, assim como não pode armazenar arquivos especiais (blocos ou dispositivos de caracteres). A opção POSIX.1 não pode ser usada com arquivos cujos nomes sejam maiores que 255 caracteres (a menos que eles tenham um "/" no lugar certo).

Por padrão, cpio cria arquivos em formato binário, para manter a compatibilidade com versões anteriores do cpio. Ao extrair de arquivos maiores, cpio automaticamente reconhece qual o tipo de arquivo que está sendo lido e pode ainda ler arquivos criados em máquinas com uma ordem de bytes diferente.

Algumas das opções de cpio aplicam-se somente a certos modos de operação; veja na seção SINOPSE uma lista de quais opções são possíveis em quais modos.

  OPÇÕES

-0, --null
    Nos modos cópia de saída ou de passagem, lê uma lista de arquivos terminados por um caracter nulo ao invés de nova linha, então os arquivos cujos nomes contém nova linha podem ser arquivados. O programa GNU find é uma das formas de produzir uma lista de nomes de arquivos terminados por nulo.

-a, --reset-access-time
    Retorna a data de acesso aos arquivos imediatamente após a sua leitura, parecendo então que eles não foram lidos.

-A, --append
    Adiciona a um arquivo já existente. Funciona somente no modo de cópia de saída. O arquivo deve estar em disco e especificado através dos parâmetros -O ou -F (--file) .

-b, --swap
    No modo de cópia de entrada, troca as meias palavras de palavras inteiras e bytes de meias palavras em dados. Equivalente a -sS. Esta opção deve ser utilizada para converter inteiros de 32 bits entre máquinas que utilizam formatos pequeno endian e grande endian.

-B  Configura o tamanho do bloco de E/S em 5120 bytes.

--block-size=TAMANHO-BLOCO
    Configura o tamanho do bloco de E/S para TAMANHO-BLOCO vezes 512 bytes.

-c  Usa o formato de arquivamento portável ASCII antigo.

-C TAMANHO, --io-size=TAMANHO
    Configura o tamanho do bloco de E/S para TAMANHO em bytes.

-d, --make-directories
    Cria os diretórios sempre que necessário.

-E FILE, --pattern-file=ARQUIVO
    No modo de cópia de entrada, lê padrões adicionais especificando os nomes de arquivos a serem extraídos ou listados a partir de ARQUIVO. As linha de ARQUIVO são criadas como se fossem argumentos não opcionais de cpio.

-f, --nonmatching
    Copiar somente os arquivos que não coincidam com quaisquer padrões informados.

-F, --file=archive
    Nome do arquivo maior a ser usado ao invés de ser utilizada a entrada ou saída padrões. Para usar uma unidade de fita ou outra máquina como arquivo maior, use um nome de arquivo iniciado por `NOME_MÁQUINA:'. O nome da máquina pode ser precedido por um nome de usuário precedido por um `@' para se acessar a unidade de fita remota como se fosse o usuário, caso ele tenha permissões para tanto (tipicamente uma entrada no arquivo `~/.rhosts').

--force-local
    Com -F, -I, ou -O, considera o nome do arquivo maior como um arquivo local, mesmo se ele contiver vírgulas, o que pode normalmente indicar um arquivo em uma máquina remota.

-H FORMATO, --format=FORMATO
    Indicação do formato do arquivo maior. Os formatos válidos são listados a seguir; observando-se que podem ser reconhecidos mesmo em maiúsculas. O padrão é em modo de entrada, utilização de reconhecimento automático do formato do arquivo e em modo de cópia de saída no formato bin.

    bin O formato binário obsoleto.

    odc O antigo formato portável (POSIX.1).

    newc
        O novo formato portável (SVR4), o qual suporta sistemas de arquivos com mais de 65536 inodes.

    crc O novo formato portável (SVR4)com um código de checagem de integridade adicionados.

    tar O velho formato tar.

    ustar
        O formato POSIX.1 tar. Reconhece arquivos GNU tar, similar, mas não idêntico.

    hpbin
        O formato binário obsoleto usado pelo cpio do HPUX (o qual armazena arquivos de dispositivos de forma diferenciada).

    hpodc
        O formato portável usado pelo cpio do HPUX (o qual armazena arquivos de dispositivos de forma diferenciada).

-i, --extract
    É executado em modo de cópia de entrada.

-I archive
    Nome do arquivo maior a ser usado ao invés da entrada padrão. Para usar uma unidade de fita ou outra máquina como arquivo maior, use um nome de arquivo iniciado por `NOME_MÁQUINA:'. O nome da máquina pode ser precedido por um nome de usuário precedido por um `@' para se acessar a unidade de fita remota como se fosse o usuário, caso ele tenha permissões para tanto (tipicamente uma entrada no arquivo `~/.rhosts').

-k  Ignorado; para compatibilidade com outras versões do cpio.

-l, --link
    Criar ligações entre arquivos, ao invés de copiá-los, sempre que possível.

-L, --dereference
    Cancela a referência das ligações simbólicas (copia os arquivos para as quais eles apontam ao invés de copiar as ligações).

-m, --preserve-modification-time
    Preserva as datas de modificação de arquivos armazenados, ao criar os arquivos.

-M MESSAGEM, --message=MESSAGEM
    Imprime MENSAGEM quando o final do volume da mídia aonde está sendo realizada a cópia de segurança é atingido (como por exemplo uma fita ou um disquete), e solicita ao usuário a inserção de um novo volume. Caso MENSAGEM contenha os caracteres "%d", eles serão substituídos pelo número do volume atual (começando por 1).

-n, --numeric-uid-gid
    Na lista de arquivos da tabela de conteúdos, mostra UID e GID em formato numérico, ao invés de traduzi-los para nomes.

--no-absolute-filenames
    No modo de cópia de entrada, cria todos os arquivos em um caminho relativo ao diretório atual, mesmo se eles contiverem um nome absoluto no arquivo maior.

--no-preserve-owner
    No modo cópia de entrada e cópia de passagem, não altera o dono dos arquivos; deixando como o dono o usuário que extraí-los. Este é o padrão para usuários diferentes de superusuário, assim aqueles usuários em System V não apagarão arquivos inadvertidamente.

-o, --create
    Executar em modo de cópia de saída.

-O archive
    O nome do arquivo maior de saída ao invés de usar a saída padrão. Para usar uma unidade de fita ou outra máquina como arquivo maior, use um nome de arquivo iniciado por `NOME_MÁQUINA:'. O nome da máquina pode ser precedido por um nome de usuário precedido por um `@' para se acessar a unidade de fita remota como se fosse o usuário, caso ele tenha permissões para tanto (tipicamente uma entrada no arquivo `~/.rhosts').

--only-verify-crc
    Ao usar o formato de arquivo CRC em modo de cópia de entrada, somente verificar o CRC de cada arquivo, e não extraí-los.

-p, --pass-through
    Executar em modo de passagem.

--quiet
    Não imprimir o número de blocos copiados.

-r, --rename
    Renomear os arquivos de forma interativa.

-R [user][:.][group], --owner [user][:.][group]
    Nos modos cópias de saída ou cópia de passagem, muda o dono de todos os arquivos criados para o usuário e/ou grupo informados. Ou o usuário, ou o dono, ou ambos devem ser informados. Caso o grupo seja omitido mas os separadores ":" ou "." são informados, usa o grupo de acesso do usuário indicado. Somente o superusuário pode mudar os donos de arquivos.

--sparse
    Nos modos cópias de saída ou cópia de passagem, grava os arquivos preenchidos com grandes blocos de zeros como arquivos esparsos.

-s, --swap-bytes
    No modo de cópia de entrada, troca os bytes de cada meia palavra (par de bytes) dos arquivos.

-S, --swap-halfwords
    No modo de cópia de entrada, troca os bytes de cada meia palavra (quatro bytes) dos arquivos.

-t, --list
    Apresenta uma lista da tabela de conteúdos da entrada.

-u, --unconditional
    Regrava todos os arquivos, sem perguntar se os novos arquivos devem sobrepor os antigos existentes.

-v, --verbose
    Lista os arquivos processados, ou com a opção -t, fornece uma lista da tabela de conteúdos no estilo `ls -l'. No modo de apresentação da tabela de arquivos, nomes de usuários e grupos do arquivo maior que não existam no sistema local, são substituídos pelos nomes que correspondem localmente ao UID e GID armazenados no arquivo.

-V --dot
    Imprime um "." para cada arquivo processado.

--version
    Imprime a versão do programa cpio e finaliza.

TRADUÇÃO E REVISÃO PARA A LÍNGUA PORTUGUESA
Sandro Nunes Henrique <sandro@conectiva.com.br> (tradução) Eliphas Levy Theodoro <eliphas@conectiva.com.br> (revisão)