29 个解决方案
#1
mount -o loop 你的ISO路径 /mnt
#2
mount -o loop /media/hda5/ubuntu.iso /cdrom这种可以直接加载到光驱,如果你连了网的,可以直接/etc/apt/sources.list 里的 deb cdrom那一项删掉,以后直接从网上下,还爽些,
不过只能能用命令行sudo gedit /etc/apt/sources.list 修改,反正就是前几行里,有cdrom的就删掉
不知道如何使用gedit的话用man gedit命令,有帮助
不过只能能用命令行sudo gedit /etc/apt/sources.list 修改,反正就是前几行里,有cdrom的就删掉
不知道如何使用gedit的话用man gedit命令,有帮助
#3
把下面的代码保存到一个文件当中 比如mountiso
然后在chmod +x mountiso
在shell里输入 ./mountiso
就可以了
这个是一个比较完整的挂载ISO文件的脚本程序
是交互式的 希望你能受用
#!/bin/bash
#################################################################################
# mountiso ISO文件挂载脚本
# 作者:xiaosilent
# Email:xiaosilent@gmail.com
# 版本:0.2
# 依赖:zenity
# 用法:====建议先把本脚本链接到 /usr/bin.并赋予755的权限========
# a.终端下: mountiso ***.iso
# b.X环境:在iso文件上右击,选择 "属性",切换到 "打开方式","添加",指定本脚本所在位置,确定。
# 最后,再在iso文件上右击,选择 "用 mountiso 打开" 即可。
##################################################################################
################### 定义变量 ##########################################
MOUNTPOINT="/media/iso" #挂载点
ISO_PATH=$1 #缺省的iso文件路径,从第一个参数里获取
CHOSED_FUNCTION="" #功能选择,挂载/卸载
ISMOUNTED="" #挂载点是否已经被占用
################### 一些功能模块 #######################################
###功能选择 挂载/卸载
function choosefunction(){
CHOSED_FUNCTION=`zenity --title="选择要执行的操作" --list --width=100 --radiolist --column="是否选中" --column="操作类型" TRUE "挂载新卷" FALSE "卸载旧卷"`
if [ "$?" -eq "1" ]
then
echo "没有选择,直接退出"
exit 0
fi
}
###获取ISO文件的路径
function getISOPath(){
if [ "$ISO_PATH" = "" ] #命令行参数为空
then
echo "请在弹出的对话框中选择要挂载的ISO文件" #命令行输出
ISO_PATH=`zenity --file-selection --title "选择要挂载的ISO文件" --filename="~"` #弹出文件选择对话框
if [ "$ISO_PATH" = "" ] #从文件对话框"取消",给出提示信息,程序退出。
then
zenity --error --title="错误信息" --text="您没有指定要挂载的ISO文件!"
exit 1
fi
if [ `file $ISO_PATH | grep "ROM" | wc -c` -eq "0" ]
then
zenity --error --title="错误信息" --text="您所选择的文件并不是一个ISO文件"
exit 1
fi
fi
}
###获取挂载点路径
function getMountPoint(){
echo "请在弹出的对话框中输入文件的挂载目录,默认是$MOUNTPOINT"
MOUNTPOINT=`zenity --file-selection --directory --title="请选择ISO文件挂载目录" --filename="$MOUNTPOINT"`
if [ "$MOUNTPOINT" = "" ] #选择了 "取消",给出提示信息,程序退出。
then
zenity --error --title="错误信息" --text="您没有指定挂载目录"
exit 1
fi
}
###检测挂载点是否存在
function checkMountPoint_Exist(){
if [ ! -e $MOUNTPOINT ] #监测挂载点是否存在
then #挂载点 不存在
zenity --error --title="错误信息" --text="挂载目录$MOUNTPOINT不存在"
exit 1
fi
}
###检测所指定的挂载点是否为目录
function checkMountPoint_Directory(){
if [ ! -d $MOUNTPOINT ] #如果挂载点不是一个目录
then
enity --error --title="错误信息" --text="挂载目录$MOUNTPOINT不是目录"
exit 1
fi
}
###检测指定的挂载点是否已经被使用
function checkMountPoint_Mounted(){
ISMOUNTED=`grep $MOUNTPOINT /etc/mtab | wc -c`
if [ "$ISMOUNTED" -gt "0" ]
then
ISMOUNTED="TRUE"
else
ISMOUNTED="FALSE"
fi
}
###执行 卸载 的操作
function doUMount(){
if [ "$ISMOUNTED" = "TRUE" ]
then
zenity --warning --title="是否选择卸载" --text="挂载目录$MOUNTPOINT已经被占用,必须要先进行卸载。\n\n在确认卸载以前,请确认该卸载操作是安全的!\n\n卸载操作需要root权限,是否确定要进行卸载?"
if [ $? -eq 1 ]
then
exit 0
else
gksu umount $MOUNTPOINT ##gksu在图形界面下切换到超级用户。
checkMountPoint_Mounted
if [ "$ISMOUNTED" = "TRUE" ]
then
zenity --error --title="卸载失败" --text="设备忙,或其他原因,卸载失败!"
exit 1
else
if [ "$CHOSED_FUNCTION" = "挂载新卷" ]
then
zenity --info --title="成功卸载" --text="原来的卷已经成功卸载,即将开始新卷的挂载操作!"
else
zenity --info --title="成功卸载" --text="原来的卷已经成功卸载!"
exit 0
fi
fi
fi
fi
}
###执行 挂载 的操作
function doMount(){
gksu "mount $ISO_PATH $MOUNTPOINT -t iso9660 -o loop,utf8" #gksu在图形界面下切换到超级用户。
checkMountPoint_Mounted
if [ "$ISMOUNTED" = "TRUE" ]
then
zenity --info --title="挂载成功" --text="文件$ISO_PATH已经被成功挂载到$MOUNTPOINT!\n\n程序将自动启动浏览器打开该目录!"
nautilus $MOUNTPOINT #启动浏览器浏览新挂载的卷
else
zenity --error --title="挂载失败" --text="在把文件$ISO_PATH挂载到$MOUNTPOINT时失败!"
fi
exit 0
}
################### 主程序 ####################
choosefunction
if [ "$CHOSED_FUNCTION" = "卸载旧卷" ]
then
getMountPoint
checkMountPoint_Exist
checkMountPoint_Directory
checkMountPoint_Mounted
if [ "$ISMOUNTED" = "TRUE" ]
then
doUMount
else
zenity --info --title="无须卸载" --text="指定目录并未曾挂载任何文件卷!"
exit 0
fi
else
getISOPath
getMountPoint
checkMountPoint_Exist
checkMountPoint_Directory
checkMountPoint_Mounted
if [ "$ISMOUNTED" = "TRUE" ]
then
doUMount
fi
doMount
fi
exit 0
然后在chmod +x mountiso
在shell里输入 ./mountiso
就可以了
这个是一个比较完整的挂载ISO文件的脚本程序
是交互式的 希望你能受用
#!/bin/bash
#################################################################################
# mountiso ISO文件挂载脚本
# 作者:xiaosilent
# Email:xiaosilent@gmail.com
# 版本:0.2
# 依赖:zenity
# 用法:====建议先把本脚本链接到 /usr/bin.并赋予755的权限========
# a.终端下: mountiso ***.iso
# b.X环境:在iso文件上右击,选择 "属性",切换到 "打开方式","添加",指定本脚本所在位置,确定。
# 最后,再在iso文件上右击,选择 "用 mountiso 打开" 即可。
##################################################################################
################### 定义变量 ##########################################
MOUNTPOINT="/media/iso" #挂载点
ISO_PATH=$1 #缺省的iso文件路径,从第一个参数里获取
CHOSED_FUNCTION="" #功能选择,挂载/卸载
ISMOUNTED="" #挂载点是否已经被占用
################### 一些功能模块 #######################################
###功能选择 挂载/卸载
function choosefunction(){
CHOSED_FUNCTION=`zenity --title="选择要执行的操作" --list --width=100 --radiolist --column="是否选中" --column="操作类型" TRUE "挂载新卷" FALSE "卸载旧卷"`
if [ "$?" -eq "1" ]
then
echo "没有选择,直接退出"
exit 0
fi
}
###获取ISO文件的路径
function getISOPath(){
if [ "$ISO_PATH" = "" ] #命令行参数为空
then
echo "请在弹出的对话框中选择要挂载的ISO文件" #命令行输出
ISO_PATH=`zenity --file-selection --title "选择要挂载的ISO文件" --filename="~"` #弹出文件选择对话框
if [ "$ISO_PATH" = "" ] #从文件对话框"取消",给出提示信息,程序退出。
then
zenity --error --title="错误信息" --text="您没有指定要挂载的ISO文件!"
exit 1
fi
if [ `file $ISO_PATH | grep "ROM" | wc -c` -eq "0" ]
then
zenity --error --title="错误信息" --text="您所选择的文件并不是一个ISO文件"
exit 1
fi
fi
}
###获取挂载点路径
function getMountPoint(){
echo "请在弹出的对话框中输入文件的挂载目录,默认是$MOUNTPOINT"
MOUNTPOINT=`zenity --file-selection --directory --title="请选择ISO文件挂载目录" --filename="$MOUNTPOINT"`
if [ "$MOUNTPOINT" = "" ] #选择了 "取消",给出提示信息,程序退出。
then
zenity --error --title="错误信息" --text="您没有指定挂载目录"
exit 1
fi
}
###检测挂载点是否存在
function checkMountPoint_Exist(){
if [ ! -e $MOUNTPOINT ] #监测挂载点是否存在
then #挂载点 不存在
zenity --error --title="错误信息" --text="挂载目录$MOUNTPOINT不存在"
exit 1
fi
}
###检测所指定的挂载点是否为目录
function checkMountPoint_Directory(){
if [ ! -d $MOUNTPOINT ] #如果挂载点不是一个目录
then
enity --error --title="错误信息" --text="挂载目录$MOUNTPOINT不是目录"
exit 1
fi
}
###检测指定的挂载点是否已经被使用
function checkMountPoint_Mounted(){
ISMOUNTED=`grep $MOUNTPOINT /etc/mtab | wc -c`
if [ "$ISMOUNTED" -gt "0" ]
then
ISMOUNTED="TRUE"
else
ISMOUNTED="FALSE"
fi
}
###执行 卸载 的操作
function doUMount(){
if [ "$ISMOUNTED" = "TRUE" ]
then
zenity --warning --title="是否选择卸载" --text="挂载目录$MOUNTPOINT已经被占用,必须要先进行卸载。\n\n在确认卸载以前,请确认该卸载操作是安全的!\n\n卸载操作需要root权限,是否确定要进行卸载?"
if [ $? -eq 1 ]
then
exit 0
else
gksu umount $MOUNTPOINT ##gksu在图形界面下切换到超级用户。
checkMountPoint_Mounted
if [ "$ISMOUNTED" = "TRUE" ]
then
zenity --error --title="卸载失败" --text="设备忙,或其他原因,卸载失败!"
exit 1
else
if [ "$CHOSED_FUNCTION" = "挂载新卷" ]
then
zenity --info --title="成功卸载" --text="原来的卷已经成功卸载,即将开始新卷的挂载操作!"
else
zenity --info --title="成功卸载" --text="原来的卷已经成功卸载!"
exit 0
fi
fi
fi
fi
}
###执行 挂载 的操作
function doMount(){
gksu "mount $ISO_PATH $MOUNTPOINT -t iso9660 -o loop,utf8" #gksu在图形界面下切换到超级用户。
checkMountPoint_Mounted
if [ "$ISMOUNTED" = "TRUE" ]
then
zenity --info --title="挂载成功" --text="文件$ISO_PATH已经被成功挂载到$MOUNTPOINT!\n\n程序将自动启动浏览器打开该目录!"
nautilus $MOUNTPOINT #启动浏览器浏览新挂载的卷
else
zenity --error --title="挂载失败" --text="在把文件$ISO_PATH挂载到$MOUNTPOINT时失败!"
fi
exit 0
}
################### 主程序 ####################
choosefunction
if [ "$CHOSED_FUNCTION" = "卸载旧卷" ]
then
getMountPoint
checkMountPoint_Exist
checkMountPoint_Directory
checkMountPoint_Mounted
if [ "$ISMOUNTED" = "TRUE" ]
then
doUMount
else
zenity --info --title="无须卸载" --text="指定目录并未曾挂载任何文件卷!"
exit 0
fi
else
getISOPath
getMountPoint
checkMountPoint_Exist
checkMountPoint_Directory
checkMountPoint_Mounted
if [ "$ISMOUNTED" = "TRUE" ]
then
doUMount
fi
doMount
fi
exit 0
#4
谢谢2楼的指点,现在已经可以挂载并更新了。
3楼的方法我没弄明白,初学还有很多东西不会。是在终端中切换到文件所在目录后输入chmod +x mountiso么?
我输入chmod +x mountiso还没什么问题,但是输入./mountiso后说没有文件。不知道怎么回事。
3楼的方法我没弄明白,初学还有很多东西不会。是在终端中切换到文件所在目录后输入chmod +x mountiso么?
我输入chmod +x mountiso还没什么问题,但是输入./mountiso后说没有文件。不知道怎么回事。
#5
上面是一个SHELL程序
如果说找不到文件的话
你看一下你的路径问题,你是不是把文件放在桌面了
而你的PWD是用户目录?
而不是Desktop ?
你要注意你的目录路径
如果说找不到文件的话
你看一下你的路径问题,你是不是把文件放在桌面了
而你的PWD是用户目录?
而不是Desktop ?
你要注意你的目录路径
#6
换了目录可以了,右键也有用mountiso打开的选项了,但是点了之后没有反应,还是要用终端下的命令才行。可能是我得系统有点诡异吧。其他的诡异情况也出现了不少,郁闷中。
#7
恩,呵呵,在复习一下了
呵呵,三楼的兄弟确实很有远见哟
直接搞一个命令了,相当好,usen68学习了
呵呵,三楼的兄弟确实很有远见哟
直接搞一个命令了,相当好,usen68学习了
#8
可以用虚拟光驱,
#9
留个印记先,呵呵
#10
一 般情况,足够矣
#11
一 般情况,足够矣
#12
留印~
#13
创建挂载点:
mkdir /mnt/iso
挂载iso文件镜像:
mount -o loop*.iso/mnt/iso
查看当前已挂载的分区:
df
查看iso镜像内容:
ls /mnt/iso
mkdir /mnt/iso
挂载iso文件镜像:
mount -o loop*.iso/mnt/iso
查看当前已挂载的分区:
df
查看iso镜像内容:
ls /mnt/iso
#14
三楼的达人!
#15
在linux下默认的ISO挂载点位于"/media"目录,下面是挂载一个ISO文件的方法:
sudo mkdir /media/cdimage #建立一个文件夹作为ISO挂载点
sudo mount -o loop myfile.iso /media/cdimage #挂载ISO文件,使用参数 -o loop
使用你想挂载的iso文件代替myfile.iso。
挂载一个镜像文件使之能被写入,使用下面的命令:
sudo mkdir /media/cdimage
sudo mount -o rw,loop myfile.iso /media/cdimage
卸载镜像文件:
sudo umount /media/cdimage
rmdir /media/cdimage
sudo mkdir /media/cdimage #建立一个文件夹作为ISO挂载点
sudo mount -o loop myfile.iso /media/cdimage #挂载ISO文件,使用参数 -o loop
使用你想挂载的iso文件代替myfile.iso。
挂载一个镜像文件使之能被写入,使用下面的命令:
sudo mkdir /media/cdimage
sudo mount -o rw,loop myfile.iso /media/cdimage
卸载镜像文件:
sudo umount /media/cdimage
rmdir /media/cdimage
#16
其实,Ubuntu,双击ISO就可以了。。。
#17
呃,见楼上
ps: man mount
ps: man mount
#18
还是这个正点~~~~~~~
#19
mount记住了!
#20
最好先建一个挂载点
如,sudo mkdir /media/iso.iso
#21
发表于:2007-11-27 21:00:52 ????
#22
留印~
#23
到Ubuntu软件中心里面安装ISO Mount这个软件就可以了/
#25
顶一楼,3楼真强
#26
还不结贴???
#27
楼上的很详细了,接分
#28
恩
#29
回复查看一下二楼,三楼的高招
#1
mount -o loop 你的ISO路径 /mnt
#2
mount -o loop /media/hda5/ubuntu.iso /cdrom这种可以直接加载到光驱,如果你连了网的,可以直接/etc/apt/sources.list 里的 deb cdrom那一项删掉,以后直接从网上下,还爽些,
不过只能能用命令行sudo gedit /etc/apt/sources.list 修改,反正就是前几行里,有cdrom的就删掉
不知道如何使用gedit的话用man gedit命令,有帮助
不过只能能用命令行sudo gedit /etc/apt/sources.list 修改,反正就是前几行里,有cdrom的就删掉
不知道如何使用gedit的话用man gedit命令,有帮助
#3
把下面的代码保存到一个文件当中 比如mountiso
然后在chmod +x mountiso
在shell里输入 ./mountiso
就可以了
这个是一个比较完整的挂载ISO文件的脚本程序
是交互式的 希望你能受用
#!/bin/bash
#################################################################################
# mountiso ISO文件挂载脚本
# 作者:xiaosilent
# Email:xiaosilent@gmail.com
# 版本:0.2
# 依赖:zenity
# 用法:====建议先把本脚本链接到 /usr/bin.并赋予755的权限========
# a.终端下: mountiso ***.iso
# b.X环境:在iso文件上右击,选择 "属性",切换到 "打开方式","添加",指定本脚本所在位置,确定。
# 最后,再在iso文件上右击,选择 "用 mountiso 打开" 即可。
##################################################################################
################### 定义变量 ##########################################
MOUNTPOINT="/media/iso" #挂载点
ISO_PATH=$1 #缺省的iso文件路径,从第一个参数里获取
CHOSED_FUNCTION="" #功能选择,挂载/卸载
ISMOUNTED="" #挂载点是否已经被占用
################### 一些功能模块 #######################################
###功能选择 挂载/卸载
function choosefunction(){
CHOSED_FUNCTION=`zenity --title="选择要执行的操作" --list --width=100 --radiolist --column="是否选中" --column="操作类型" TRUE "挂载新卷" FALSE "卸载旧卷"`
if [ "$?" -eq "1" ]
then
echo "没有选择,直接退出"
exit 0
fi
}
###获取ISO文件的路径
function getISOPath(){
if [ "$ISO_PATH" = "" ] #命令行参数为空
then
echo "请在弹出的对话框中选择要挂载的ISO文件" #命令行输出
ISO_PATH=`zenity --file-selection --title "选择要挂载的ISO文件" --filename="~"` #弹出文件选择对话框
if [ "$ISO_PATH" = "" ] #从文件对话框"取消",给出提示信息,程序退出。
then
zenity --error --title="错误信息" --text="您没有指定要挂载的ISO文件!"
exit 1
fi
if [ `file $ISO_PATH | grep "ROM" | wc -c` -eq "0" ]
then
zenity --error --title="错误信息" --text="您所选择的文件并不是一个ISO文件"
exit 1
fi
fi
}
###获取挂载点路径
function getMountPoint(){
echo "请在弹出的对话框中输入文件的挂载目录,默认是$MOUNTPOINT"
MOUNTPOINT=`zenity --file-selection --directory --title="请选择ISO文件挂载目录" --filename="$MOUNTPOINT"`
if [ "$MOUNTPOINT" = "" ] #选择了 "取消",给出提示信息,程序退出。
then
zenity --error --title="错误信息" --text="您没有指定挂载目录"
exit 1
fi
}
###检测挂载点是否存在
function checkMountPoint_Exist(){
if [ ! -e $MOUNTPOINT ] #监测挂载点是否存在
then #挂载点 不存在
zenity --error --title="错误信息" --text="挂载目录$MOUNTPOINT不存在"
exit 1
fi
}
###检测所指定的挂载点是否为目录
function checkMountPoint_Directory(){
if [ ! -d $MOUNTPOINT ] #如果挂载点不是一个目录
then
enity --error --title="错误信息" --text="挂载目录$MOUNTPOINT不是目录"
exit 1
fi
}
###检测指定的挂载点是否已经被使用
function checkMountPoint_Mounted(){
ISMOUNTED=`grep $MOUNTPOINT /etc/mtab | wc -c`
if [ "$ISMOUNTED" -gt "0" ]
then
ISMOUNTED="TRUE"
else
ISMOUNTED="FALSE"
fi
}
###执行 卸载 的操作
function doUMount(){
if [ "$ISMOUNTED" = "TRUE" ]
then
zenity --warning --title="是否选择卸载" --text="挂载目录$MOUNTPOINT已经被占用,必须要先进行卸载。\n\n在确认卸载以前,请确认该卸载操作是安全的!\n\n卸载操作需要root权限,是否确定要进行卸载?"
if [ $? -eq 1 ]
then
exit 0
else
gksu umount $MOUNTPOINT ##gksu在图形界面下切换到超级用户。
checkMountPoint_Mounted
if [ "$ISMOUNTED" = "TRUE" ]
then
zenity --error --title="卸载失败" --text="设备忙,或其他原因,卸载失败!"
exit 1
else
if [ "$CHOSED_FUNCTION" = "挂载新卷" ]
then
zenity --info --title="成功卸载" --text="原来的卷已经成功卸载,即将开始新卷的挂载操作!"
else
zenity --info --title="成功卸载" --text="原来的卷已经成功卸载!"
exit 0
fi
fi
fi
fi
}
###执行 挂载 的操作
function doMount(){
gksu "mount $ISO_PATH $MOUNTPOINT -t iso9660 -o loop,utf8" #gksu在图形界面下切换到超级用户。
checkMountPoint_Mounted
if [ "$ISMOUNTED" = "TRUE" ]
then
zenity --info --title="挂载成功" --text="文件$ISO_PATH已经被成功挂载到$MOUNTPOINT!\n\n程序将自动启动浏览器打开该目录!"
nautilus $MOUNTPOINT #启动浏览器浏览新挂载的卷
else
zenity --error --title="挂载失败" --text="在把文件$ISO_PATH挂载到$MOUNTPOINT时失败!"
fi
exit 0
}
################### 主程序 ####################
choosefunction
if [ "$CHOSED_FUNCTION" = "卸载旧卷" ]
then
getMountPoint
checkMountPoint_Exist
checkMountPoint_Directory
checkMountPoint_Mounted
if [ "$ISMOUNTED" = "TRUE" ]
then
doUMount
else
zenity --info --title="无须卸载" --text="指定目录并未曾挂载任何文件卷!"
exit 0
fi
else
getISOPath
getMountPoint
checkMountPoint_Exist
checkMountPoint_Directory
checkMountPoint_Mounted
if [ "$ISMOUNTED" = "TRUE" ]
then
doUMount
fi
doMount
fi
exit 0
然后在chmod +x mountiso
在shell里输入 ./mountiso
就可以了
这个是一个比较完整的挂载ISO文件的脚本程序
是交互式的 希望你能受用
#!/bin/bash
#################################################################################
# mountiso ISO文件挂载脚本
# 作者:xiaosilent
# Email:xiaosilent@gmail.com
# 版本:0.2
# 依赖:zenity
# 用法:====建议先把本脚本链接到 /usr/bin.并赋予755的权限========
# a.终端下: mountiso ***.iso
# b.X环境:在iso文件上右击,选择 "属性",切换到 "打开方式","添加",指定本脚本所在位置,确定。
# 最后,再在iso文件上右击,选择 "用 mountiso 打开" 即可。
##################################################################################
################### 定义变量 ##########################################
MOUNTPOINT="/media/iso" #挂载点
ISO_PATH=$1 #缺省的iso文件路径,从第一个参数里获取
CHOSED_FUNCTION="" #功能选择,挂载/卸载
ISMOUNTED="" #挂载点是否已经被占用
################### 一些功能模块 #######################################
###功能选择 挂载/卸载
function choosefunction(){
CHOSED_FUNCTION=`zenity --title="选择要执行的操作" --list --width=100 --radiolist --column="是否选中" --column="操作类型" TRUE "挂载新卷" FALSE "卸载旧卷"`
if [ "$?" -eq "1" ]
then
echo "没有选择,直接退出"
exit 0
fi
}
###获取ISO文件的路径
function getISOPath(){
if [ "$ISO_PATH" = "" ] #命令行参数为空
then
echo "请在弹出的对话框中选择要挂载的ISO文件" #命令行输出
ISO_PATH=`zenity --file-selection --title "选择要挂载的ISO文件" --filename="~"` #弹出文件选择对话框
if [ "$ISO_PATH" = "" ] #从文件对话框"取消",给出提示信息,程序退出。
then
zenity --error --title="错误信息" --text="您没有指定要挂载的ISO文件!"
exit 1
fi
if [ `file $ISO_PATH | grep "ROM" | wc -c` -eq "0" ]
then
zenity --error --title="错误信息" --text="您所选择的文件并不是一个ISO文件"
exit 1
fi
fi
}
###获取挂载点路径
function getMountPoint(){
echo "请在弹出的对话框中输入文件的挂载目录,默认是$MOUNTPOINT"
MOUNTPOINT=`zenity --file-selection --directory --title="请选择ISO文件挂载目录" --filename="$MOUNTPOINT"`
if [ "$MOUNTPOINT" = "" ] #选择了 "取消",给出提示信息,程序退出。
then
zenity --error --title="错误信息" --text="您没有指定挂载目录"
exit 1
fi
}
###检测挂载点是否存在
function checkMountPoint_Exist(){
if [ ! -e $MOUNTPOINT ] #监测挂载点是否存在
then #挂载点 不存在
zenity --error --title="错误信息" --text="挂载目录$MOUNTPOINT不存在"
exit 1
fi
}
###检测所指定的挂载点是否为目录
function checkMountPoint_Directory(){
if [ ! -d $MOUNTPOINT ] #如果挂载点不是一个目录
then
enity --error --title="错误信息" --text="挂载目录$MOUNTPOINT不是目录"
exit 1
fi
}
###检测指定的挂载点是否已经被使用
function checkMountPoint_Mounted(){
ISMOUNTED=`grep $MOUNTPOINT /etc/mtab | wc -c`
if [ "$ISMOUNTED" -gt "0" ]
then
ISMOUNTED="TRUE"
else
ISMOUNTED="FALSE"
fi
}
###执行 卸载 的操作
function doUMount(){
if [ "$ISMOUNTED" = "TRUE" ]
then
zenity --warning --title="是否选择卸载" --text="挂载目录$MOUNTPOINT已经被占用,必须要先进行卸载。\n\n在确认卸载以前,请确认该卸载操作是安全的!\n\n卸载操作需要root权限,是否确定要进行卸载?"
if [ $? -eq 1 ]
then
exit 0
else
gksu umount $MOUNTPOINT ##gksu在图形界面下切换到超级用户。
checkMountPoint_Mounted
if [ "$ISMOUNTED" = "TRUE" ]
then
zenity --error --title="卸载失败" --text="设备忙,或其他原因,卸载失败!"
exit 1
else
if [ "$CHOSED_FUNCTION" = "挂载新卷" ]
then
zenity --info --title="成功卸载" --text="原来的卷已经成功卸载,即将开始新卷的挂载操作!"
else
zenity --info --title="成功卸载" --text="原来的卷已经成功卸载!"
exit 0
fi
fi
fi
fi
}
###执行 挂载 的操作
function doMount(){
gksu "mount $ISO_PATH $MOUNTPOINT -t iso9660 -o loop,utf8" #gksu在图形界面下切换到超级用户。
checkMountPoint_Mounted
if [ "$ISMOUNTED" = "TRUE" ]
then
zenity --info --title="挂载成功" --text="文件$ISO_PATH已经被成功挂载到$MOUNTPOINT!\n\n程序将自动启动浏览器打开该目录!"
nautilus $MOUNTPOINT #启动浏览器浏览新挂载的卷
else
zenity --error --title="挂载失败" --text="在把文件$ISO_PATH挂载到$MOUNTPOINT时失败!"
fi
exit 0
}
################### 主程序 ####################
choosefunction
if [ "$CHOSED_FUNCTION" = "卸载旧卷" ]
then
getMountPoint
checkMountPoint_Exist
checkMountPoint_Directory
checkMountPoint_Mounted
if [ "$ISMOUNTED" = "TRUE" ]
then
doUMount
else
zenity --info --title="无须卸载" --text="指定目录并未曾挂载任何文件卷!"
exit 0
fi
else
getISOPath
getMountPoint
checkMountPoint_Exist
checkMountPoint_Directory
checkMountPoint_Mounted
if [ "$ISMOUNTED" = "TRUE" ]
then
doUMount
fi
doMount
fi
exit 0
#4
谢谢2楼的指点,现在已经可以挂载并更新了。
3楼的方法我没弄明白,初学还有很多东西不会。是在终端中切换到文件所在目录后输入chmod +x mountiso么?
我输入chmod +x mountiso还没什么问题,但是输入./mountiso后说没有文件。不知道怎么回事。
3楼的方法我没弄明白,初学还有很多东西不会。是在终端中切换到文件所在目录后输入chmod +x mountiso么?
我输入chmod +x mountiso还没什么问题,但是输入./mountiso后说没有文件。不知道怎么回事。
#5
上面是一个SHELL程序
如果说找不到文件的话
你看一下你的路径问题,你是不是把文件放在桌面了
而你的PWD是用户目录?
而不是Desktop ?
你要注意你的目录路径
如果说找不到文件的话
你看一下你的路径问题,你是不是把文件放在桌面了
而你的PWD是用户目录?
而不是Desktop ?
你要注意你的目录路径
#6
换了目录可以了,右键也有用mountiso打开的选项了,但是点了之后没有反应,还是要用终端下的命令才行。可能是我得系统有点诡异吧。其他的诡异情况也出现了不少,郁闷中。
#7
恩,呵呵,在复习一下了
呵呵,三楼的兄弟确实很有远见哟
直接搞一个命令了,相当好,usen68学习了
呵呵,三楼的兄弟确实很有远见哟
直接搞一个命令了,相当好,usen68学习了
#8
可以用虚拟光驱,
#9
留个印记先,呵呵
#10
一 般情况,足够矣
#11
一 般情况,足够矣
#12
留印~
#13
创建挂载点:
mkdir /mnt/iso
挂载iso文件镜像:
mount -o loop*.iso/mnt/iso
查看当前已挂载的分区:
df
查看iso镜像内容:
ls /mnt/iso
mkdir /mnt/iso
挂载iso文件镜像:
mount -o loop*.iso/mnt/iso
查看当前已挂载的分区:
df
查看iso镜像内容:
ls /mnt/iso
#14
三楼的达人!
#15
在linux下默认的ISO挂载点位于"/media"目录,下面是挂载一个ISO文件的方法:
sudo mkdir /media/cdimage #建立一个文件夹作为ISO挂载点
sudo mount -o loop myfile.iso /media/cdimage #挂载ISO文件,使用参数 -o loop
使用你想挂载的iso文件代替myfile.iso。
挂载一个镜像文件使之能被写入,使用下面的命令:
sudo mkdir /media/cdimage
sudo mount -o rw,loop myfile.iso /media/cdimage
卸载镜像文件:
sudo umount /media/cdimage
rmdir /media/cdimage
sudo mkdir /media/cdimage #建立一个文件夹作为ISO挂载点
sudo mount -o loop myfile.iso /media/cdimage #挂载ISO文件,使用参数 -o loop
使用你想挂载的iso文件代替myfile.iso。
挂载一个镜像文件使之能被写入,使用下面的命令:
sudo mkdir /media/cdimage
sudo mount -o rw,loop myfile.iso /media/cdimage
卸载镜像文件:
sudo umount /media/cdimage
rmdir /media/cdimage
#16
其实,Ubuntu,双击ISO就可以了。。。
#17
呃,见楼上
ps: man mount
ps: man mount
#18
还是这个正点~~~~~~~
#19
mount记住了!
#20
最好先建一个挂载点
如,sudo mkdir /media/iso.iso
#21
发表于:2007-11-27 21:00:52 ????
#22
留印~
#23
到Ubuntu软件中心里面安装ISO Mount这个软件就可以了/
#24
#25
顶一楼,3楼真强
#26
还不结贴???
#27
楼上的很详细了,接分
#28
恩
#29
回复查看一下二楼,三楼的高招