On Mon, March 25, 2013 12:57, Joerg Schilling wrote: > Mark <[email protected]> wrote: > >> I noticed a strange problem when using GNU tar to unpack an archive >> which I had created using star. I'm not sure whether this is a bug >> with star or GNU tar. The problem seems to be related to a file and/or >> directory name having an o-umlaut character (ö). >> >> I used this command to create the archive: >> star -c f=test_star.tar artype=xustar -numeric -sparse -force-hole >> "Sven-Göran Eriksson's World Challenge SLES-50852" > > What kind of locale are you using? > From the attached tar archive, it looks like you are using an UTF-8 based > locale wich on UNIX is still less probable than using a ISO-8859-1 based > locale.
I created the archive on a system running Lubuntu 11.10. The output of the locale command is $ locale LANG=en_GB.UTF-8 LANGUAGE=en_GB:en LC_CTYPE="en_GB.UTF-8" [... all other LC_xxx are "en_GB.UTF-8" too] LC_ALL= As far as I know, that's the OS installation default and I did not change it. A quick google search produced this result from 2007, about someone else for whom the default UTF-8 en-GB locale used by Ubuntu caused issues vs ISO 8859-1: http://blog.andrewbeacock.com/2007/01/how-to-change-your-default-locale-on.html > In case of a sparse file, the prefix path part of a POSIX.1-1988 tar > header is reused for sparse information and for this reason, the > filename does not fit into the simple tar header anymore. > > For this reason, the filename is expressed in an extended tar header. > > Filenames in extended tar headers need to be converted into UTF-8 and > as star still asumes the most probable ISO-8859-1 on UNIX, there is an > unneeded conversion. > > If people start using UTF-8, it seems to be the time to let star check for > the real locale encoding.... Thanks for the explanation. I suppose a workaround for the time being would be to change my system's locale to ISO-8859-1. -- Mark
