解决了MPD的一个问题(权限)
右键自动挂载ISO光盘镜像的脚本
用xbindkeys为X设置快捷键虽然起这个题目,但这篇文章重点不是这个脚本。
脚本在文末再给出。
自从升级到2.6.25内核后,就有一些小麻烦,不能再右键自动挂载虚拟光盘就是其中之一。
尝试手动挂载,命令如下:
$ sudo mount -t iso9660 -o loop,user xxx.iso /media/cdrom
mount: could not find any device /dev/loop#
可见不能挂载虚拟光驱的原因是新的内核在编译时把loop编译为模块,而且没有自动加载。
如果要手动加载loop,执行:
$ sudo modprobe loop
如果想开机自动加载loop模块,传统的做法是将其写入类似/etc/modules.conf的文件里,比如ubuntu是/etc/modules,对于archlinux用户,可以在/etc/rc.conf的MODULES段添加欲自动加载的模块。
最后附上右键自动挂载ISO虚拟光盘的脚本:
#!/bin/bash
[ `whoami` == "root" ] || cmd="gksudo" ##不是root 就cmd=gksudo
count=0
dir="/media/cdrom$count" ##设置挂载点
uid=$2
while df|grep -q $dir 2>/dev/null ##挂载点 是否使用了
do
echo $dir
let count=$count+1
dir="/media/cdrom$count" ###新挂载点
done
echo $dir
###使用gksudo 是需要root 权限
if [ ! -d $dir ];then
$cmd "mkdir -p $dir" ##创建挂载点
fi
if mount|grep $1;then
exit 0
fi
if [ -f $1 ] ;then
echo "$1 mount on $dir"
$cmd "mount -t iso9660 -o ro,loop,uid=$UID,utf8 $1 $dir" ###挂载
fi
for dir in /media/cdrom[1-9]*
do
$cmd "rmdir $dir" #####拿掉没用的目录
done
[ `whoami` == "root" ] || cmd="gksudo" ##不是root 就cmd=gksudo
count=0
dir="/media/cdrom$count" ##设置挂载点
uid=$2
while df|grep -q $dir 2>/dev/null ##挂载点 是否使用了
do
echo $dir
let count=$count+1
dir="/media/cdrom$count" ###新挂载点
done
echo $dir
###使用gksudo 是需要root 权限
if [ ! -d $dir ];then
$cmd "mkdir -p $dir" ##创建挂载点
fi
if mount|grep $1;then
exit 0
fi
if [ -f $1 ] ;then
echo "$1 mount on $dir"
$cmd "mount -t iso9660 -o ro,loop,uid=$UID,utf8 $1 $dir" ###挂载
fi
for dir in /media/cdrom[1-9]*
do
$cmd "rmdir $dir" #####拿掉没用的目录
done
该脚本出自《用于使用 鼠标右键 挂载iso的脚本!》,应该只支持ISO格式的镜像,对于其它格式,可参考《光盘镜像的挂载》
使用方法:
1.把代码写入文件比如 :iso_mount
2 赋予执行权限: chmod +x iso_mount
3 右键点击iso镜像文件
单击右键->使用其它程序打开(A)->使用自定义命令(U)->浏览... ,找到刚才写的iso_mount
建议将该脚本放在~/.gnome2/nautilus-scripts下,就可以直接在“右键-脚本”里调用它了。
是不是很好用呢?简直可以被誉为“Linux下的虚拟光驱”^_^
- 版权所有,转载请遵循“署名-非商业用途-保持一致”创作共用协议。

邱焜
对于archlinux用户,可以在/etc/modules的MODULES段
写错了,是rc.conf
新蜂Linux
谢谢,已更正!:)
很好!收下了!感谢楼主!