LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2090|回复: 12

哪位同志钻研过/etc/rcS.d/下的文件?

[复制链接]
发表于 2006-7-27 15:50:41 | 显示全部楼层 |阅读模式
作为了解LinuX结构的一个学习过程。

我把rcS.d下的东西全backup了,然后从中抽出重要的过程,写成一个文件放在rcS.d/下:
1挂Pseudo文件系统
2处理dev和udevd
3挂文件系统,等等………………

但是现在这个脚本有问题,不知道哪位哥们儿能提示提示呢?
 楼主| 发表于 2006-7-27 16:21:49 | 显示全部楼层

哪位同志钻研过/etc/rcS.d/下的文件?

作为了解LinuX结构的一个学习过程。

我把rcS.d下的东西全backup了,然后从中抽出重要的过程,写成一个文件放在rcS.d/下:
1挂Pseudo文件系统
2处理dev和udevd
3挂文件系统,等等………………

但是现在这个脚本有问题,不知道哪位哥们儿能提示提示呢?
回复 支持 反对

使用道具 举报

发表于 2006-7-27 16:53:24 | 显示全部楼层
有人知道他想说啥么
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-27 17:00:08 | 显示全部楼层
OK,我再说清楚些,x11朋友,请您注意下您的语气好吗?


我现在想弄清楚LinuX引导的整个过程,并加以定制。那么现在的阶段是研究sysvinit的初始脚本。
我大概得看了一下/etc/rcS.d/下那些首先被执行的脚本,然后我自己抽取出其中重要的代码,写了一个脚本,替换掉原来的。

但是现在我写的有问题,我想知道,有没有同志研究过这方面内容。
回复 支持 反对

使用道具 举报

发表于 2006-7-27 17:07:06 | 显示全部楼层
有什么问题呢?

可以看看这篇文章

http://www.linuxfromscratch.org/ ... /files/bsd-init.txt
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-27 17:12:56 | 显示全部楼层
我把/etc/rcS.d/下的东西都删除了,换成了一个文件/etc/rcS.d/S01all

case "$1" in
        start)
        /bin/mount -n -t proc proc /proc
        /bin/mount -n -t sysfs sysfs /sys
        /bin/mount -n -t tmpfs -o mode=0755 tmpfs /var/run
        /bin/mount -n -t tmpfs -o mode=1777 tmpfs /var/lock
        /bin/mount -n -t usbfs usbfs /proc/bus/usb

        /bin/loadkeys /etc/console/boottime.kmap.gz
        /bin/echo "keymay init done here"

        #/bin/mkdir /dev/pts
        #/bin/mkdir /dev/shm
        /bin/mount -n -t devpts -ogid=5,mode=620 devpts /dev/pts
        /bin/mount -n -t tmpfs tmpfs /dev/shm
        echo "seudo filesystem done here"

        #/bin/mount -n --bind /dev /etc/udev
echo "testing Mark:A"
        /bin/mount -n -t tmpfs -o mode=0755 udev /dev
echo "testing Mark:B"
        /bin/mkdir -m 0700 -p /dev/.static/dev
echo "testing Mark:B"
        /bin/mount -n --move /etc/udev /dev/.static/dev
echo "testing Mark"
        /bin/cp -a -f /lib/udev/devices/* /dev
echo "testing Mark:E"
        /sbin/start-stop-daemon --start --exec /sbin/udevd -- --deamon
echo "testing Mark:F"

        /sbin/swapon -a

        /sbin/ifup -a

        /usr/bin/touch /var/run/utmp
        /bin/chmod 644 /var/run/utmp
        /bin/chgrp utmp /var/run/utmp

        /sbin/sysctl -p
        echo "end??"
        ;;
esac

结果挂起
keymay init done here
Pseudo filesystem done here
最后屏幕上的两句如上。

不知道我哪儿做错了。谢谢!!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-27 17:14:37 | 显示全部楼层
忘了说了,原系统是ubuntu 6.06,启动脚本和debian基本相思,有细微差别。
内核我自己编译的。在正常脚本下工作正常。
回复 支持 反对

使用道具 举报

发表于 2006-7-27 20:14:21 | 显示全部楼层
脚本一开始加入 set -x。再重启运行。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-28 08:21:34 | 显示全部楼层
非常感谢你们的回复。

可是还是不行……
请教set -x 有什么用?系统自带的脚本好像没有。
回复 支持 反对

使用道具 举报

发表于 2006-7-28 08:26:41 | 显示全部楼层
set -x 是让你看到 都运行了什么,方便你调试。。。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表