UPDATE: descobri que podia ver / extrair com as permissões originais usando o sinalizador "--numeric-owner" no GNU Tar. No entanto, eu ainda gostaria de entender exatamente o que o tar está fazendo aqui, pois não está claro para mim, especialmente porque o usuário "33" realmente existe no sistema Ubuntu 16.04.
Eu tenho um sistema embarcado rodando BusyBox v1.01 (2010.02.12-18: 03 + 0000) Concha embutida (cinza).
Notei que quando eu crio um tarball (especificamente um tarball gzip'd, tgz), a propriedade dos arquivos parece não estar de acordo entre o sistema embarcado e meu sistema Ubuntu 16.04 (rodando o GNU tar 1.28). / p>
Sistema de caixa ocupada:
# touch my_file
# chown 33:0 my_file
# tar -zcvf /mnt/usb/myfile.tgz my_file
# tar -ztvf /mnt/usb/myfile.tgz
-rw-r--r-- 33/0 12 1970-03-18 21:21:39 my_file
Como você pode ver, quando olho para o arquivo novamente no BusyBox (e, na verdade, o extraio), ele tem propriedade 33/0.
Mas quando eu olho para o arquivo idêntico no Ubuntu 16.04, ele mostra como tendo propriedade root / root:
Ubuntu 16.04:
# tar -tvf myfile.tgz
-rw-r--r-- root/root 12 1970-03-18 17:21 my_file
É claro que, se eu extrair o arquivo como root, ele será de root / root, em vez de 33 / root, como esperado (a página man diz --same-owner é o padrão ao extrair como root).
Eu nunca vi um comportamento como esse no tar antes ... por que a propriedade não é preservada quando vejo o arquivo no Ubuntu?
Além disso, existe alguma maneira de extrair o arquivo no Ubuntu, mantendo as permissões 33/0 originais do sistema BusyBox?