ubuntu 8.04.1 精简版 (2008.08.26更新)
- ptptptptptpt
- 帖子: 3711
- 注册时间: 2006-09-19 18:16
- yaska
- 帖子: 1169
- 注册时间: 2007-10-28 21:35
- ptptptptptpt
- 帖子: 3711
- 注册时间: 2006-09-19 18:16
- yaska
- 帖子: 1169
- 注册时间: 2007-10-28 21:35
老兄,我找到原因了。
官方的filesystem.squahsfs 放到ntfs分区上,能正常关机,的确是因为关机时跳过了/sbin/mount.ntfs,和initrd没有关系的。
$ cat /etc/init.d/sendsigs
for pid in $(cat /var/run/sendsigs.omit); do
OMITPIDS="${OMITPIDS:+$OMITPIDS }-o $pid"
done
sengsigs会跳过 /var/run/sendsigs.omi里的进程。 你看一下这个文件的内容就知道了。
官方的filesystem.squahsfs 放到ntfs分区上,能正常关机,的确是因为关机时跳过了/sbin/mount.ntfs,和initrd没有关系的。
$ cat /etc/init.d/sendsigs
for pid in $(cat /var/run/sendsigs.omit); do
OMITPIDS="${OMITPIDS:+$OMITPIDS }-o $pid"
done
sengsigs会跳过 /var/run/sendsigs.omi里的进程。 你看一下这个文件的内容就知道了。
代码: 全选
ubuntu@ubuntu:/var/run$ cat /var/run/sendsigs.omit
3080
ubuntu@ubuntu:/var/run$ ps ax |grep 3080
3080 ? Ss 0:01 /sbin/mount.ntfs /dev/sdb1 /cdrom -o ro,noatime
9674 pts/0 R+ 0:00 grep 3080
- leeaman
- 帖子: 30702
- 注册时间: 2007-02-02 18:14
- 系统: debian sid
- ptptptptptpt
- 帖子: 3711
- 注册时间: 2006-09-19 18:16
yaska 写了:老兄,我找到原因了。
官方的filesystem.squahsfs 放到ntfs分区上,能正常关机,的确是因为关机时跳过了/sbin/mount.ntfs,和initrd没有关系的。
$ cat /etc/init.d/sendsigs
for pid in $(cat /var/run/sendsigs.omit); do
OMITPIDS="${OMITPIDS:+$OMITPIDS }-o $pid"
done
sengsigs会跳过 /var/run/sendsigs.omi里的进程。 你看一下这个文件的内容就知道了。
代码: 全选
ubuntu@ubuntu:/var/run$ cat /var/run/sendsigs.omit 3080 ubuntu@ubuntu:/var/run$ ps ax |grep 3080 3080 ? Ss 0:01 /sbin/mount.ntfs /dev/sdb1 /cdrom -o ro,noatime 9674 pts/0 R+ 0:00 grep 3080
一定是 inuitrd 的问题
同一个 filesystem.squahsfs (我自己做的那个),用官方光盘里的 initrd.gz 引导,
ubuntu@ubuntu:~$ cat /var/run/sendsigs.omit
2506
ubuntu@ubuntu:~$ ps ax |grep 2506
2506 ? Ss 0:00 /sbin/mount.ntfs /dev/sda3 /cdrom -o ro,noatime
8186 pts/0 R+ 0:00 grep 2506
ubuntu@ubuntu:~$
用 /boot/initrd.img*** 引导,
ubuntu@ubuntu:/var/run$ cat /var/run/sendsigs.omit
cat: /var/run/sendsigs.omit: 没有该文件或目录
我再引导官方的 filesystem.squahsfs 试试
- ptptptptptpt
- 帖子: 3711
- 注册时间: 2006-09-19 18:16
- yaska
- 帖子: 1169
- 注册时间: 2007-10-28 21:35
- ptptptptptpt
- 帖子: 3711
- 注册时间: 2006-09-19 18:16
- yaska
- 帖子: 1169
- 注册时间: 2007-10-28 21:35
- ptptptptptpt
- 帖子: 3711
- 注册时间: 2006-09-19 18:16
- ptptptptptpt
- 帖子: 3711
- 注册时间: 2006-09-19 18:16
- leeaman
- 帖子: 30702
- 注册时间: 2007-02-02 18:14
- 系统: debian sid
- ptptptptptpt
- 帖子: 3711
- 注册时间: 2006-09-19 18:16
- yaska
- 帖子: 1169
- 注册时间: 2007-10-28 21:35
leeaman,启动加个break=mount
启动到控制台后:
看看是不是这里出错。
ps:
我看了initrd,的确有这么一句:
scripts/local-bottom/ntfs_3g:pidof mount.ntfs >> /dev/.initramfs/varrun/sendsigs.omit
还有/boot/initrd.img**比/casper/initrd.gz少了 squashfs,unionfs这些模块,scripts目录下还少了casper casper-functions
等脚本,这些都是用于livecd的。
我估计/boot/initrd.img**是安装到硬盘之后,用update-initramfs生成的。
启动到控制台后:
代码: 全选
. /scripts/casper
mountroot
ps:
我看了initrd,的确有这么一句:
scripts/local-bottom/ntfs_3g:pidof mount.ntfs >> /dev/.initramfs/varrun/sendsigs.omit
还有/boot/initrd.img**比/casper/initrd.gz少了 squashfs,unionfs这些模块,scripts目录下还少了casper casper-functions
等脚本,这些都是用于livecd的。
我估计/boot/initrd.img**是安装到硬盘之后,用update-initramfs生成的。