I read qu'un type d'entrée tar de 'L' (76) est utilisé par les utilitaires gnu tar et gnu-compliant tar pour indiquer que l'entrée suivante dans l'archive a un nom "long". Dans ce cas, le bloc d'en-tête avec le type d'entrée 'L' code généralement le nom ././@LongLink.Qu'est-ce que le "truc" GNU tar ././@LongLink?
Ma question est: où est le format du le bloc suivant décrit?
Le format d'une archive tar est très simple: il s'agit juste d'une série de blocs de 512 octets. Dans le cas normal, chaque fichier d'une archive tar est représenté par une série de blocs. Le premier bloc est un bloc d'en-tête contenant le nom du fichier, le type d'entrée, l'heure modifiée et d'autres métadonnées. Ensuite, les données de fichier brutes suivent, en utilisant autant de blocs de 512 octets que nécessaire. Ensuite, l'entrée suivante.
Si le nom de fichier est plus long que celui qui correspond à l'espace alloué dans le bloc d'en-tête, gnu tar utilise apparemment ce que l'on appelle "l'astuce ././@LongLink". Je ne peux pas trouver une description précise pour cela.
Lorsque le type d'entrée est 'L', comment puis-je savoir combien de temps le "long" nom de fichier est? Le nom long est-il limité à 512 octets, en d'autres termes, tout ce qui tient dans un bloc?
Plus important encore: où est-ce documenté?
Quelqu'un a voté pour fermer cela comme n'étant pas lié à la programmation. En fait, c'est lié à la programmation, parce que j'essaye de construire un tar dans .NET qui supporte le tour de GNU LongName. Si j'avais juste besoin d'extraire une archive, je pourrais bien sûr utiliser le gnu de gnu, et je n'aurais pas besoin de la réponse à cette question. – Cheeso