`
baoroushi
  • 浏览: 6282 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

LinuX USB设备自动挂载和卸载

阅读更多
配置LinuX USB设备热拔插[align=center][/align]
一、 工作环境
LinuX Centos 5.3 平台、FAT32 U盘和NTFS移动硬盘各一个。

二、 工作任务目的
公司要求在linux平台上实现USB设备自动热拔插,如:
1. USB设备自动挂载;
2. 挂载后通过SMB服务共享出来,客户端访问权限;
3. USB设备驱动在Linux上自动加载;
注:最好找到相对应功能服务的linux版本。

三、 工作流程
1. 安装HAL、dbus、kernel-module-ntfs
测试采用CentOS5.3系统,默认安装了HAL和DBUS,只需要安装与CentOS 5.3内核相匹配的KERNEL-MODULE-NTFS版本。在这里我以经下载打包放在文件夹内,安装即可。

2. 配置
CentOS5.3对FAT32 U盘是支持热拔插,对于NFTS格式USB设备,只需要新建和修改以下文件即可,操作如下:
1) 创建访问权限755的可执行脚本/usr/lib/hal/hal-unmount.sh ,内容如下:
File: /usr/lib/hal/hal-unmount.sh
#!/bin/sh
# sanity check. DEVNAME should start with a /
[ "$DEVNAME" != "${DEVNAME#/}" ] || exit 0
# Lazily unmount drives which are removed, but still mounted
if [ "$ACTION" = remove ] ; then
   if [ -x /usr/bin/pumount ] ; then
     /usr/bin/pumount -l "$DEVNAME";
   else
     /bin/umount -l "$DEVNAME";
     rm –rf "$DEVNAME";
   fi
fi
exit 0

2) 然后你得告诉HAL当你移除你的U盘时运行这个脚本。在/etc/udev/rules.d/90-hal.rules 中加入以下内容:
File: /etc/udev/rules.d/90-hal.rules
SUBSYSTEM=="block", ACTION=="remove", RUN+="/usr/lib/hal/hal-unmount.sh"

3. SAMBA配置
添加如下配置文件:
#Vi  /etc/samba/smb.conf
[usbfile]
Path=/media
Writable=yes
Public=yes
Only guest=yes
添加完成后,重新启动服务:
Service smb restart

4. GUSET用户自动登录
首先创建一个GUEST用户,然后对GUEST用户授权例如:
[root@localhost ~]# useradd sam
创建sam用户
下面设置sam密码
[root@localhost ~]# passwd sam
Changing password for user sam.
New UNIX password:
BAD PASSWORD: it is too simplistic/systematic
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
将sam用户加入到root组
[root@localhost ~]# usermod -G root sam
修改配置文件,并加入以下内容:
File:/etc/gdm/custom.conf
[daemon]
AutomaticLogin=ylm

GtkModulesList=gail:atk-bridge:/usr/lib/gtk-2.0/modules/libkeymouselistener:/usr/lib/gtk-2.0/modules/libdwellmouselistener

AddGtkModules=true

RemoteGreeter=/usr/libexec/gdmgreeter

AutomaticLoginEnable=true

TimedLoginEnable=true

TimedLogin=ylm

TimedLoginDelay=1

注意:开始登录时为出现输入用户名,默认5秒将自动登录GUESTE用户。

5. 测试问题
在安装与配置过程中遇到的问题如下:
1. 安装KERNEL-MODULE-NTFS时,先确定安装GCC,否则会出错;
四、 总结及注意事项
在配置LINUX热拔插时,用了很多办法,遇到很的困惑与不解。刚开始用FreeNAS系统做USB设备热拔插,原因很简单,Thecus Y.E.S.box内置装的是FreeNAS系统,它具有这样的功能,也符合公司的要求;等我摸透Thecus Y.E.S.box后,它是通过硬件的支持才实现USB热拔插的功能,放弃采用FreeNAS系统做USB设备热拔插;为了降低成本,尝试在文本字符界面实现这样的功能,最后没办法先在linux图形界面实现USB设备热拔插;
注意事项:
在配置文件时,注意先备份再修改;安装所有需要的插件;自动开启samba服务;自动关闭防火墙;

以上是我安公司要求写的报告文件,只配置了可读,可写自己去网上去找找!
在这里求大家给个Centos 5.4的kernel-module-ntfs包,一直还没找到它!
分享到:
评论

相关推荐

    Linux下使用Usbmount实现USB设备自动挂载

    Usbmount工具可以实现usb设备得自动加/卸载,本文介绍了使用Usbmount实现USB设备自动挂载的方法。

    Linux如何自动挂载和卸载usb外部硬盘

    有一个usb外置的硬盘,想插电直接可以linux挂载,关电linux直接umount, 查了一下没有一个比较合适的解决方案。于是自己写了一脚本,然后使用crontab 每10秒运行一次。 计划任务,增加每分钟的任务 crontab -e #增加...

    usb自动挂载实现脚本及代码

    linux下自动挂载及卸载脚本和代码实现,请参考博客实现介绍。

    Linux上用udev自动识别并挂载U盘

    2. 在/opt/usb下建立执行脚本,负责挂载和卸载。 root@am335x-evm:/opt/usb# vi mountusb.sh #!/bin/sh mount -t vfat /dev/$1 /mnt/usb sync root@am335x-evm:/opt/usb# vi umountusb.sh #!/bin/sh sync ...

    rocky,凝思操作系统U盘加载和卸载操作

    凝思操作系统U盘加载和卸载操作,由于rocky操作系统是国产安全操作系统,u盘的挂载方式和其它linux 不同。

    Linux系统下挂载U盘

    挂u盘之前,运行命令cat /proc/partitions,看看现在系统中有哪些分区。插上u盘以后,再次运行上述命令,看看多出来什么...Linux对U盘的管理是内核模块式,只要usb设备的内核模块没有移除,卸载完后指示灯还是应该发亮。

    UMS-Interface:为Android配置USB大容量存储,以将手机用作USB磁盘,提供挂载功能和简单的文件浏览器

    同时,安装/卸载分区以及在块设备上的操作都是高风险操作,如果用户不熟悉Linux环境,则可能会使电话变砖。 替代方法如下: 此Shell脚本运行环境基于Termux,请首先安装Termux。 为了方便一键式操

    入门学习Linux常用必会60个命令实例详解doc/txt

    举例而言,如要挂载下列5个设备,其执行指令可能如下 (假设都是Linux的ext2系统,如果是Windows XX请将ext2改成vfat): 软盘 ===>mount -t ext2 /dev/fd0 /mnt/floppy cdrom ===>mount -t iso9660 /dev/hdc /mnt/...

    Linux虚拟机 vmware

    识别USB存储设备 包括USB硬盘、U盘、MP3播放器等 /dev/sda /dev/sdb…… # fdisk -l 使用mount命令挂载U盘 # mount -t vfat /dev/sda1 /mnt/ 通过挂载点目录访问U盘的内容 # ls /mnt 使用umount命令卸载U盘 # umount...

    生产服务器部署规范.docx

    Vim-enhanced Vim编辑器 开发工具(Automaker、gcc、perl、python..) 用于程序的开发编辑 networkmanager 网络管理组件 Acpld Acpi事件守护进程 Autofs 自动挂载和卸载文件系统的工具 conman 控制台管理器 coolkey ...

    linux.chm文档

    mount /dev/sda1 /mnt/usbdisk 挂载一个usb 捷盘或闪存设备 mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share 挂载一个windows网络共享 磁盘空间 df -h 显示已经挂载的分区列表 ...

    adb1.0.26包含fastboot.exe

    这一点貌似在 Linux 和 Mac OS X 下不用操心,在 Windows 下有可能遇到需要安装驱动的情况,确认这一点可以右键「计算机」-「属性」,到「设备管理器」里查看相关设备上是否有黄色感叹号或问号,如果没有就说明驱动...

Global site tag (gtag.js) - Google Analytics