Ubuntu 自动挂载u盘(arm等其他linux环境也可)

1. 手动挂载
	cat /proc/partitions         识别U盘在系统中的设备号
	mount /dev/sdb1 /mnt/udisk      在/mnt/udisk目录下挂载sdb1,如果没有udisk则手动创建一个
	umount /mnt/udisk          卸载u盘
2. 自动挂载

禁止自动挂载:
$ gsettings set org.gnome.desktop.media-handling automount false
禁止自动挂载并打开
$ gsettings set org.gnome.desktop.media-handling automount-open false
允许自动挂载
$ gsettings set org.gnome.desktop.media-handling automount true
允许自动挂载并打开
$ gsettings set org.gnome.desktop.media-handling automount-open true


3. 脚本自动挂载
udev 的主要功能是实时地在 /dev 目录下创建和删除设备节点, 
但它也能在创建节点的同时, 执行一个额外地程序. 
有时间请仔细阅读 Writing udev rules 这篇文章. 
写规则时特别注意 KERNEL, SUBSYSTEM 等这些关键字单数和复数(最后有没有'S')的区别. 
复数(比如 KERNELS)表示你想用父设备的属性来匹配, 单数(比如 KERNEL)是要匹配设备本身的属性.
在 /etc/udev/rules.d 目录下创建文件 10_usbkey.rules, 其内容如下
KERNEL=="sda1", SUBSYSTEM=="block", RUN+="/root/usbmount.sh %k"
然后, 在 /root 目录中创建文件 usbmount.sh, 其内容为
#!/bin/bash
	LOG=/var/log/usb-hotplug.log
	lap=lap: ACTION" >> ACTION == "add" ]
	then
	    mkdir $1
	    mount -t vfat -o umask=000,noatime,async,codepage=936,iocharset=gb2312 \    /dev/$1           /media/$1
	    mount -t ntfs -o umask=000,noatime,async,codepage=936,iocharset=gb2312 \    /dev/$1           /media/$1
	    mount -t ext4 -o umask=000,noatime,async,codepage=936,iocharset=gb2312 \    /dev/$1          /media/$1
	elif [ $ACTION == "remove" ]
	then
	    umount -l /media/$1
	    rm -rf $1
	fi
       并把该文件属性设置为可执行, chmod a+x usbmount.sh
       注意, 如果你的 linux 上 locale 是 zh_CN.utf-8, 需要把上面的 iocharset=gb2312 改成 iocharset=utf8
这是一个非常简单但可用的例子. 
U盘插上后自动 mount 到 /media/usbkey , 拔出后自动 umount. 
你可以查看 /var/log/usb-hotplug.log , 里面会有些简单的调用记录.
发布了11 篇原创文章 · 获赞 8 · 访问量 162

猜你喜欢

转载自blog.csdn.net/qq_37730663/article/details/105270838