Кириллица на DVD

PCLinuxOS

Модератор: Bizdelnick

olelukoie
Сообщения: 1248
ОС: Linux, Win

Кириллица на DVD

Сообщение olelukoie »

Я не очень понял, в каком разделе задать этот вопрос, поскольку он относится не только к мандриве, поэтому пока задам здесь.

Если я пишу диски в формате iso9660+Joliet, то и винда, и линух нормально показывают русские имена файлов. Если же я записываю диск в формате iso9660:1999 (Nero), то русские имена нормально отображаются только под той ОС, под которой был записан диск. Т.е. если пишу под виндой, то в линухе я вместо русских букв вижу знаки вопроса с небольшими вкраплениями иероглифов, а если пишу под линухом, то в винде вместо русских букв символы псевдографики. Кто-нибудь знает, как эту проблему можно побороть?
Спасибо сказали:
Аватара пользователя
akdengi
Сообщения: 4244

Re: Кириллица на DVD

Сообщение akdengi »

olelukoie писал(а):
02.05.2009 13:08
Я не очень понял, в каком разделе задать этот вопрос, поскольку он относится не только к мандриве, поэтому пока задам здесь.

Если я пишу диски в формате iso9660+Joliet, то и винда, и линух нормально показывают русские имена файлов. Если же я записываю диск в формате iso9660:1999 (Nero), то русские имена нормально отображаются только под той ОС, под которой был записан диск. Т.е. если пишу под виндой, то в линухе я вместо русских букв вижу знаки вопроса с небольшими вкраплениями иероглифов, а если пишу под линухом, то в винде вместо русских букв символы псевдографики. Кто-нибудь знает, как эту проблему можно побороть?


Сами же ответили:
"я пишу диски в формате iso9660+Joliet"
Меня тут снова нет :P
Спасибо сказали:
olelukoie
Сообщения: 1248
ОС: Linux, Win

Re: Кириллица на DVD

Сообщение olelukoie »

akdengi писал(а):
02.05.2009 15:13
Сами же ответили:
"я пишу диски в формате iso9660+Joliet"

Эээ... ответил на что? Мой вопрос о том, как сделать нормально читаемыми диски, записанные в формате iso9660:1999. А то, что вместо iso9660:1999 можно использовать iso9660+Joliet - это и так понятно, но у меня уже довольно много дисков iso9660:1999 и переписывать их заново я не собираюсь.
Спасибо сказали:
Аватара пользователя
akdengi
Сообщения: 4244

Re: Кириллица на DVD

Сообщение akdengi »

olelukoie писал(а):
02.05.2009 15:19
akdengi писал(а):
02.05.2009 15:13
Сами же ответили:
"я пишу диски в формате iso9660+Joliet"

Эээ... ответил на что? Мой вопрос о том, как сделать нормально читаемыми диски, записанные в формате iso9660:1999. А то, что вместо iso9660:1999 можно использовать iso9660+Joliet - это и так понятно, но у меня уже довольно много дисков iso9660:1999 и переписывать их заново я не собираюсь.


А если с помощью такой команды записать?

Код: Выделить всё

growisofs -dvd-compat -speed=4 -Z /dev/dvd -J -R -r -joliet-long -U -iso-level 4 $SRCPATH
Меня тут снова нет :P
Спасибо сказали:
olelukoie
Сообщения: 1248
ОС: Linux, Win

Re: Кириллица на DVD

Сообщение olelukoie »

akdengi писал(а):
02.05.2009 15:40
А если с помощью такой команды записать?

Код: Выделить всё

growisofs -dvd-compat -speed=4 -Z /dev/dvd -J -R -r -joliet-long -U -iso-level 4 $SRCPATH

Хех. Да не, записывать-то я теперь буду стараться только в iso+joliet (по крайней мере, если там будут файлы с кириллицей), главный вопрос - как читать то, что уже записано? Я iso9660:1999 использую уже минимум пару лет, просто не было оказии увидеть, что происходит с кириллицей. А тут вставил диск, записанный под виндой полгода назад, и ужаснулся, решил что совсем кириллица на dvd слетела, провел несколько экспериментов и увидел то, что описал в первом посте. Попутно угробил на эти эксперименты три или четыре болванки.

А по поводу команды - разве Joliet и Level 4 совместимы (в смысле их можно использовать одновременно)? Я полагал, что Level 4 как раз и нужен, чтобы уйти от ограничений Joliet и ей подобных, а иначе какой в нем смысл...
Спасибо сказали:
Аватара пользователя
akdengi
Сообщения: 4244

Re: Кириллица на DVD

Сообщение akdengi »

olelukoie писал(а):
02.05.2009 18:20
akdengi писал(а):
02.05.2009 15:40
А если с помощью такой команды записать?

Код: Выделить всё

growisofs -dvd-compat -speed=4 -Z /dev/dvd -J -R -r -joliet-long -U -iso-level 4 $SRCPATH

Хех. Да не, записывать-то я теперь буду стараться только в iso+joliet (по крайней мере, если там будут файлы с кириллицей), главный вопрос - как читать то, что уже записано? Я iso9660:1999 использую уже минимум пару лет, просто не было оказии увидеть, что происходит с кириллицей. А тут вставил диск, записанный под виндой полгода назад, и ужаснулся, решил что совсем кириллица на dvd слетела, провел несколько экспериментов и увидел то, что описал в первом посте. Попутно угробил на эти эксперименты три или четыре болванки.

А по поводу команды - разве Joliet и Level 4 совместимы (в смысле их можно использовать одновременно)? Я полагал, что Level 4 как раз и нужен, чтобы уйти от ограничений Joliet и ей подобных, а иначе какой в нем смысл...


Я в смысле попробовать :) Просто у людей вот такое прокатывает как универсальное решение. А по поводу монтирования надо порыть опции...
Меня тут снова нет :P
Спасибо сказали:
olelukoie
Сообщения: 1248
ОС: Linux, Win

Re: Кириллица на DVD

Сообщение olelukoie »

akdengi писал(а):
02.05.2009 19:03
А по поводу монтирования надо порыть опции...

Рыл я опции. Там для файловой системы iso9660 только две опции, связанные с кодировками: iocharset= и utf8. Ни то, ни другое не дает нужной перекодировки. Опции codepage= для этой ФС нет, так что возможных решений я вижу только два: патч для ядра (драйвера ФС) или независимая утилита, которая умеет читать содержимое оптических дисков мимо ядерного драйвера ФС и умеет выставлять нужную кодировку по запросу пользователя. Есть такое или нет - не знаю, потому и задаю вопрос.
Спасибо сказали:
MAXIM87
Сообщения: 107
ОС: Mandriva 2010/Windows XP sp3

Re: Кириллица на DVD

Сообщение MAXIM87 »

Во, во..! Такая-же проблема! Прямо смех - чтобы прочитать нормально iso9660 диски - приходится загружать винду (
Спасибо сказали:
Аватара пользователя
astronom1987
Сообщения: 1145
ОС: MX Linux

Re: Кириллица на DVD

Сообщение astronom1987 »

Просто тут нужен mount manager и все... :cool:
Спасибо сказали:
Аватара пользователя
omerta13
Сообщения: 206
ОС: Arch Linux, Mageia Linux

Re: Кириллица на DVD

Сообщение omerta13 »

Исправление для GNOME (думаю сработает):
  • открыть программу "редактор конфигурации"
  • выбрать /system/storage/default_options/iso9660
  • добавить опцию utf8
Спасибо сказали:
Аватара пользователя
akdengi
Сообщения: 4244

Re: Кириллица на DVD

Сообщение akdengi »

astronom1987 писал(а):
03.05.2009 20:39
Просто тут нужен mount manager и все... :cool:


http://mib.pianetalinux.org/2009.0/i686/pr...2009.0.i686.rpm
http://mib.pianetalinux.org/2009.0/x86_64/...09.0.x86_64.rpm
Меня тут снова нет :P
Спасибо сказали:
olelukoie
Сообщения: 1248
ОС: Linux, Win

Re: Кириллица на DVD

Сообщение olelukoie »

Господа MAXIM87, astronom1987 и omerta13! Не надо путать классический ISO 9660 (c Joliet или без - не важно, также называется ISO 9660:1988) и новый ISO 9660:1999 (aka ISO 9660 Level 4)! Для классического iso9660+Joliet достаточно указать опцию монтирования utf8, и все, поскольку Joliet всегда хранит все имена файлов в кодировке UCS-2 (16-битный вариант Unicode) и требуется только указать, какая кодировка используется для отображения имен файлов в ОС. Для ISO 9660:1999 такое правило, видимо, не прописано, отсюда и проблемы.
Спасибо сказали:
MAXIM87
Сообщения: 107
ОС: Mandriva 2010/Windows XP sp3

Re: Кириллица на DVD

Сообщение MAXIM87 »

olelukoie писал(а):
03.05.2009 22:02
Господа MAXIM87, astronom1987 и omerta13! Не надо путать классический ISO 9660 (c Joliet или без - не важно, также называется ISO 9660:1988) и новый ISO 9660:1999 (aka ISO 9660 Level 4)! Для классического iso9660+Joliet достаточно указать опцию монтирования utf8, и все, поскольку Joliet всегда хранит все имена файлов в кодировке UCS-2 (16-битный вариант Unicode) и требуется только указать, какая кодировка используется для отображения имен файлов в ОС. Для ISO 9660:1999 такое правило, видимо, не прописано, отсюда и проблемы.

Уточнение. Хорошо. Но проблема то по прежнему имеет место - многие записанные опт. диски не читаются/не читаются норм...
Спасибо сказали:
mbalabin
Сообщения: 1

Re: Кириллица на DVD

Сообщение mbalabin »

Я тоже столкнулся с проблемой дисков, записанных под виндой и я нашёл решение после небольших поисков. Мой ответ опоздал почти на год, но я помещу его здесь, поскольку в интернете я описания готового решения не нашёл.

Проблема действительно связана с тем, что ISO 9660:1999 хранит имена файлов только в 8-битной кодировке (в отличие от iso9660+Joliet, где длинные имена хранятся в UCS-2). В случае записи диска под Windows это CP866. Убедиться в этом довольно легко, сделав

Код: Выделить всё

ls /media/cdrom | iconv -f cp866


Чтобы можно было прочитать имена файлов и каталогов под Linux, можно скопировать файлы с CD/DVD на жёсткий диск и перекодировать имена с помощью convmv. Другой вариант - использовать fuse: необходимо установить пакеты fuse и convmvfs (у меня в Debian они называются fuse-utils и fuse-convmvfs), смонтировать диск как обычно, затем применить

Код: Выделить всё

cd
mkdir cdrom-fuse
convmvfs cdrom-fuse -o srcdir=/media/cdrom,icharset=cp866
# используем содержимое диска с правильной кодировкой в каталоге cdrom-fuse
# ...
fusermount -u cdrom-fuse


Существует ли какое-то решение аналогичной проблемы с кодировкой для Windows - мне не известно.
Спасибо сказали:
olelukoie
Сообщения: 1248
ОС: Linux, Win

Re: Кириллица на DVD

Сообщение olelukoie »

mbalabin писал(а):
21.03.2010 21:53
Чтобы можно было прочитать имена файлов и каталогов под Linux, можно скопировать файлы с CD/DVD на жёсткий диск и перекодировать имена с помощью convmv. Другой вариант - использовать fuse: необходимо установить пакеты fuse и convmvfs (у меня в Debian они называются fuse-utils и fuse-convmvfs), смонтировать диск как обычно, затем применить

Код: Выделить всё

cd
mkdir cdrom-fuse
convmvfs cdrom-fuse -o srcdir=/media/cdrom,icharset=cp866
# используем содержимое диска с правильной кодировкой в каталоге cdrom-fuse
# ...
fusermount -u cdrom-fuse

Решение интересное, спасибо, но три проблемы: во-первых, в мандриве нет convmvfs (хотя есть convmv; надо предложить akdengi или Pulfer'у собрать пакет convmvfs для EduMandriva или MiB...), во-вторых, каждый раз при использовании таких дисков проделывать эти манипуляции не очень удобно и приятно, и в-третьих, конечно же, этот способ не решает проблемы записи таких дисков под Linux с последующим их чтением в винде (кстати, в виста и семерка тоже используют cp866 или уже юникод?).

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

А вообще здесь главная претензия к формату записи ISO 9660:1999. Раз уж он позволяет писать имена файлов в нативной для ОС кодировке, то должно было быть поле с указанием, в какой кодировке эти имена записаны, чтобы драйвер ФС мог их корректно перекодировать.
Спасибо сказали:
chadinkomi
Сообщения: 1

Re: Кириллица на DVD

Сообщение chadinkomi »

Ребята, я для себя решил проблему монтирования таких дисков. Использую mc (у меня версия 4.7.0.6). В меню "Правая" выбираю кодировку символов файлов Windows1251 (cp866 при необходимости) и вижу все правильные названия файлов.
Спасибо сказали: