forum.wfido.ru  

Вернуться   forum.wfido.ru > Прочие эхи > RU.UNIX.BSD

Ответ
 
Опции темы Опции просмотра
  #61  
Старый 03.04.2018, 12:50
Alex Korchmar
Guest
 
Сообщений: n/a
По умолчанию Re: tar: Can't translate pathname to UTF-8

Alex Korchmar написал(а) к Eugene Grosbein в Apr 18 11:35:02 по местному времени:

From: Alex Korchmar <noreply@linux.e-moe.ru>

Eugene Grosbein <Eugene.Grosbein@f1.n5006.z2.fidonet.org> wrote:

EG> $ tar -cvf test.tar *
EG> a 1251
EG> a 1251/\340\364\340\351\351\345\351tar: 1251/ЮТЮИИЕИ: Can't translate pathname
EG> '1251/ЮТЮИИЕИ' to UTF-8
EG> a utf8
EG> a utf8/\320\260\321\204\320\260\320\271\320\271\320\265\320\271tar:
EG> utf8/п╟я└п╟п╧п╧п╣п╧: Can't translate pathname 'utf8/п╟я└п╟п╧п╧п╣п╧' to UTF-8
вот этого у меня не было - utf8 она съела, в таком сетапе, ругнувшись только
на восьмибитные имена.
Внутри все оказалось относительно правильно - такой архив распаковывается и
подлежит восстановлению. В отличие от архива, созданного при запуске tar c
locale C или восьмибитной.

> Alex

--- ifmail v.2.15dev5.4
Ответить с цитированием
  #62  
Старый 03.04.2018, 15:40
Eugene Grosbein
Guest
 
Сообщений: n/a
По умолчанию Re: tar: Can't translate pathname to UTF-8

Eugene Grosbein написал(а) к Alex Korchmar в Apr 18 19:06:43 по местному времени:

03 апр. 2018, вторник, в 09:27 NOVT, Alex Korchmar написал(а):

AK> ну асиль, асиль - ты мне уже второй месяц рассказываешь, как оно все
AK> должно быть, только нихрена что-то ни один совет не работает.

Я не могу от тебя добиться четкого описания условий эксперимента даже.

Eugene
--
Научить не кланяться авторитетам, а исследовать их и сравнивать их поучения
с жизнью. Научить настороженно относиться к опыту бывалых людей, потому что
жизнь меняется необычайно быстро.
--- slrn/1.0.2 (FreeBSD)
Ответить с цитированием
  #63  
Старый 03.04.2018, 15:40
Eugene Grosbein
Guest
 
Сообщений: n/a
По умолчанию Re: tar: Can't translate pathname to UTF-8

Eugene Grosbein написал(а) к Alex Korchmar в Apr 18 19:09:35 по местному времени:

03 апр. 2018, вторник, в 09:30 NOVT, Alex Korchmar написал(а):

EG>> Опять же неправда, так как в "чистой" локали koi8-r всё работает:
AK> ты уверен что это - "все работает"?
EG>> a utf8/п\260я\204п\260п\271п\271п\265п\271
AK> а вот это - точно юникод? А не "юникод, перекодированный как восьмибитная
AK> кодировка".

Ну у меня восьмибитная локаль и есть, но это очень важно - косметическая
проблема, не затрагивающая байты в tar-файле.

EG>> Но у тебя, помнится, не чистая локаль - что-то в KOI8-R,
AK> LCCTYPE - koi, LANG не установлен, не думаю что LCMESSAGES может на это
AK> влиять.

На баги всё что угодно может влиять.

Eugene
--
Чтобы всё как у всех, но чтоб при этом - не так, как они.
--- slrn/1.0.2 (FreeBSD)
Ответить с цитированием
  #64  
Старый 03.04.2018, 15:51
Eugene Grosbein
Guest
 
Сообщений: n/a
По умолчанию Re: tar: Can't translate pathname to UTF-8

Eugene Grosbein написал(а) к Alex Korchmar в Apr 18 19:15:08 по местному времени:

03 апр. 2018, вторник, в 09:35 NOVT, Alex Korchmar написал(а):

EG>> $ tar -cvf test.tar *
EG>> a 1251
EG>> a 1251/\340\364\340\351\351\345\351tar: 1251/ЮТЮИИЕИ: Can't translate
AK> pathname
EG>> '1251/ЮТЮИИЕИ' to UTF-8
EG>> a utf8
EG>> a utf8/\320\260\321\204\320\260\320\271\320\271\320\265\320\271tar:
EG>> utf8/п╟я└п╟п╧п╧п╣п╧: Can't translate pathname 'utf8/п╟я└п╟п╧п╧п╣п╧' to
AK> UTF-8
AK> вот этого у меня не было - utf8 она съела, в таком сетапе, ругнувшись только
AK> на восьмибитные имена.
AK> Внутри все оказалось относительно правильно - такой архив распаковывается и
AK> подлежит восстановлению. В отличие от архива, созданного при запуске tar c
AK> locale C или восьмибитной.

Я демонстрировал же всё и с восьмибитной KOI8-R - всё работало.

Eugene
--
Как жаль, что не роняли вам на череп утюгов.
Скорблю о вас - как мало вы успели.
--- slrn/1.0.2 (FreeBSD)
Ответить с цитированием
  #65  
Старый 03.04.2018, 15:51
Eugene Grosbein
Guest
 
Сообщений: n/a
По умолчанию Re: tar: Can't translate pathname to UTF-8

Eugene Grosbein написал(а) к All в Apr 18 19:15:53 по местному времени:

03 апр. 2018, вторник, в 18:09 NOVT, Eugene Grosbein написал(а):

EG>>> a utf8/п\260я\204п\260п\271п\271п\265п\271
AK>> а вот это - точно юникод? А не "юникод, перекодированный как восьмибитная
AK>> кодировка".

EG> Ну у меня восьмибитная локаль и есть, но это очень важно - косметическая

это НЕ очень важно

EG> проблема, не затрагивающая байты в tar-файле.

Eugene
--- slrn/1.0.2 (FreeBSD)
Ответить с цитированием
  #66  
Старый 03.04.2018, 16:30
Alex Korchmar
Guest
 
Сообщений: n/a
По умолчанию Re: tar: Can't translate pathname to UTF-8

Alex Korchmar написал(а) к Eugene Grosbein в Apr 18 15:07:39 по местному времени:

From: Alex Korchmar <noreply@linux.e-moe.ru>

Eugene Grosbein <Eugene.Grosbein@f1.n5006.z2.fidonet.org> wrote:

EG>>> a utf8/п\260я\204п\260п\271п\271п\265п\271
AK>> а вот это - точно юникод? А не "юникод, перекодированный как восьмибитная
AK>> кодировка".
EG> Ну у меня восьмибитная локаль и есть, но это очень важно - косметическая
важно что на самом деле в файле. У меня нехорошее ощущение - что и у тебя в
этом случае там совсем не юникод, а нечто, что тар считает таковым.

EG> На баги всё что угодно может влиять.
я ж когда для тебя экспериментировал - ставил LC_ALL, чтобы перекрыть
эти настройки. Могу еще один тест попробовать, с LC_ALL koi. Но что-то мне
подсказывает, что у меня ничего не изменится, восьмибитные имена кое-как
сархивируются, а utf'ное побьется в нечитаемую хрень.

ты точно ЭТУ сторону проблемы хочешь решать? Потому что там да, явный баг,
но мне-то уже ничем не поможет - у меня уже есть архив с битыми именами.
Я его тебе могу выложить, если охота тянуть э...27G бесполезной бнопни.
Меньше, наверное, нет.


> Alex

--- ifmail v.2.15dev5.4
Ответить с цитированием
  #67  
Старый 03.04.2018, 19:50
Eugene Grosbein
Guest
 
Сообщений: n/a
По умолчанию Re: tar: Can't translate pathname to UTF-8

Eugene Grosbein написал(а) к Alex Korchmar в Apr 18 23:22:40 по местному времени:

03 апр. 2018, вторник, в 13:07 NOVT, Alex Korchmar написал(а):

EG>>>> a utf8/п\260я\204п\260п\271п\271п\265п\271
AK>>> а вот это - точно юникод? А не "юникод, перекодированный как восьмибитная
AK>>> кодировка".
EG>> Ну у меня восьмибитная локаль и есть, но это очень важно - косметическая
AK> важно что на самом деле в файле. У меня нехорошее ощущение - что и у тебя в
AK> этом случае там совсем не юникод, а нечто, что тар считает таковым.

Я же давал вывод dd из tar, который показывает, что там честный utf-8,
прекрасно конвертируемый в koi8-r через iconv, ты разве не читал?

EG>> На баги всё что угодно может влиять.
AK> я ж когда для тебя экспериментировал - ставил LC_ALL, чтобы перекрыть
AK> эти настройки.

Мы говорим про баги. Нельзя рассчитывать на то, что LC_ALL
что-то там корректно "перекроет". Надо делать env -i sh и потом выставлять
всё с нуля (ну, или просто unset).

AK> Могу еще один тест попробовать, с LC_ALL koi. Но что-то мне
AK> подсказывает, что у меня ничего не изменится, восьмибитные имена кое-как
AK> сархивируются, а utf'ное побьется в нечитаемую хрень.
AK> ты точно ЭТУ сторону проблемы хочешь решать?

Я хочу либо убедиться, что там внутри utf-8, либо что нет,
и тогда нужно будет суметь воспроизвести создание tar
с битым utf-8 внутри.

AK> но мне-то уже ничем не поможет - у меня уже есть архив с битыми именами.

А я тебе не очень-то верю наслово, потому что нечем было в шестой
версии freebsd создать tar с перекодированием имён, тогда был gnutar.

Eugene
--
Поэты - страшные люди. У них все святое.
--- slrn/1.0.2 (FreeBSD)
Ответить с цитированием
  #68  
Старый 03.04.2018, 21:41
Alex Korchmar
Guest
 
Сообщений: n/a
По умолчанию Re: tar: Can't translate pathname to UTF-8

Alex Korchmar написал(а) к Eugene Grosbein в Apr 18 20:21:49 по местному времени:

From: Alex Korchmar <noreply@linux.e-moe.ru>

Eugene Grosbein <Eugene.Grosbein@f1.n5006.z2.fidonet.org> wrote:

EG> Я же давал вывод dd из tar, который показывает, что там честный utf-8,
я то ли не заметил, то ли ты не приводил тот тар, что создан с
не-юникодной локалью

EG> Мы говорим про баги. Нельзя рассчитывать на то, что LC_ALL
EG> что-то там корректно "перекроет".
э... ты хочешь сказать, у нас сама локаль сломана?

EG> Надо делать env -i sh и потом выставлять
EG> всё с нуля (ну, или просто unset).
ну и смысл? Меня-то интересует чтоб у меня работало, а не в сферическом
случае в вакууме.

Вот это:
1251/
1251/афаййей
utf8/
utf8/Р\234С"Р\234РNoРNoРuРNo
БЖБККЕК

юникодом не является и если его вот такое рапаковать - никаким разумным
образом ты обратно содержимое каталога utf8 не восстановишь.
И оно вполне похоже на то дерьмо, которое у меня теперь на диске, так что,
вероятнее всего, произведено тем же способом. Скорее всего tar запустили
из под какого-нибудь вебадмина, унаследовавшего локаль от сервера.
С моей точки зрения, в этом направлении можно дальше не ковырять.

EG> А я тебе не очень-то верю наслово, потому что нечем было в шестой
EG> версии freebsd создать tar с перекодированием имён, тогда был gnutar.
то что я там вижу - bsdtar 1.2.53 - libarchive 1.2.53
этим ли чудом создан мой архив или нет - не знаю.

> Alex

--- ifmail v.2.15dev5.4
Ответить с цитированием
  #69  
Старый 04.04.2018, 14:20
Eugene Grosbein
Guest
 
Сообщений: n/a
По умолчанию Re: tar: Can't translate pathname to UTF-8

Eugene Grosbein написал(а) к Alex Korchmar в Apr 18 17:52:39 по местному времени:

03 апр. 2018, вторник, в 18:21 NOVT, Alex Korchmar написал(а):

EG>> Я же давал вывод dd из tar, который показывает, что там честный utf-8,
AK> я то ли не заметил, то ли ты не приводил тот тар, что создан с
AK> не-юникодной локалью

Приводил, самый первый пример, он создан с KOI8-R.

EG>> Мы говорим про баги. Нельзя рассчитывать на то, что LC_ALL
EG>> что-то там корректно "перекроет".
AK> э... ты хочешь сказать, у нас сама локаль сломана?

Сама локаль нет, но "перекрытие" (использование одних переменных
вместо других) это функция самого приложения, а не локали.

EG>> Надо делать env -i sh и потом выставлять
EG>> всё с нуля (ну, или просто unset).
AK> ну и смысл? Меня-то интересует чтоб у меня работало, а не в сферическом
AK> случае в вакууме.

Смысл - для воспроизведения проблемы на маленьких данных.

AK> Вот это:
AK> 1251/
AK> 1251/афаййей
AK> utf8/
AK> utf8/Р\234С"Р\234РNoРNoРuРNo
AK> БЖБККЕК
AK> юникодом не является и если его вот такое рапаковать - никаким разумным
AK> образом ты обратно содержимое каталога utf8 не восстановишь.

Восстановишь. Это просто результат двойной перекодировки
из 8-битной в сырой utf-8, это обратимая операция.
Нужно просто знать, в которую кодировку обращать.

AK> И оно вполне похоже на то дерьмо, которое у меня теперь на диске, так что,
AK> вероятнее всего, произведено тем же способом. Скорее всего tar запустили
AK> из под какого-нибудь вебадмина, унаследовавшего локаль от сервера.
AK> С моей точки зрения, в этом направлении можно дальше не ковырять.

А с моей точки зрения, если тебе таки нужен результат - нужно ковырять.

Eugene
--
И кого не любишь, в лицо не знать, и смотреть на звезды и жить спокойно.
--- slrn/1.0.2 (FreeBSD)
Ответить с цитированием
  #70  
Старый 04.04.2018, 22:01
Alex Korchmar
Guest
 
Сообщений: n/a
По умолчанию Re: tar: Can't translate pathname to UTF-8

Alex Korchmar написал(а) к Eugene Grosbein в Apr 18 20:43:32 по местному времени:

From: Alex Korchmar <noreply@linux.e-moe.ru>

Eugene Grosbein <Eugene.Grosbein@f1.n5006.z2.fidonet.org> wrote:

AK>> utf8/Р\234С"Р\234РNoРNoРuРNo
EG> Восстановишь. Это просто результат двойной перекодировки
а, Р там русская?
тогда не то. У меня первые буквы - латинские. Нет такой кодировки.

> Alex

--- ifmail v.2.15dev5.4
Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 10:06. Часовой пояс GMT +4.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot