LinuxSir.cn,穿越时空的Linuxsir!

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

将Gentoo 的 install-x86-minimal系统复制到硬盘的问题

[复制链接]
发表于 2007-5-20 18:27:11 | 显示全部楼层 |阅读模式
按照:
http://www.shunz.net/2006/07/how_to_install_livecd_into_hdd.html
所说步骤,将install-x86-minimal CD复制到硬盘后不能用密码方式登录。出现以下信息

livecd login:root
Password:

Module is unknown

livecd login:

重新登录仍然如此。可能是pam的问题,望高手给解决一下。
复制的目的是得到一个稳定、精巧的系统做路由器。
发表于 2007-5-20 18:44:49 | 显示全部楼层
gentoo不是这样装的。
回复 支持 反对

使用道具 举报

发表于 2007-5-20 23:15:26 | 显示全部楼层
注意,那个帖子说的是LiveCD,本具有一套完整的系统,整个光盘有几百兆大小,是可以复制到硬盘使用的。

你用的是install-x86-minimal CD,一共只有几十兆大小,只有最基本的启动内核,它只适合于由网络的情况下从头开始安装。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-21 08:04:03 | 显示全部楼层
问题已经解决。
果然是PAM的问题,将LiveCD安装盘lib下的security文件复制到硬盘,可以登录。
然后将LiveCD安装盘中的内核复制到硬盘,替换那个内核,得到一个150M左右的小系统。

应该是一个很全面,稳定的系统。

总结:将LiveCD和install-x86-minimal CD结合起来。
继续:lib和usr/lib占有很大一部分空间。继续筛选,最终控制在100M以内,启动脚本,像声卡之类的就不需要了,继续优化。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-21 08:31:20 | 显示全部楼层
Post by zhou3345
gentoo不是这样装的。


刚按照说明书安了一下,解开 stage后有410M,再加上内核之类的应该超过500M,不太符合做路由器的要求。
回复 支持 反对

使用道具 举报

发表于 2007-5-21 08:37:55 | 显示全部楼层
Post by 飞龙在天
问题已经解决。
果然是PAM的问题,将LiveCD安装盘lib下的security文件复制到硬盘,可以登录。
然后将LiveCD安装盘中的内核复制到硬盘,替换那个内核,得到一个150M左右的小系统。

应该是一个很全面,稳定的系统。

总结:将LiveCD和install-x86-minimal CD结合起来。
继续:lib和usr/lib占有很大一部分空间。继续筛选,最终控制在100M以内,启动脚本,像声卡之类的就不需要了,继续优化。

楼主能否将经验写成wiki与大家工享之。BTW:以前我记得zhllg也说过2007有个特性是:可以在15分钟内build一个系统。难道就是楼主所说的cp******??
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-21 15:37:24 | 显示全部楼层
步骤:
1、用install-x86-minimal CD启动。
2、分区:hda1  ext3   hda2 swap
3、挂载分区:
mount /dev/hda1 /mnt/gentoo
4、开始复制install-x86-minimal上的系统:
cp -af /mnt/livecd/* /mnt/gentoo/
5、复制光盘系统中的内核:(如果你想用LiveCD上的内核跳过次步)
cp /mnt/cdrom/isolinux/gentoo /mnt/gentoo/boot
cp /mnt/cdrom/isolinux/gentoo.igz /mnt/gentoo/boot

6、卸载分区,重新启动
cd /
umount /dev/hda1
reboot
7、用LiveCD启动,以gentoo nox方式启动。
8、挂载分区:
mount /dev/hda1 /mnt/gentoo
9、复制PAM库
rm -rf /mnt/gentoo/lib/security
cp -af /mnt/livecd/lib/security /mnt/gentoo/lib
10、修改/mnt/gentoo/etc/fstab,内容如下:

/dev/hda1 / ext3 noatime 0 1
/dev/hda2 none swap sw 0 0
proc /proc proc defaults 0 0
shm /dev/shm tmpfs nodev,nosuid,noexec,size=128m 0 0

11、复制LiveCD的inittab到硬盘,(LiveCD的inittab有不用登录用户直接进入的命令)
cp /mnt/livecd/etc/inittab /mnt/gentoo/etc
12、修改inittab
将TERMINALS项下的c1到c5的注释号#去掉
c1:12345:respawn:/sbin/agetty  384000 tty1 linux
……
将最后6行留下最后一行,去掉其余5行。
如下内容:
c6:12345:respawn:/sbin/agetty -nl /bin/bashlogin 384000 tty6 linux
这样的效果是1-5控制台需要登录,第6控制台不需要登录直接进入。等没问题了,再修改。

13、建立/mnt/gentoo/boot/grub/grub.conf,内容如下:
timeout 10
default 0
fallback 1

title Gentoo Linux minimal CD
root (hd0,5)
kernel /boot/gentoo root=/dev/ram0 real_root=/dev/hda1 ramdisk_size=8192 vga=791
initrd /boot/gentoo.igz

14、安装grub(LiveCD有grub命令,install-x86-minimal没有grub命令)
cd /mnt/gentoo/boot/grub
cp /mnt/livecd/boot/grub/stage1 ./
cp /mnt/livecd/boot/grub/stage2 ./
cp /mnt/livecd/boot/grub/e2fs_stage1_5 ./

grub
root (hd0,0)
setup (hd0)
quit

15、重启(如果采用LiveCD中的内核见附录)
cd /
umount /dev/hda1
reboot

附录:使用LiveCD中的内核(体积增大,速度、兼容性增强)
cp /mnt/livecd/boot/kernel-genkernel-x86-2.6.19-gentoo-r5 /mnt/gentoo/boot/gentoo
cp /mnt/livecd/boot/initramfs-genkernel-x86-2.6.19-gentoo-r5 /mnt/gentoo/boot/gentoo.igz
cp /mnt/livecd/boot/System.map-genkernel-x86-2.6.19-gentoo-r5 /mnt/gentoo/boot/System.map
rm -rf /mnt/gentoo/lib/modules
cp -af /mnt/livecd/lib/modules /mnt/gentoo/lib
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-21 17:18:04 | 显示全部楼层
因为我两张盘都刻了,所以换来换去
如果你只有LiveCD,可以下载install-x86-minimal CD ISO文件,
挂在某个目录上进行拷贝。步骤能少一些
今晚给弄出步骤来。
回复 支持 反对

使用道具 举报

发表于 2007-5-21 18:24:01 | 显示全部楼层
这样装,有啥好处?那如果从stage1上来是不是会更好呢?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-22 07:36:15 | 显示全部楼层
stage1安装到100M左右,因为我没用过stage1所以不清楚。今天就看一下,有好的教程,麻烦介绍一下。

个人认为:一个好的Linux发行系统有两个方面
1、稳定、快速、支持全面的内核
2、完善、周到、结构清晰的脚本
gentoo两者都具备。
应用软件方面要看应用环境,像软路由器只要有iproute2应该就可以了。
回复 支持 反对

使用道具 举报

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

本版积分规则

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