Отправляет email-рассылки с помощью сервиса Sendsay

Кодировка и K3B

Перевел систему на utf8. Система Мандрива 2007.

До этого работал на koi8-r, при записи в К3В устанавливал параметр
"Установить входную кодировку" на вкладке "Дополнительно" в koi8-r, все
писалось и читалось на разных системах (и винде) нормально - я имею
ввиду русские имена файлов.
Теперь при работе в кодировке UTF8 в К3В выбрать нечего - там нет такой
кодироки, пишутся имена в UTF, под виндой файлы с русскими именами на
записанном диске видятся знаками вопросов, под линуксом нужно
принудительно монтировать с кодировкой utf на не утф-ных системах.

С другой стороны - монтирую сейчас на системе с кодировкой UTF
записанный ранее диск, который нормально монтировался и под виндой и под
линукс (русские имена читались) - знаки вопросов.

В какой кодировке вообще пишутся ISO?

Как решить эту проблему?

-*Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 30753; Возраст листа: 1333; Участников: 1439
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/649129

Ответить   Mon, 19 Mar 2007 19:17:37 +0300 (#649129)

 

Ответы:

avm7wo***@m*****.ru:

Стандарт ISO сам по себе убогий от рождения, по стандарту там вообще имена
файлов в стиле DOS должны быть. Так как он по определению убогий, были
созданы два расширения - RockRidge и Joilet, один юниксовыми братьями по
разуму, другой Микрософтом.

Созданый братьями по разуму RockRidge позволяет устроить на CD некое подобие
UNIX-овой ФС (жёсткие/символические ссылки, например, даёт) и вообще очень
неплохо работает во всём кроме одного. RockRidge ни коим образом не
регламентирует кодировку имён на диске, в стиле "пишите чего хотите". Всё
бы ничего, если бы была возможность перекодировки этих самых имён типа
того, как это сделано для убогой ФС FAT, но такой возможности в Linux нет.

Созданный Микрософтом Joilet по-своему убогий с точки зрения
функциональности ФС в стиле UNIX, но тут Микрософт сделал одно важное
дело - стандартизировали кодировку длинных имён, сказав, что имена на диске
должны быть в UTF16. И точка. Это уже ядро Linux перекодировать умеет как
хочет.

Диски можно и даже желательно создавать с обоими расширениями, чтобы никому
обидно не было, K3B так умеет.

Но при этом, ядро, памятуя о братьях по разуму, считает, что имена файлов,
записанные в RockRidge, значительно правильнее имён, обозначенных в Joilet.
А вот то, что там кодировка не та, ядро не волнует, к сожалению.

Поэтому, пути решения просты: либо монтируем (нужные) диски с
опцией "norock" (и "utf8", конечно), отключая поддержку расширения
RockRidge, либо монтируем как придётся, но пользуем что-то в стиле:

http://sourceforge.net/projects/fuse-convmvfs

для перекодировки с помощью FUSE на лету.

Ответить   Roman I Khimov Mon, 19 Mar 2007 20:28:37 +0300 (#649143)

 

В сообщении от 1174328917 секунд после начала Эпохи Roman I Khimov написал(а):

Нет смысла обычным пользователям вообще знать про этот подлый
RockRidge, а писать с его поддержкой тем более.

Кроме редких специфических задач, в RockRidge нет никакой
необходимости. Ну кому нужны символические ссылки, и сохраненные права
доступа и идентификаторы пользователя и группы на CD? Разве что бэкапы
системных каталогов делать.

Ответить   Konstantin Korikov Mon, 19 Mar 2007 19:54:11 +0200 (#649153)

 

Konstantin Korikov:

В принципе да, просто потом можно в нужный момент (когда понадобятся ссылки,
например) забыть про RockRidge. А так пишется себе всё и ладно...

Ответить   Roman I Khimov Mon, 19 Mar 2007 21:07:35 +0300 (#649160)

 

Здравствуйте Konstantin Korikov
В сообщении от 19 марта 2007 Konstantin Korikov написал(a):

Ну почему - очень удобно использовать символические ссылки, особенно и
на работе и дома только Linux, а о проблемах с Microsoft узнаёшь
случайно :)

Я просто не стал менять локаль на utf-8. IMHO пока от неё больше
проблем, чем пользы.

Ответить   Mon, 19 Mar 2007 22:39:24 +0300 (#649186)

 

Здравствуйте, avm7wo***@m*****.ru.
В сообщении от 19 Март 2007 г., 07:17:37 вы писали:

Попробуйте в настройках проекта установите расширение Joliet и удалить
Rock Ridge.

Ответить   Алексеев А.Н. Mon, 19 Mar 2007 20:35:09 +0300 (#649148)

 

В сообщении от 1174324657 секунд после начала Эпохи avm7wo***@m*****.ru написал(а):

В ASCII :) Ну а если говорить про расширение Joliet (которое IMHO
наиболее переносимое), то там Unicode. И не важно какая локаль была на
системе, на которой записывался диск, и не важно в какой кодировке
хранились имена файлов на жестком диске, главное чтобы буквочки при
создании ISO были правильно переведены в Unicode. Для этого существует
опция -jcharset (или -input-charset) к команде mkisofs и код, который
проверяет кодировку локали, если такая опция не задана.

Использовать расширение Joliet и не передавать неправильное значение
кодировки команде mkisofs. :) Как объяснить это K3B не знаю, сам его не
использую.

Ответить   Konstantin Korikov Mon, 19 Mar 2007 19:41:10 +0200 (#649151)

 

В сообщении от 19 марта 2007 18:17 avm7wo***@m*****.ru написал(a):

iso8859-5

добавить --input-charset utf8 --output-charset iso8859-5 в опции mkisofs

-*Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 30765; Возраст листа: 1333; Участников: 1439
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/649189

Ответить   Mon, 19 Mar 2007 21:43:48 +0200 (#649189)

 

Amper пишет:

похоже все дело в том, что utf8 не входит в допустимые кодировки для
mkisofs :(

-*Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 30780; Возраст листа: 1334; Участников: 1438
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/649453

Ответить   Tue, 20 Mar 2007 18:12:41 +0300 (#649453)

 

В сообщении от 1174407161 секунд после начала Эпохи avm7wo***@m*****.ru написал(а):

У Вас Mandriva 2007 и mkisofs-2.01.01-0.a11.1mdv2007 ? Нету там
поддержки UTF-8. 2.01.01-0.a11 - это вообще девелоперская ветка
cdrtools...

Например в FC6 используется стабильная версия cdrtools 2.01. А еще там
есть патчик добавляющий поддержку iconv. Там что в этом дистре mkisofs
понимает все кодировки что поддерживаются в glibc.

Ответить   Konstantin Korikov Wed, 21 Mar 2007 13:04:58 +0200 (#649735)

 

Konstantin Korikov пишет:

Linux 2.6.17-5mdv
$ mkisofs -version
mkisofs 2.01.01a05 (i686-pc-linux-gnu)

Я что подумал..... а должно ли быть прямое указание что входящая
кодировка utf8? Беглое изучение документации по mkisofs дает
предположение, что эта кодировка по умолчанию и используется. Ведь образ
CD создался корректно, проблема с образом DVD.

Вывод родной mkisifs:
$ ./mkisofs -input-charset help
Unknown charset
Known charsets are:
cp10081
cp10079
cp10029
cp10007
cp10006
cp10000
koi8-u
koi8-r
cp1251
cp1250
cp874
cp869
cp866
cp865
cp864
cp863
cp862
cp861
cp860
cp857
cp855
cp852
cp850
cp775
cp737
cp437
iso8859-15
iso8859-14
iso8859-9
iso8859-8
iso8859-7
iso8859-6
iso8859-5
iso8859-4
iso8859-3
iso8859-2
iso8859-1

Вывод собранной mkisifs:
$ ./mkisofs -version
mkisofs 2.01 (i686-pc-linux-gnu)

$ ./mkisofs -input-charset help
Unknown charset
Known charsets are:
cp10081
cp10079
cp10029
cp10007
cp10006
cp10000
koi8-u
koi8-r
cp1251
cp1250
cp874
cp869
cp866
cp865
cp864
cp863
cp862
cp861
cp860
cp857
cp855
cp852
cp850
cp775
cp737
cp437
iso8859-15
iso8859-14
iso8859-9
iso8859-8
iso8859-7
iso8859-6
iso8859-5
iso8859-4
iso8859-3
iso8859-2
iso8859-1

Списки одинаковые.

Поподробнее пожалуйста? :)

Это вопрос? Или наоборот? :)

-*Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 30803; Возраст листа: 1335; Участников: 1442
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/649791

Ответить   Wed, 21 Mar 2007 17:24:21 +0300 (#649791)

 

В сообщении от 1174490661 секунд после начала Эпохи avm7wo***@m*****.ru написал(а):

http://cvs.fedora.redhat.com/viewcvs/devel/cdrtools/mkisofs-iconv-10.patch?rev=1.3

В оригинальных версиях cdrtools поддержки UTF-8 вообще нет, ни в
стабильной ветке, ни в разрабатываемой ветке. В правильных
дистрибутивах mkisofs идет уже пропатченый.

s/Там/Так/

Ответить   Konstantin Korikov Wed, 21 Mar 2007 17:24:59 +0200 (#649817)

 

В сообщении от 1174490661 секунд после начала Эпохи avm7wo***@m*****.ru написал(а):

Если у Вас mkisofs-iconv-10.patch, то в случаи когда ни -input-charset,
ни -jcharset не указано входная кодировка определяется локалью.

Беглое изучение документации по mkisofs дает

Вы про UDF? Вот отрывок из mkisofs/udf.c:

* - The file system mirrors the Joliet file system, so files excluded
* from Joliet will also be excluded from UDF, the -jcharset option
* also applies to UDF, file names too long for Joliet will also be
* truncated on UDF, and characters not allowed by Joliet will also
* be translated on UDF. (Fortunately, Joliet is pretty lenient.)

В любом случаи, mkisofs-iconv-10.patch влияет и на UDF тоже. В лучшую
сторону :)

Ответить   Konstantin Korikov Wed, 21 Mar 2007 17:38:38 +0200 (#649820)

 

В сообщении от 19 Март 2007 19:17 avm7wo***@m*****.ru написал(a):

Очевидно, iso9660.

Ответить   Tue, 20 Mar 2007 08:08:11 +0300 (#649267)

 

Здравствуйте, avm7wo***@m*****.ru
Ответ на Ваше письмо от 03/19/2007 09:17 PM

Я сталкивался с такой проблемой, всё дело оказалось в пакете cdrtools
версии 2.01.01_alpha10, который использует K3B, после его замены на
версию 2.01 мне было счастье с русской кодировкой про работе в
юникодовой локали. А кодировку я никакую не выбирал, эта опция у меня
просто пустая.

avm7wo***@m*****.ru пишет:

Если в выпадающем списке такой кодировки не предусмотрено - это ещё не
значит, что её туда нельзя записать. Соответствующий список в k3b
допускает редактирование - можно попробовать.

-*Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 30788; Возраст листа: 1335; Участников: 1438
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/649580

Ответить   Alexander Grebenkov Tue, 20 Mar 2007 22:37:51 +0300 (#649580)

 

Alexander Grebenkov пишет:

этот список выдает утилитка mkisofs, входящая в набор cdrtools, вот его
то и буду пробовать заменить. Странно то, что дистрибутив по умолчанию
настроен на использование UTF8, а данная утилита не поддерживает эту
кодировку.

-*Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 30790; Возраст листа: 1335; Участников: 1442
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/649632

Ответить   Wed, 21 Mar 2007 09:08:58 +0300 (#649632)

 

avm7wo***@m*****.ru пишет:

Чем дальше, тем интереснее...
Заменил cdrtools - ничего не изменилось. (собрал из свежих исходников).
Итак: системная кодировка utf8.
Включено только расширение Joilet.
При создании образа CD - монтирую образ без указания кодировки - все ок
- русские читаются.
Тот же образ создаю для DVD - при монтировании некоторые буквы выдаются
в 2 символа и неправильно (Б,ш например)
При монтировании с опцией utf8 - получается что-то вроде D-_D-MyN~_D-MyD-1/2D-DGN~_
D-_D-MyD->>D-oD-DG
При создании образа с расширением только UDF и при монтировании без
указания кодировки - D-_D-MyN~_D-MyD-1/2D-DGN~_ D-_D-MyD->>D-oD-DG
Что-то они там не доделали с этим utf.

-*Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 30794; Возраст листа: 1335; Участников: 1442
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/649661

Ответить   Wed, 21 Mar 2007 10:35:06 +0300 (#649661)

 

В сообщении от 1174466106 секунд после начала Эпохи avm7wo***@m*****.ru написал(а):

Какаю версию поставили?

Ответить   Konstantin Korikov Wed, 21 Mar 2007 13:05:46 +0200 (#649736)

 

Konstantin Korikov пишет:

$ ./mkisofs -version
mkisofs 2.01 (i686-pc-linux-gnu)

-*Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 30804; Возраст листа: 1335; Участников: 1442
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/649792

Ответить   Wed, 21 Mar 2007 17:26:06 +0300 (#649792)

 

On Wed, 21 Mar 2007 10:35:06 +0300
"avm7wo***@m*****.ru" <avm7wo***@m*****.ru> wrote:

А разве mkisofs и cdrtools имеют отношение к UDF ?
Это же вроде эмуляция винчестера.

-*Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 30818; Возраст листа: 1337; Участников: 1445
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/650195

Ответить   Fri, 23 Mar 2007 00:23:53 +0300 (#650195)

 

В сообщении от 1174602233 секунд после начала Эпохи Alexander написал(а):

http://ru.wikipedia.org/wiki/Universal_Disk_Format

Ответить   Konstantin Korikov Fri, 23 Mar 2007 00:25:54 +0200 (#650205)