Tomsk Sysadmins Forum

Unix => Разное => Topic started by: WhiteAngel on May 31, 2007, 13:10:17

Title: Прожиг CD/DVD в K3b и русские имена файлов
Post by: WhiteAngel on May 31, 2007, 13:10:17
Перешел на линукс Mandriva 2007 FREE. CD и DVD пишутся нормально в K3b, но вот незадача - попросили меня записать CD, на котором вордовские документы и презентации с русскими названиями, для пользователя Windows (учительница). Я записал и в Линуксе все названия файлов при автомонтировании диска отображаются корректно по-русски, но когда этот же диск вставляют в комп с Windows, то видят кракозяблы...

Начал разбираться в настройках K3b: нашел в свойствах проекта Вкладку Дополнительно, а там раздел "Входная кодировка" (по дефулту стоит cp8859-1) с выбором, но выбор cp1251 и cp866 не помог (

Подскажите как записать можно?
Title: Прожиг CD/DVD в K3b и русские имена файлов
Post by: _bob on May 31, 2007, 13:38:06
Quote from: WhiteAngel
"Входная кодировка" (по дефулту стоит cp8859-1) с выбором, но выбор cp1251 и cp866 не помог (

Подскажите как записать можно?

Выставить кодировку используемую системой вместо ср8859-1.
Например, у меня koi8-r.
--
С уважением
Title: Прожиг CD/DVD в K3b и русские имена файлов
Post by: WhiteAngel on May 31, 2007, 14:16:59
Quote from: _bob
Выставить кодировку используемую системой вместо ср8859-1.
Например, у меня koi8-r.
--
С уважением


Системой Mandriva у меня используется UTF-8, в K3b списке для выбора такой кодировки не оказалось...
Попробовал koi8-r, не помогло, под виндой вместо русских файлов видна нерусь: слегка другие, но кроказяблы..
Т.е. проблема пока не решена...
Title: Прожиг CD/DVD в K3b и русские имена файлов
Post by: _bob on May 31, 2007, 16:10:21
Quote from: WhiteAngel
Системой Mandriva у меня используется UTF-8, в K3b списке для выбора такой кодировки не оказалось...
Попробовал koi8-r, не помогло, под виндой вместо русских файлов видна нерусь: слегка другие, но кроказяблы..
Т.е. проблема пока не решена...
Дык тогда галку сними там, где использоватьвыбор кодировки.
--
С уважением
Title: Прожиг CD/DVD в K3b и русские имена файлов
Post by: WhiteAngel on May 31, 2007, 16:34:08
Quote from: _bob
Дык тогда галку сними там, где использоватьвыбор кодировки.
--
С уважением

Хм...
Без этой галки и прожигал все время, до тех пор пока не попросили CD для использования под Windows записать...
Без галки - кроказяблы тоже...

_bob подал идею:
Может, как-нибудь добавить кодировку в список можно? Раз у тебя в системе koi8-r и ты писал выбириая кодировку koi8-r , а у меня в списке UTF-8 нет, то как ее можно добавить?
Title: Прожиг CD/DVD в K3b и русские имена файлов
Post by: Xray_Linux_Root on May 31, 2007, 17:13:52
там где-то в настройках есть строка которую можно передать mkisofs. Так вот туда надо добавить всего два параметра:
Code: [Select]
-J -jcharset UTF-8В моём случае (локаль koi8-r) после добавления
Code: [Select]
-J -jcharset koi8-r наименование файлов и каталогов  стали нормально читаться на вендовых машинах

З.Ы. на всякий пожарный... вот строчка которой я создаю образ диска из консоли... может чем-то поможет ещё
Code: [Select]
mkisofs -R -J -jcharset koi8-r -o cd.iso /путь_до_каталога/с_содержимым_для_записи
Title: Прожиг CD/DVD в K3b и русские имена файлов
Post by: WhiteAngel on May 31, 2007, 18:05:25
Quote from: Xray_Linux_Root
там где-то в настройках есть строка которую можно передать mkisofs. Так вот туда надо добавить всего два параметра:
Code: [Select]
-J -jcharset UTF-8

Я уже было обрадовался... Подставил эти параметры и при попытке записать проект в логах получил сообщение об ошибке: мол не известная кодировка (((
Code: [Select]
System
-----------------------
K3b Version: 0.12.17

KDE Version: 3.5.4
QT Version:  3.3.6
Kernel:      2.6.17-5mdv
Devices
-----------------------
_NEC DVD_RW ND-3540A 1.01 (/dev/hda, ) at /mnt/cdrom [CD-R; CD-RW; CD-ROM; DVD-ROM; DVD-R; DVD-RW; DVD-R DL; DVD+R; DVD+RW; DVD+R DL] [DVD-ROM; DVD-R с поддержкой мультисессий; Двухслойный DVD-R с поддержкой мультисессий; DVD-RW с ограниченной перезаписью; DVD-RW с поддержкой мультисессий; DVD+RW; DVD+R; Двухслойный DVD+R; CD-ROM; CD-R; CD-RW] [SAO; TAO; RAW; SAO/R96R; RAW/R96R; Ограниченная перезапись]

K3b
-----------------------
Size of filesystem calculated: 0

mkisofs
-----------------------
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
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

Что же можно сделать? Менять локаль на koi8-r? Муторно... Есть другие варианты?
Title: Прожиг CD/DVD в K3b и русские имена файлов
Post by: Xray_Linux_Root on May 31, 2007, 20:38:19
Для пробы сделал так, и получил вывод:
Code: [Select]
pas@xray:~/temp$ mkisofs -R -J -jcharset UTF-9 -o cd.iso /home/pas/.gnome2
Unknown charset
Known charsets are:
cp10081
cp10079
cp10029
cp10007
cp10006
cp10000
koi8-u
. . .
iso8859-2
iso8859-1

Additional input charsets are available for Joliet through the iconv support.
Run "iconv -l" to display them. Iconv charsets cannot be used with HFS, Apple
extension, ISO9660 version 2 or Rock Ridge.

В общем смотрим в выводе команды iconv -l какую кодировку можно указывать.
Title: Прожиг CD/DVD в K3b и русские имена файлов
Post by: WhiteAngel on May 31, 2007, 21:14:49
Quote from: Xray_Linux_Root
В общем смотрим в выводе команды iconv -l какую кодировку можно указывать.

Выдало много кодировок, часть поскипано... Но не совсем понятно как iconv  мне может помочь?

Code: [Select]
[phantom@localhost ~]$ iconv -l
Следующий список содержит все известные встроенные кодировки.  Это не
обязательно означает, что можно использовать любые комбинации данных
имен в параметрах командной строки FROM и TO.  Одна и та же кодировка
может быть перечислена под несколькими именами (псевдонимами).

  437, 500, 500V1, 850, 851, 852, 855, 856, 857, 860, 861, 862, 863, 864, 865,
  866, 866NAV, 869, 874, 904, 1026, 1046, 1047, 8859_1, 8859_2, 8859_3, 8859_4,
. . .
  UNICODE, UNICODEBIG, UNICODELITTLE, US-ASCII, US, UTF-7, UTF-8, UTF-16,
  UTF-16BE, UTF-16LE, UTF-32, UTF-32BE, UTF-32LE, UTF7, UTF8, UTF16, UTF16BE,
  UTF16LE, UTF32, UTF32BE, UTF32LE, VISCII-1, VISCII, VISCII1.1-1, WCHAR_T,
  WIN-SAMI-2, WINBALTRIM, WINDOWS-31J, WINDOWS-874, WINDOWS-936, WINDOWS-1250,
  WINDOWS-1251, WINDOWS-1252, WINDOWS-1253, WINDOWS-1254, WINDOWS-1255,
  WINDOWS-1256, WINDOWS-1257, WINDOWS-1258, WINSAMI2, WS2, YU

Локаль в Мандриве по дефулту:

Code: [Select]
[phantom@localhost ~]$ locale
LANG=ru_RU.UTF-8
Title: Прожиг CD/DVD в K3b и русские имена файлов
Post by: Xray_Linux_Root on May 31, 2007, 21:35:46
Quote from: WhiteAngel
Выдало много кодировок, часть поскипано... Но не совсем понятно как iconv  мне может помочь?

Code: [Select]
[phantom@localhost ~]$ iconv -l
Следующий список содержит все известные встроенные кодировки.  Это не
обязательно означает, что можно использовать любые комбинации данных
имен в параметрах командной строки FROM и TO.  Одна и та же кодировка
может быть перечислена под несколькими именами (псевдонимами).

  437, 500, 500V1, 850, 851, 852, 855, 856, 857, 860, 861, 862, 863, 864, 865,
  866, 866NAV, 869, 874, 904, 1026, 1046, 1047, 8859_1, 8859_2, 8859_3, 8859_4,
. . .
  UNICODE, UNICODEBIG, UNICODELITTLE, US-ASCII, US, UTF-7, UTF-8, UTF-16,
  UTF-16BE, UTF-16LE, UTF-32, UTF-32BE, UTF-32LE, UTF7, UTF8, UTF16, UTF16BE,
  UTF16LE, UTF32, UTF32BE, UTF32LE, VISCII-1, VISCII, VISCII1.1-1, WCHAR_T,
  WIN-SAMI-2, WINBALTRIM, WINDOWS-31J, WINDOWS-874, WINDOWS-936, WINDOWS-1250,
  WINDOWS-1251, WINDOWS-1252, WINDOWS-1253, WINDOWS-1254, WINDOWS-1255,
  WINDOWS-1256, WINDOWS-1257, WINDOWS-1258, WINSAMI2, WS2, YU

Локаль в Мандриве по дефулту:

Code: [Select]
[phantom@localhost ~]$ locale
LANG=ru_RU.UTF-8

В общем то iconv и отвечает за кодировку наименования объектов на записываемых дисках.

Поставил и себе K3b, вот настройки, которые я произвёл:
1. В разделе Programms в K3b на вкладке User parameters напротив mkisofs поставил: -R -J -jcharset UTF-8
2. На вкладке Filesystem "Нового проекта" в разделе File Systems отметил чекбоксы:
3. На вкладке Advanced "Нового проекта" в разделе ISO Level выбран Level 2
4. На вкладке Advanced "Нового проекта" в разделе Input Charset чекбокс [ ] Force input charset: Снят

Запись прошла без проблем все каталоги и файлы содержащие в своём имени кириллические символы нормально читаются на вендовой машине.

З.Ы. Локаль у меня тоже UTF-8, система Debian 4.0 r0, K3b 0.12.17
И кстати у меня тоже в K3b нигде невозможно выбрать кодировку UTF-8, но однако работает
Title: Прожиг CD/DVD в K3b и русские имена файлов
Post by: WhiteAngel on May 31, 2007, 22:07:11
Quote from: Xray_Linux_Root
В общем то iconv и отвечает за кодировку наименования объектов на записываемых дисках.

Поставил и себе K3b, вот настройки, которые я произвёл:
1. В разделе Programms в K3b на вкладке User parameters напротив mkisofs поставил: -R -J -jcharset UTF-8
2. На вкладке Filesystem "Нового проекта" в разделе File Systems отметил чекбоксы:
  • Generate Rock Ridge extension и
  • Generate joilet extension

3. На вкладке Advanced "Нового проекта" в разделе ISO Level выбран Level 2
4. На вкладке Advanced "Нового проекта" в разделе Input Charset чекбокс [ ] Force input charset: Снят

Запись прошла без проблем все каталоги и файлы содержащие в своём имени кириллические символы нормально читаются на вендовой машине.

З.Ы. Локаль у меня тоже UTF-8, система Debian 4.0 r0, K3b 0.12.17
И кстати у меня тоже в K3b нигде невозможно выбрать кодировку UTF-8, но однако работает

Еще раз все проделал по пунктам (ключик -R ранее не ставил теперь попробовал), к сожалению результат тот же: с ключами -R -J -jcharset UTF-8 выдается ошибка:
[attachmentid=163]  Обратил внимание, что часть программ не найдены [attachmentid=164] Это может быть причиной?

Буду копать дальше, попробую из дома погуглить...
Title: Прожиг CD/DVD в K3b и русские имена файлов
Post by: Xray_Linux_Root on May 31, 2007, 22:38:15
Quote from: WhiteAngel
Еще раз все проделал по пунктам (ключик -R ранее не ставил теперь попробовал), к сожалению результат тот же: с ключами -R -J -jcharset UTF-8 выдается ошибка:
[attachmentid=163]  Обратил внимание, что часть программ не найдены [attachmentid=164] Это может быть причиной?

Буду копать дальше, попробую из дома погуглить...

Нехватка некоторых программ (исходя из прикреплённых файлов) в данном случае не влияет.
А разницу я нашёл... у тебя mkisofs, а у меня mkisofs это симлинк на genisoimage (форкнутый mkisofs) вот по всей видимости поэтому у меня всё прекрсно пишется.... Щя ещё гляну как дело обстоит в ASPLinux 10.0... только там к сожалению локаль - koi8-r....

Добавлено...
Проверил в ASPLinux. Тут пакеты по умолчанию.... даже без строчки(-R -J -jcharset koi8-r) всё нормально пишется... Достаточно двух галок, как тут:
Title: Прожиг CD/DVD в K3b и русские имена файлов
Post by: Alex07 on June 01, 2007, 07:34:16
попробуй установить k3b-1.0.1. Мне это помогло.
Title: Прожиг CD/DVD в K3b и русские имена файлов
Post by: WhiteAngel on June 02, 2007, 09:33:16
Поиск в гугле подсказал одно: в   дистрибутиве Mandriva 2007 для записи CD, которые бы нормально читались в Windows, нужно подправлять/обновлять mkisofs. На одном из форумов был пост, что обновя ее до версии 1.0 чел решил свои проблемы. Похоже, что нужна версия с поддержкой UTF-8. Хотя были статьи, где утверждалось, что в Мандриве 2007 весь cdrecords пакет нужно обновить.

Судя по названию пакета в дистре, который у меня, версия 2: mkisofs-2.01.01-0.a11.1mdv2007.0.i586.rpm

Подскажите, плиз, а можно где в ТомНете свежие релизы mkisofs в исходниках или rpm найти?
Или может искать что-то форкнутое с поддержкой UTF-8 от "родственных" дистрибутивов?
Title: Прожиг CD/DVD в K3b и русские имена файлов
Post by: Xray_Linux_Root on June 02, 2007, 11:52:44
Quote from: WhiteAngel
Поиск в гугле подсказал одно: в   дистрибутиве Mandriva 2007 для записи CD, которые бы нормально читались в Windows, нужно подправлять/обновлять mkisofs. На одном из форумов был пост, что обновя ее до версии 1.0 чел решил свои проблемы. Похоже, что нужна версия с поддержкой UTF-8. Хотя были статьи, где утверждалось, что в Мандриве 2007 весь cdrecords пакет нужно обновить.

Судя по названию пакета в дистре, который у меня, версия 2: mkisofs-2.01.01-0.a11.1mdv2007.0.i586.rpm

Подскажите, плиз, а можно где в ТомНете свежие релизы mkisofs в исходниках или rpm найти?
Или может искать что-то форкнутое с поддержкой UTF-8 от "родственных" дистрибутивов?

1. Берёшь ftp://apollo.chtd.tpu.ru/ASPLinux-11/SRPM...0.FC4.1.src.rpm (http://ftp://apollo.chtd.tpu.ru/ASPLinux-11/SRPMS/cdrtools-2.01.1-9.0.FC4.1.src.rpm) и вынимаешь из него один единственный патч: mkisofs-iconv-10.patch
2. Берёшь пакет с исходниками cdrtools*src*.rpm из репозитария мандривы, тот который относится к твоей версии дистрибутива .
3. Распаковываешь пакет с исходниками командой rpm -i имя_пакета
4. В папочку SOURCES добавляешь патч mkisofs-iconv-10.patch
5. В файл cdrtools.spec добавляешь "описание" патча и "инструкцию" по его применению
Т.е. фактически ты должен в файл cdrtool.spec добавить две строки:
. . .
Patch8: mkisofs-iconv-10.patch
. . .
%patch8 -p1 -b .utf8
. . .
6. Собрать пакет cdrtools командой rpmbuild -bb cdrtools.spec или rpm --build -bb cdrtools.spec
7. Установить получившиеся в результате всего этого пакеты.

З.Ы. Вот одна из тем с подобной проблемой: http://gentoo.ru/node/5939 (http://gentoo.ru/node/5939)
Если не получится - пиши в личку, помогу собрать.
Title: Прожиг CD/DVD в K3b и русские имена файлов
Post by: WhiteAngel on June 13, 2007, 16:02:19
Quote from: Xray_Linux_Root
...
2. Берёшь пакет с исходниками cdrtools*src*.rpm из репозитария мандривы, тот который относится к твоей версии дистрибутива .
...

В томнете и на дисках с дистрибутивом Мандривы не смог найти mkisofs*src*.rpm, но свою проблему все же решил:
1) Во внешке предложили заменить /usr/bin/mkisofs убунтовским (спасибо Мише из Кожевниково прислал его)
2) Затем я задал ему атрибуты (иначе не он запускался) командой:
Code: [Select]
chmod 755 /usr/bin/mkisofs
Теперь проблема записи CD в Linux Mandriva FREE 2007 с русскими именами файлов для корректного чтения в Windows решена.
Спасибо всем за помощь