diferença entre o pacote gnu tar e tar nos repositórios do fedora

2

man page do tar no fedora (e também man page do tar no die.net ) menciona o - -acls e --xattrs e --selinux opções, mas elas não são mencionadas no manual do tar no site do GNU

Por quê? isso significa que o pacote fedora é diferente do gnu tar original?

    
por Persian 12.11.2014 / 06:31

3 respostas

3

É muito comum um mantenedor de pacotes incluir patches específicos de distribuição em pacotes. Às vezes você pode encontrar aqueles incluídos no changelog do pacote regular , que você pode consultar com rpm -q --changelog tar

Na maioria das vezes, você precisará verificar o pacote de origem para obter os detalhes, por exemplo link que contém a fonte, o arquivo de especificação e os patches reais que são aplicados.

Como a Red Hat está empurrando o SELinux muito mais do que outras distribuições, faz sentido que seus patches e documentação do produto também enfatizem isso.

Em dispositivos móveis, sem saída de código

    
por 12.11.2014 / 07:04
6

Você pode dissecar a fonte do Fedora rpm - tar-1.26-29.fc20.src.rpm - e descubra.

No Fedora, você pode instalar o src.rpm. Você também pode extrair seu conteúdo, assim:

rpm2cpio tar-1.26-29.fc20.src.rpm | cpio --extract --make-directories --verbose

A resposta à sua pergunta está em tar.spec e nos patches associados. Exemplo:

# Add support for extended attributes, SELinux and POSIX ACLs.
# ~> Original implementation #200925
# ~> http://lists.gnu.org/archive/html/bug-tar/2012-08/msg00012.html
# ~> upstream (b997c90f9, 696338043, d36f5a3cc, 085cace18, up-to ~> 83701a590)
Patch10: tar-1.26-xattrs.patch

Então, sim, o Fedora usa o GNU tar, mas aplica vários patches - conforme a especificação src.rpm.

    
por 12.11.2014 / 06:47
0

A variante GNU tar que você mencionou foi parcialmente aprimorada pelo código obtido de star . Isso está relacionado aos aprimoramentos do acl e do xattr que existem desde 2001 e 2003 em star .

Os aprimoramentos do SELinux foram escritos pela RedHat.

Note que estas melhorias no GNU tar não foram implementadas corretamente.

Os arquivos podem não ter ACLs ou nenhum atributo SELinux no arquivo, mas obtêm ACLs ou atributos SELinux via herança quando o arquivo é extraído via tar GNU.

Esse problema não existe, quando a implementação original mais antiga em star é usada.

Fontes de estrelas recentes estão no pacote schilytools source.

Se você não acredita nisso, verifique o conteúdo de um arquivo com acls, xattrs ou SELinux criado pelo GNU tar. Você verá que há tags SCHILY dentro, porque uma extensão de arquivo introduzida por star foi usada.

    
por 27.06.2018 / 22:12