dpkg-split(1) | dpkg suite | dpkg-split(1) |
dpkg-split - ferramenta de divisão/junção de arquivos de pacote Debian
dpkg-split [option...] command
dpkg-split divide ficheiros de pacotes binários Debian em partes menores e junta-as outra vez, para suportar o armazenamento de ficheiros de pacotes grandes em meios pequenos como as disquetes.
Pode ser operado manualmente usando as opções --split, --join e --info.
Também tem um modo automático, invocado usando a opção --auto, onde mantém uma lista de espera com as partes visíveis mas ainda não juntadas e junta um ficheiro pacote quando tem todas as partes visíveis. As opções --listq e --discard permitem a gestão da lista de espera.
Todas as operações de separar, juntar e meter em lista de espera produzem mensagens informativas na saída standard; estas podem ser ignoradas em segurança.
As partes são nomeadas prefixo.NofM.deb onde N é o número da parte, começando de 1, e M é o número total de partes (ambos em decimal).
Se não for fornecido um prefixo, então é usando o nome de ficheiro de arquivo-completo, incluindo o directório, com qualquer .deb à direita removido.
Os ficheiros parte dados como argumentos têm de ser todas as partes de exactamente o mesmo ficheiro binário original. Cada parte tem de ocorrer exactamente uma vez na lista de argumentos, apesar das partes não precisarem estar listadas por ordem.
Claro que as partes têm todas de ser geradas com o mesmo tamanho de parte especificado durante a divisão, o que significa que têm de ser geralmente geradas pela mesma invocação de dpkg-split --split.
Os nomes dos ficheiros das partes não são significantes para o processo de remontagem.
Por predefinição, o ficheiro resultante é chamado pacote_versão_arquitectura.deb.
A part especificada é examinada, e comparada com outras partes do mesmo pacote (se alguma) na fila de partes de ficheiros de pacotes.
Se todas as partes do ficheiro pacote no qual part é uma parte estiverem disponíveis, então o pacote é remontado e escrito para complete-output (o que não deve geralmente já existir, apesar de isto não ser um erro).
Se não então a parte é copiada para a lista de espera e o resultado-completo não é criado.
Se part não for uma parte de pacote binário dividido então dpkg-split irá terminar com estado 1; se ocorrer algum outro problema então vai terminar com estado 2.
A opção --output ou -o tem de ser fornecida quando se usa --auto. (se isto não fosse obrigatório o programa chamador não saberia que ficheiro resultante esperar.)
Para cada ficheiro pacote cujas partes estão na fila o resultado dá o nome do pacote, as partes na fila, e o número total de bytes armazenados na fila.
Se nenhum pacote for especificado então a lista de espera é completamente limpa; se algum for especificado então apenas partes do(s) pacote(s) são apagadas.
Isto sobrepõe a predefinição para uma remontagem manual (--join) e é obrigatório para uma fila-ou-remontagem automática (--auto).
Isto mutila o prefixo - ou a predefinição derivada do nome de ficheiro introduzido ou aquele fornecido como um argumento: alfanuméricos são minúsculas, sinais mais são substituídos por xs e todos os outros caracteres são descartados.
O resultado é então truncado o quanto necessário, e são gerados nomes de ficheiros no formato prefixoNdeM.deb.
Desde dpkg 1.18.11.
Os nomes de ficheiros usados neste directório estão num formato interno ao dpkg-split e é improvável que sejam úteis a outros programas, e em qualquer caso não se deve confiar no formato do nome de ficheiro.
Examinar ou juntar arquivos de pacotes divididos não-confiáveis deve ser considerado um limite à segurança, e qualquer violação desse limite derivando dessas operações deve ser considerada uma vulnerabilidade na segurança. Executar essas operações sobre dados não-confiáveis como root é fortemente desaconselhado.
A auto-acumulação e descarte de partes de pacotes divididos são consideradas operações privilegiadas que podem permitir escalada a root. Estas operações nunca devem ser delegadas a um utilizador não-confiável ou serem feitas em pacotes não-confiáveis, pois isso pode permitir acesso de root ao sistema.
A divisão de arquivos de pacotes só deve ser executada sobre dados de confiança.
Os detalhes completos dos pacotes na lista de espera são impossíveis de obter sem que você próprio pesquise dentro do directório de lista de espera.
Não há maneira fácil de testar se um ficheiro que pode ser uma parte de um pacote binário o é mesmo.
deb(5), deb-control(5), dpkg-deb(1), dpkg(1).
Américo Monteiro
Se encontrar algum erro na tradução deste documento, por favor comunique para Américo Monteiro <a_monteiro@gmx.com>.
2025-01-16 | 1.22.14 |