找回密码
 注册
查看: 1421|回复: 10

[请教] 刻录中文文件名/目录

[复制链接]
发表于 2003-7-22 14:12:10 | 显示全部楼层 |阅读模式
hi, 大家好!

我在进行光盘刻录时遇到一个很让我困惑的问题, 查过许多资料
现在还弄不明白, 请知道的朋友不吝赐教!

情况如下:

. 我在 Redhat 9.0 之下使用 gtoaster 或 xcdroast 刻录光盘
   刻录完后, 其中的中文目录名或文件名在 linux 下 mount 上
   来之后一切显示正常; 然而在 windows 下却都是乱码

. 可奇怪的是, 在我重装 Redhat 9.0 之前, 我用的 gtoaster
   和重装后的一模一样 (配置都是使用默认的), 但是重装之前刻
   出来的盘, 其中的中文目录或文件无论在 linux 下或 windows
   下都是正常显示的

我的问题:

. 为什么同样的软件同样的配置, 在系统重装前后会有这样的差异?
. 有没有解决办法, 使得我现在刻出来的盘和以前一样 - 里面的中
   目录或文件名在 linux 下和 windows 下都可以正常显示?
. 这问题和 /etc/fstab 中挂载光驱的参数有关系么? (我只有一个
   刻录机, 平时也把它当光驱使)

我目前了解的信息:

. 问题似乎出在 mkisofs 上? 我用 mkisofs -output-charset help
   得到的输出里面没有支持中文的 cp936

. google 里搜到有一位朋友在 00 年时候写过一个让 mkisofs 支持
   多字节语言的 patch, 版本颇旧, 之后没有任何相关信息或更新,
   心存疑, 没下载来使用. 因为我重装系统前没对刻录方面的软件
   动过任何手脚, 可是却能正常刻录, 所以我认为新版本的 mkisofs
   实际已经支持多字节语言?

. Joliet 格式: 在使用 gtoaster 和 xcdroast 时, 我确认它们调用
   mkisofs 时都使用 -J 参数了.

. Google: "cdrecord" "刻录" "中文" "mkisofs"... 这些关键词的
   各种可能组合我都在 google 上试过了, 始终没有答案, 所以, 非
   常非常希望知道原因或有经验或有解决办法的你能伸出援手, 先行
   谢过了!!
发表于 2003-7-28 16:11:41 | 显示全部楼层
如果想让光盘中的中文文件名在sb的windows系统下也可以显示而不是该死的"___",请给mkisofs打补丁

下载地址

ftp://any:[email protected]

解压缩后
进入源代码目录 patch -p1<noboru_nls_patch_20030616.txt

$make

这一步可能出错,导致mkisofs生成不能
如果是这种错误
==> LINKING "OBJ/i686-linux-cc/mkisofs"
../libs/i686-linux-cc/libunls.a(nls_base.o)(.text+0x2e9): In function `load_nls
':
: undefined reference to `request_module'
../libs/i686-linux-cc/libunls.a(nls_base.o)(.text+0x2fe): In function `load_nls
':
: undefined reference to `printk'
collect2: ld returned 1 exit status
make[1]: *** [OBJ/i686-linux-cc/mkisofs] 错误 1
make[1]: Leaving directory `/home/xoo/software/src/cdrtools-2.0/mkisofs'
==> MAKING "all" ON SUBDIRECTORY "SRCROOT/mkisofs/diag"
make[1]: Entering directory `/home/xoo/software/src/cdrtools-2.0/mkisofs/diag' ........

请 "在cdrtools-2.00.3/libunls/nls_base.c的开始加上#undef CONFIG_KMOD试试"



人品没有问题,就成功了
# gmake INS_BASE=/usr/local install
/usr/local 为安装目录
如果直接gmake install,则安装在/opt/sxxxx目录下

测试
$mkisofs -jcharset -help
应该出现
cp936
gb2312
gbk等中文字符编码

-----------------------------------------------------------

mkisofs -r -jcharset=cp936 -J -T -o 输出.iso 源文件目录/

-r重要,好象是打开目录下所有文件的读权限,如果没有,应该会刻飞。。
估计我k3b刻飞盘就是因为这些参数没搞定,mb我不用了,还是先做iso保险

#cdrecord -scanbus

获得刻录设备信息

cdrecord -v speed=2 dev=0,0,0 cd.iso
~~~~scanbus获得的参数



OVER
回复

使用道具 举报

发表于 2003-7-31 01:06:09 | 显示全部楼层
置顶啊 我很快就买combo了!!!!!
回复

使用道具 举报

发表于 2003-10-28 15:33:27 | 显示全部楼层
linux啊 爱你又恨你啊
回复

使用道具 举报

发表于 2003-10-28 21:11:14 | 显示全部楼层
哦  峨峨
回复

使用道具 举报

发表于 2003-10-30 09:45:17 | 显示全部楼层
1楼的朋友,你的FTP里哪个是补丁呢?是cdrtool吗?
我昨天用k3b0.10.1刻盘……在windows下全成了乱码……

自认灭有RPWT……可是盘乱码依旧……
回复

使用道具 举报

发表于 2003-10-31 09:12:57 | 显示全部楼层
这也不能怪linux,在linux下刻的盘在linux本来就是可以显示中文的
回复

使用道具 举报

发表于 2003-11-1 10:06:47 | 显示全部楼层
[quote:ede05f44c0="lxght"]

人品没有问题,就成功了
[/quote]
哈哈,这句说的好!
回复

使用道具 举报

发表于 2003-11-2 16:49:05 | 显示全部楼层
楼上几位有混MOP的?

按照一楼的朋友的Cdrtools的补丁,我开始偷懒用覆盖的方法把那个什么nls语言文件覆盖到cdrtools的源码目录下,编译成功,/opt下面也有了我要的文件。可是就是仍然无法支持中文,mkisofs -jcharset -help输出也无gb2312、cp936等........

后来用那个patch手动补丁修正,终于可以了。
不过手头没有CDR,改天再测试一下..........对了,这样之后要不要重新编译k3b的?
回复

使用道具 举报

发表于 2003-11-3 23:01:17 | 显示全部楼层
嗯,.........今天又失败了........光盘卷标还是乱码..........
莫非要先作成ISO,然后再刻吗?
回复

使用道具 举报

发表于 2003-11-6 19:30:41 | 显示全部楼层
我没有看到那个布丁文件啊:(
请问是那个ftp上的那个文件啊???
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2025-7-23 04:51 , Processed in 0.043432 second(s), 16 queries .

© 2001-2025 Discuz! Team. Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表