|
|
第 1 帖 | |
|
|
标题: Fedora Core 4.0 HAL配置即插即用移动存储(USB及1394)的实践 作者:北南南北
来自:LinuxSir.Org 提要:对于Fedora Core 4.0 中,普通用户对即插即用支持的比较好;只是适当改一下,就能适合我们的需要;和新手弟兄同学中。。。。。 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 正文: +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 由于本人思维固化,对新事物接受不足,所以在学习Fedora Core 4.0 总是用老思维;对于对移动存储,比如U盘;移动硬盘;数码相机,现在大多能在Linux即插即用;只有少数不行;比如笔记本集成的6合1读卡器(好多都不支持,也有支持的); 我对Fedora 用的极少,感觉Fedora 是实验室,新的特性都会在Fedora 中出现,这增强Linux桌面版的易用性;其实这也是好事; 对即插即用的USB存储的原理,bbbush兄弟已经在《设置 fc3 HAL 的 storage-policy 自动挂载优盘上的 vfat 分区》中已经谈过。大家可以去看一下,看过后思路就清晰多了;看过后此文后,功力也会大长; ![]() HAL - Hardware Abstraction Layer (硬件提取层),这是我直译的,不知道怎么译才好,以我的理解和Windows的硬件管理类似; 而我写的这篇其实一文不值,为什么这样说呢?因为没有技术含量,只是为了解决问题而写,没有原理,只是改几行或者加几行的字;可能对新手还有点用; 一、USB移动存储; 数码相机;MMC 卡, SD卡;USB MINI 盘;USB移动硬盘(有个USB接口的盒子,里面装的是笔记本硬盘、大电脑硬盘),1394接口的移动存值储;录音笔;DV等,大多都是用的移动存储; 二、fat 、ntfs、fat32、reiserfs 、ext3及hfs文件系统的支持; Fedora core 4.0 几乎支持所有文件系统,所以没有必要编内核,如果您和我一样有一个移动硬盘是NTFS分区的,请安装内核NTFS模块的支持; 内核已经支持了fat格式的,无论是 fat16 fat32都已经支持;对于NTFS格式的文件系统的支持,要安装NTFS的kernel-moduls ;我感觉NTFS移动磁盘分区,没有太大的意义(但我有一个移动硬盘,有一个分区就是ntfs的),因为NTFS是不可写的;所以还是用fat或者fat32吧; 如果您的机器有1394接口,如果想购买容量比较大的存储设备,建议还是买1394接口的盒子,USB对大文件的写入支持并不好,无论是什么文件系统(以事实说话,我试过);另外1394接口的硬盘,能在系统启动的过程中稳定的加载; 三、即插即用,系统自动mount 移动存储设备; 1、首先确保 以下的几个服务是打开的; 代码:
代码:
如果这样做后,我们提到的这些服务,开机自动在所有模式下运行;不用我们人为去干涉了;不过有时为了调试,还得我们自己来打开和关闭;看下一部分; 2、以standalone模式运行的服务,大多是在 /etc/init.d目录中; 用法: 代码:
比如我们要开启 haldaemon 服务器则是: 代码:
我们在本文提到的三个服务器,都在 /etc/init.d目录中; 3、其实如果能把上面的几步弄好了,其实移动存储设备大多都是即插即用的,同时也是自动挂载的; 虽然系统即插即用了,但对权限可能不太符合我们的需要;另外如果在fat和ntfs文件系统中存放了文本,对文件名的中文支持不太友好;所以......解决..... 四、解决vfat和ntfs文件系统正常显示中文文件名和文件权限的解决; 1、确认系统的locale ; 代码:
2、改hal的配置文件; 在Fedora 4.0 中,hal服务器关于移动存储配置文件 /usr/share/hal/fdi/policy/10osvendor/10-storage-policy.fdi ; 在更改之前,请备份; 代码:
代码:
代码:
3、重启 hal守护程序; [root@localhost beinan]# /etc/init.d/haldaemon restart 正在关闭 HAL 守护进程: [ 确定 ] 启动 HAL 守护进程: [ 确定 ] 4、插上USB或1394设备;点桌面的计算机就能看到磁盘的图标; 有时可能慢一点出来,是不是挂载了,挂载到哪去了,我们可以用 df -lh 来查看; 代码:
5、是不是权限能让普通用户可写的测试; 如果是fat 或者 fat32的文件格式,我们在 10-storage-policy.fdi 中这个文件中已经定义了mount的option ,比如 user 和rw,用户可读可写; 如果是ntfs的分区,我们设置了mount 的option 的umask=000 ,这样所有的用户都有所有的权限,但ntfs分区只能在 Linux 下可读;没有太大的意义; 如果是ext3、reiserfs、ext2文件系统,如果能让普通用户拥有可读写的能力,查看挂载点到哪里了,执行一下 chmod -R 777 目录名 ;这样所有的用户就可读可写可 执行;而且每个用户的文件相互独立,相互之间保密;中文支持不存在问题,如果出现乱码,可以用export LANG= 来临时设置一下编码;比如export LANG=zh_CN 如果是其它文件格式,一是要支持内核才行;大多FC4 已经支持了,比如hfs文件系统; 五、关于hal配置文件的学习的几点提示; 1、查看 /usr/share/doc/hal-0.5.2/conf 2、查看 hal的包分而在系统的何处,也能打到一点提示的; 代码:
3、文档在 /usr/share/doc/hal-0.5.2/ 的目录;有配置文件的示例; 4、HAL - Hardware Abstraction Layer (硬件提取层), 这是我直译的,还是硬件抽象层?感觉和windows的硬件管理有点类似;我们能通过lshal|more 来查看; 代码:
代码:
5、hal配置硬件较为灵活;而且语法也比较简单 我们应该根据 lshal 或者 hal-device-manager 来查看系统的设备;hal 能管理所有的设备;而且结构清晰清了;我也是为了解决问题,看了man 才找到 hal;后来又找到bbbush 兄弟的帖子,通过bbbush兄弟的帖子(一个大大的精华),我却没有发现,浪费了我好多的时间;:( 目前我也只是在实践中即插USB ;1394 移动存储设备而用hal ,更直接的说是为了解决问题而做一些测试和实践;更多的就不懂了:( 如果想指定一个设备以 <device>开头,以</device>结层,和html语法类似;<match>匹配</match>,如果想要把设置更精确的匹配,应该在多次匹配;<merge></merge>在这里面放上我们对设备所指行的动作,比如是否加载,如果是,就true ,是否关系是逻辑关系bool 型;也就是1和0,通过lshal能得到;另外 string 是字符串,比如mout_root (挂载点) /media ,这也在lshal中可以找到;所有的条件信息,都可以在 lshal 中得到; <merge> 一个条件一行,是我们要让系统执行我们的动作的合集</merge>;而 <match>是我们要求系统匹配硬件更为精确,应该是交集</match>,比如有些设备,有些参数是一样的,这种情况下要多次匹配;但是这并不是说越精确越好;比如移动存储,我们可以找到所有的移动存储的相同信息来<match> </match>,这样共性的设备就能动起来了; 我只是说一点点原理,其实系统默认的配置文件足可以让我们的设备动起来;没有必要改动的太多; 后记:为新手而写;和新手弟兄同学,希望能与弟兄们交流; 参考: 1、 《设置 fc3 HAL 的 storage-policy 自动挂载优盘上的 vfat 分区》── bbbush 2、 HAL 官方站: http://freedesktop.org/Software/hal 4、 man fsck-sync 5、 man mount 6、 http://www.ometer.com/hardware.html 7、 http://vrfy.org/projects/hal/hal-spec.html
__________________
请弟兄们发帖时要写个好标题,多谢! 签名不支持html和bbcode,请弟兄为了版面的整洁,请更改签名档,谢谢! 请各版版主及初学Linux的弟兄,请在您的签名写上机器的配置,以及您所用的系统(包装版本号,内核),谢谢。 Slackware64 13.x kernel 2.6.29.6 **************************************** 因为太笨,所以努力; **************************************** |
|
|
|
|
|
|
|
第 2 帖 | |
|
|
关于hal在系统中的架构和作用,我在理论版已经发帖专门说明了。而Mandriva所使用的hal策略,我也在Debian版中帖过。
反正研究这个东西是很多余的 ![]()
__________________
引领潮流但不迎合潮流:Mandriva Linux,Opera。 |
|
|
|
|
|
|
|
第 3 帖 | |
|
|
wang兄好,哈哈。看来我又弄的多余了;:(
重复建设 。。。。。。 唉,昨天为什么不告诉我,累了我两天,测试了N多的规划;;;;;;;; 我在写Fedora 文档,想通过fedora.linuxsir.org 做为试点。看能否用 http://fedora.linuxsir.org 的模式来把sir的主页系统弄起来; |
|
|
|
|
|
|
|
第 4 帖 | |
|
|
我还是觉得把精华帖的一部分提取出来,在主页上做个链接就可以了。vbb应该有这样的插件。单独做一些文章系统,是不会成功的,也没有人有心情去更新。
BTW,写文档是无法解决Linux存在的问题的,这是我的一贯看法。最终用户是不会去看文档的,所以红旗、中标的帮助系统根本是满篇病句和错字,也照样通过了政府采购。 |
|
|
|
|
|
|
|
第 5 帖 | |
|
|
北南,我有一个移动硬盘,在 FC4 下就是死活不肯自动挂载。用 mount 命令则一切正常,这样的情况你遇到过吗?
|
|
|
|
|
|
|
|
第 6 帖 | |
|
|
什么硬盘,是带盒子那种吗?
兄弟看一下是不是相关的服务已经打开了吧。 另外,要点[计算机]查看,和df -lh ; |
|
|
|
|
|
|
|
第 7 帖 | |
|
|
哇,能挂这么多东东呀,去买个回来试试。
|
|
|
|
|
|
|
|
第 8 帖 | |
|
|
做个标记
__________________
SOTEC NoteBook WA2330S5 Fedor Core 4 + 2.6.11-1.1369 + KDE3.4.2 |
|
|
|
|
|
|
|
第 9 帖 | |
|
|
我按斑竹的本贴添加代码到文件后
USB的移动硬盘还是不能自动挂载啊... |
|
|
|
|
|
|
|
第 10 帖 | |
|
|
要是可以把桌面上的图标去掉就好了,挂一个过一个图标,还会发生图标重叠。
在KDE下可以在控制中心修改,但是gnome下不知道怎么修改啊。
__________________
OS: 游离在sid, lenny和intrepid之间... HW: Banias 1.4GHz, 1.25GB DDR, 160GB HD, ATI M9, 14.1" 1024x768 LCD. wmii is darn Great! |
|
|
|
|
|
|
|
第 11 帖 | |
|
|
gnome下可以通过gconf-editor查找一个叫show_removable_device_icon(大概是这么个名字)的设置进行修改。
|
|
|
|
|
|
|
|
第 12 帖 | |
|
|
好,我试试。
谁有空写个关于配置编辑器的文档啊,列一下常用的配置。 感觉那东西很有用的。但是一直不太会用。 |
|
|
|
|
|