狂客 发表于 2003-5-16 03:26:40

实现 Mandrake 开机时自动挂载 ISO 文件!

Mandrake 下,通过 rpmdrake 安装光盘自带的 rpm 包是很容易的。输入你想安装的软件名,rpmdrake 会告诉有多少个符合查询的安装包,你选择好以后,又会自动弹出光驱,提示你放入相应的安装源盘。
    但是有时侯,只是装几个数百 k 的 rpm 包,却要轮流更换光盘。次数多了,也觉得有点麻烦。
    我想到了当初下载了 Mandrake 的三个 ISO 安装文件,还保存在我的硬盘里,那么能不能利用这个三个 ISO 文件来替代三张光盘呢?在几位网友的提示下,狂某通过摸索,成功实现了开机自动挂载 Mandrake 的 ISO 源文件,进一步简化了安装 Mandrake 自带软件包的步骤。
    以下是方法。首先请确认你有 root 权限。

1.在 /mnt 下分别建立 iso1、iso2、iso3 文件夹
mkdir /mnt/iso1
mkdir /mnt/iso2
mkdir /mnt/iso3

2.进入 /etc/rc.d/init.d 下,建立 mountiso 文件
cd /etc/rc.d/init.d
vi mountiso

mountiso 的内容如下(我的 ISO 文件存放路径是 /mnt/win_g/Linux_software/Mandrake9.1/,ISO 文件名是Mandrake91-cdx.iso):
#!/bin/sh
#This is a shell script automount the Mandrake Install ISO files.
mount -o loop /mnt/win_g/Linux_software/Mandrake9.1/Mandrake91-cd1.iso /mnt/iso1
mount -o loop /mnt/win_g/Linux_software/Mandrake9.1/Mandrake91-cd2.iso /mnt/iso2
mount -o loop /mnt/win_g/Linux_software/Mandrake9.1/Mandrake91-cd3.iso /mnt/iso3

3.保存并退出,把 mountiso 改为可执行文件
chmod 755 mountiso

4.进入 /etc/rc.d/rc5.d,建立一个链接
cd /etc/rc.d/rc5.d
ln -s ../init.d/mountiso S96mountiso

同样在 /etc/rc.d/rc3.d 目录下也建立同样的链接(一般自需要在这两个目录下建立链接就行了)。顺便解释一下 S96mountiso 的意思,以 S 开头表明是开机时会执行的文件,96 是执行的优先顺序,mountiso 表明指向的文件名。

5.重新启动,进入 /mnt/iso1 看看,ISO 文件里的内容显示出来了吗?

6.打开 Mandrake 控制中心,点击“软件管理”,选择“软件源管理器”。先去掉原来的三个光盘文件源前面的勾,然后添加三个新的文件源。名称你自己定义,路径就分别指向步骤1里建立起来的三个文件夹。保存并退出!大功告成!!!


    这是我第一次写原创帖子,如有错误的地方,请大家指出!如果你有更好的方法,也请一定要告诉我!呵呵~~~

狂客 发表于 2003-5-16 11:07:11

呵呵,加为精华了,真受鼓舞!
自己顶顶!
有尝试的朋友,不管成功与否,告诉我一声吧。

llc 发表于 2003-5-16 19:37:43

mount -o loop /mnt/win_g/Linux_software/Mandrake9.1/Mandrake91-cd1.iso /mnt/iso1
mount -o loop /mnt/win_g/Linux_software/Mandrake9.1/Mandrake91-cd2.iso /mnt/iso2
mount -o loop /mnt/win_g/Linux_software/Mandrake9.1/Mandrake91-cd3.iso /mnt/iso3

这些加入/etc/rc.local也行吧
估计加入/etc/fstab也行

狂客 发表于 2003-5-18 00:06:07

这倒是没有试过。
因为我没有看到fstab有这样的写法。

pk 发表于 2003-6-11 16:52:35

这些不能加入到fstab的,不过,没有必要在启动就加载iso,其实写成一个脚本就可了。
#!/bin/sh
mount -t iso9660 -o loop /mnt/win_g/Linux_software/Mandrake9.1/ \
Mandrake91-cd1.iso /mnt/iso1
mount -t iso9660 -o loop /mnt/win_g/Linux_software/Mandrake9.1/ \
Mandrake91-cd2.iso /mnt/iso2
mount -t iso9660 -o loop /mnt/win_g/Linux_software/Mandrake9.1/ \
Mandrake91-cd3.iso /mnt/iso3

然后保存为一个文件,比如叫mdkiso
然后:
#chmod +x mkdiso
#./mdkiso

要用的时候直接运行那个脚本就可了。

leenchunhuii 发表于 2004-5-14 19:57:47

很菜很菜的问题,怎么运行脚本啊?..............

:oops:

狂客 发表于 2005-10-10 11:32:49

Re: 很菜很菜的问题,怎么运行脚本啊?..............

:oops:首先脚本要有可执行权限, 其次要确认你的帐号有执行该脚本的权限, 最后就是使用 sh 加脚本文件名.

比如 mountiso 这个脚本, 用 sh mountiso 或 ./mountiso 命令就可以运行.

niverse 发表于 2006-1-24 17:58:34

看到你的帖是幸运的!

我一直在想如何实现自动关机。原来如此。我回去试试看!!
    以前我都是用手工输入:shutdown -h 44
:lol:

niverse 发表于 2006-1-25 15:21:26

搞来搞去。累死我了。原来是rc2.d才可以。而且不可以直接shutdown!!
#!/bin/sh

PATH=/sbin:/usr/sbin:/bin:/usr/bin
export PATH


#Thins is a shell script auto shutdown the power.

sleep 20 && shutdown -h 44
~
~

狂客 发表于 2006-1-25 15:42:40

我一直用 poweroff 命令.
页: [1]
查看完整版本: 实现 Mandrake 开机时自动挂载 ISO 文件!