Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam,
Mam taki problem. Mianowicie jakiś czas temu postawiłem serwer samby w kodowaniu UTF-8.
Oczywiście użytkownicy przez jakiś czas korzystając z serwera tworzyli nowe pliki z polskimi znakami - i tutaj wszystko gra.
Jednak zaszła potrzeba zmigrowania kolejnych udziałów ze starego serwera samby, który był skonfigurowany
pod kodowaniem unix charset = ISO8859-2. Kopię wykonałem rsyncem zdalnie.
Po zmigrowaniu na nowy serwer, kiedy wyświetlam dograne udziały, w konsoli nazwy plików i katalogów mają krzaki
a po zmapowaniu udziału nie są widoczne katalogi i pliki z polskimi znakami.
Zastanawiam się teraz jak to ugryźć aby pasowało. Czyli jak zmienić te krzaki w skopiowanych ze starego serwera
katalogach i plikach na polskie znaki? Znacie może jakieś sensowne narzędzie lub skrypt który załatwi ten temat tak aby to było pewne?
A może wykonać jeszcze raz od nowa kopię rsyncem ze zmianą kodowania w locie jeśli tak się da?
Z góry dzięki za info i pomysły :)
Offline
Spróbuj
rsync --iconv=ISO-8859-2,UTF-8 /source /destination
--iconv=CONVERT_SPEC
Rsync can convert filenames between character sets using this
option. Using a CONVERT_SPEC of "." tells rsync to look up the
default character-set via the locale setting. Alternately, you
can fully specify what conversion to do by giving a local and a
remote charset separated by a comma in the order --iconv=LO‐
CAL,REMOTE, e.g. --iconv=utf8,iso88591. This order ensures that
the option will stay the same whether you're pushing or pulling
files. Finally, you can specify either --no-iconv or a CON‐
VERT_SPEC of "-" to turn off any conversion. The default set‐
ting of this option is site-specific, and can also be affected
via the RSYNC_ICONV environment variable.
For a list of what charset names your local iconv library sup‐
ports, you can run "iconv --list".
If you specify the --protect-args option (-s), rsync will trans‐
late the filenames you specify on the command-line that are be‐
ing sent to the remote host. See also the --files-from option.
Note that rsync does not do any conversion of names in filter
files (including include/exclude files). It is up to you to en‐
sure that you're specifying matching rules that can match on
both sides of the transfer. For instance, you can specify extra
include/exclude rules if there are filename differences on the
two sides that need to be accounted for.
When you pass an --iconv option to an rsync daemon that allows
it, the daemon uses the charset specified in its "charset" con‐
figuration parameter regardless of the remote charset you actu‐
ally pass. Thus, you may feel free to specify just the local
charset for a daemon transfer (e.g. --iconv=utf8).
Ostatnio edytowany przez arecki (2020-10-30 17:59:01)
Offline