当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 45 篇帖子 ]  前往页数 1, 2, 3  下一页
作者 内容
1 楼 
 文章标题 : 用于使用 鼠标右键 挂载iso的脚本!
帖子发表于 : 2007-06-06 20:07 

注册: 2006-09-07 22:51
帖子: 849
送出感谢: 0 次
接收感谢: 0 次
由于,我需要挂载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

使用方法:
1.把代码写入文件比如 :iso_mount
2 赋予执行权限: chmod +x iso_mount
3 鼠标移动到iso 镜像文件上
单击右键->使用其它程序打开(A)->使用自定义命令(U)->浏览...
找到刚才写的iso_mount
就ok了!
以后,双击就行了!


最后由 wkt 编辑于 2007-06-26 10:16,总共编辑了 2 次

页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2007-06-06 20:43 

注册: 2007-04-09 12:19
帖子: 119
送出感谢: 0 次
接收感谢: 0 次
如果是用gnome的话,也可以放在~/.gnome2/nautilus-scripts/下面,就可以通过右键->脚本-> iso_mount来使用了。


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2007-06-06 21:22 

注册: 2006-09-07 22:51
帖子: 849
送出感谢: 0 次
接收感谢: 0 次
thword 写道:
如果是用gnome的话,也可以放在~/.gnome2/nautilus-scripts/下面,就可以通过右键->脚本-> iso_mount来使用了。

这个我不知道!
多谢指点!


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2007-06-06 21:24 
头像

注册: 2006-12-23 13:46
帖子: 9203
地址: Azores Islands
送出感谢: 0 次
接收感谢: 1
另外:

源中有一个图形界面的工具,专挂iso, 可是名字我忘记了,楼主可以看下这个软件的源码,完善下说不定更好。


_________________
no security measure is worth anything if an attacker has physical access to the machine


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2007-06-06 21:41 

注册: 2006-09-07 22:51
帖子: 849
送出感谢: 0 次
接收感谢: 0 次
skyx 写道:
另外:

源中有一个图形界面的工具,专挂iso, 可是名字我忘记了,楼主可以看下这个软件的源码,完善下说不定更好。

我觉得我的这个对我够用了!
源中的麻?
我想很可能是python写的
我不知道python能做什么
而且复杂得令人受不了
我没有好好看过python的书
所以,源中我就不看了.
我又不是什么高手?
自己写小东西还可以
看别人的高深代码--不敢啊!


页首
 用户资料  
 
6 楼 
 文章标题 :
帖子发表于 : 2007-06-06 21:46 

注册: 2007-04-09 12:19
帖子: 119
送出感谢: 0 次
接收感谢: 0 次
呵呵,既然写了个挂载的,那就再写一个卸载的好了。


页首
 用户资料  
 
7 楼 
 文章标题 :
帖子发表于 : 2007-06-06 22:33 

注册: 2006-09-07 22:51
帖子: 849
送出感谢: 0 次
接收感谢: 0 次
thword 写道:
呵呵,既然写了个挂载的,那就再写一个卸载的好了。

这个系统不是自带了吗?
我再写那不是无聊?
我写挂载的是因为系统不自带!


页首
 用户资料  
 
8 楼 
 文章标题 :
帖子发表于 : 2007-06-12 0:33 

注册: 2007-04-17 0:42
帖子: 40
送出感谢: 0 次
接收感谢: 0 次
thword 写道:
如果是用gnome的话,也可以放在~/.gnome2/nautilus-scripts/下面,就可以通过右键->脚本-> iso_mount来使用了。

不过,要注意:nautilus是通过环境变量来传递路径的。


页首
 用户资料  
 
9 楼 
 文章标题 :
帖子发表于 : 2007-06-13 12:16 
头像

注册: 2007-06-11 12:38
帖子: 200
送出感谢: 0 次
接收感谢: 0 次
卸载不了啊


附件:
Screenshot.png
Screenshot.png [ 71.22 KiB | 被浏览 3316 次 ]

页首
 用户资料  
 
10 楼 
 文章标题 :
帖子发表于 : 2007-06-26 9:57 

注册: 2006-09-07 22:51
帖子: 849
送出感谢: 0 次
接收感谢: 0 次
yiencai 写道:
卸载不了啊

这个我也知道!
不过我不清楚系统的卸载方法---我就没法子了!
当然写一个简单的脚本也可以 ,
我就是不知道如何让它在桌面的那个图标的右键上出现!
如果这个可以就ok了!


页首
 用户资料  
 
11 楼 
 文章标题 :
帖子发表于 : 2007-09-29 3:47 

注册: 2007-08-17 14:04
帖子: 67
送出感谢: 0 次
接收感谢: 0 次
Gmountiso也是脚本,不过使用还不够方便,一定要手动指定挂载点,最好是直接在右键菜单中挂载,挂载点为与ISO文件同名的目录,也就是在挂载前先生成一个同名目录再挂载,卸载后销毁目录,这样挂载多个不会出现不记得哪是哪了,呵呵。
我刚接触这个,不知道如何从参数中获得ISO文件的文件名,如果能获取,稍微修改Gmountiso就能实现上面的效果,
或者哪位大虾能教我如何从 “/media/hda2/123.iso” 中获取“123.iso”这个名称,谢谢!


页首
 用户资料  
 
12 楼 
 文章标题 :
帖子发表于 : 2007-09-30 20:40 

注册: 2006-09-07 22:51
帖子: 849
送出感谢: 0 次
接收感谢: 0 次
thomsi 写道:
Gmountiso也是脚本,不过使用还不够方便,一定要手动指定挂载点,最好是直接在右键菜单中挂载,挂载点为与ISO文件同名的目录,也就是在挂载前先生成一个同名目录再挂载,卸载后销毁目录,这样挂载多个不会出现不记得哪是哪了,呵呵。
我刚接触这个,不知道如何从参数中获得ISO文件的文件名,如果能获取,稍微修改Gmountiso就能实现上面的效果,
或者哪位大虾能教我如何从 “/media/hda2/123.iso” 中获取“123.iso”这个名称,谢谢!

你改一下脚本就可以了
name=`basename /media/hda2/123.iso`
echo $name
看看


页首
 用户资料  
 
13 楼 
 文章标题 : Re: 用于使用 鼠标右键 挂载iso的脚本!
帖子发表于 : 2007-11-13 14:07 
头像

注册: 2005-11-06 1:51
帖子: 1795
地址: 七彩云世界
送出感谢: 0 次
接收感谢: 0 次
对lz 的iso_mount稍微修改了一下,用在kubuntu下,使用kdesudo 和 konqueror
----------------
代码:
#!/bin/bash
###作者:wkt@ubuntu.org.cn
###修改者:fortruth@ubuntu.org.cn
###修改内容:修改内容主要针对KDE 环境
###1.调用kde下的sudo 前端kdesudo
###2.挂载上后用konqueror打开文件夹
[ `whoami` == "root" ] || cmd="kdesudo" ##不是root 就cmd=kdesudo
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
###使用kdesudo 是需要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" ###挂载
kfmclient openURL $dir  ##在kde下用konqueror打开挂载的iso目录
fi
for dir in /media/cdrom[1-9]*
do
$cmd "rmdir $dir" #####拿掉没用的目录
done


有没有人再加一加,使其能在kde 和 gnome 下,(nautilus,konqueror)能够通用,


_________________
佛出寺,求索真世界 For_Truth:Free_Open_Share
OPEN GPG KEY:03D18D95


页首
 用户资料  
 
14 楼 
 文章标题 :
帖子发表于 : 2007-11-16 22:46 

注册: 2006-09-07 22:51
帖子: 849
送出感谢: 0 次
接收感谢: 0 次
既然有人有兴趣我也更新一下:
代码:
#!/bin/bash
cmd="sh -c"
if [ "x$1" == "x" ];then
 exit 1
fi
if [ "x`basename $0`" == "xiso_umount" ];then  ##通过文件名来办断,是挂载还是卸载.
  if mount|grep -q $1 2>/dev/null ;then
      gksudo "umount $1"
  fi
 exit 0
fi
if [ ! -f $1 ] ;then
 exit 2
fi
if mount|grep $1;then
  exit 0
fi
lockfile-create /tmp/iso_mount
lockfile-touch /tmp/iso_mount&
echo $! >/tmp/iso_mount
[ `whoami` == "root" ] || {
  if ps aux|grep -v grep |grep -q gnome-pty-helper ;then
   cmd="gksudo" ##不是root 就cmd=gksudo
  else
    cmd="kdesudo" ##不是gnome,就是kde.
  fi
  }
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 [ -f $1 ] ;then
  echo "$1 mount on $dir"
  $cmd "mount -t iso9660,udf -o ro,loop,uid=$UID,iocharset=cp936,utf8 $1 $dir" ###挂载
fi
lockfile-remove /tmp/iso_mount
for dir in /media/cdrom[1-9]*
do
  $cmd "rmdir $dir" 2>/dev/null #####拿掉没用的目录
done


保存为iso_mount
然后
ln -sf iso_mount iso_umount
就可用了:


页首
 用户资料  
 
15 楼 
 文章标题 :
帖子发表于 : 2007-11-30 22:12 

注册: 2007-06-29 20:19
帖子: 112
送出感谢: 0 次
接收感谢: 1
楼主把人养懒了哦!


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 45 篇帖子 ]  前往页数 1, 2, 3  下一页

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译