Chinaunix首页 | 论坛 | 博客
  • 博客访问: 567248
  • 博文数量: 826
  • 博客积分: 10000
  • 博客等级: 上将
  • 技术积分: 5015
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-22 18:09
文章分类

全部博文(826)

文章存档

2011年(1)

2008年(825)

我的朋友

分类: LINUX

2008-08-22 18:19:29

 
近来一直在学习LFS,反复弄了好几次,终于基本熟悉了LFS的流程,本想继续BLFS,奈何电脑配置太差,暂时对GNOME和KDE之类的编译时间有所恐惧,无意间发现LFS-liveCD做的挺不错的,对于像我这样平时用LINUX学习点程序的人很适合,自带的XFACE能基本满足一般的桌面应用,中文支持也相当不错,于是想直接把liveCD装到硬盘上玩,经过一番折腾,基本成功。

我使用的版本为:LFS-LiveCD6.2.3
1,用Live-CD启动,分区之类就不说了,这里我要安装到的位置是/dev/hda5

2,mkdir/mnt/{lfs,livecd}
mount/dev/hda5/mnt/lfs
mount/dev/mapper/lfs-cd/mnt/live
将/mnt/live下的除/tmp,/proc,/boot之外的所有文件复制到/mnt/lfs(如果不要源码可以不复制lfs-sources)
用mkdir手动在/mnt/lfs下建立/tmp,/proc,/boot。并修改/tmp的权限:chmoda w/tmp

3,删除原内核,解压内核到其/usr/src目录下:
rm-rf/mnt/hda5/usr/src/*
tarxvflfs-sources/linux-2.6.16.27.tar.bz2
cd/mnt/hda5/usr/src/linux-2.6.16.27
patch-Np1-i/lfs-sources/linux-2.6.16.27-utf8_input-1.patch

4,配置内核(makemenuconfig),将Ext2,Ext3选择为编译到内核中,其它根据自己硬件可以把无关的硬件模块去掉,
(参考帖中说,编译内核的时候使用chroot切换了环境,我发现不切换也没多大问题)

5,复制内核到boot:将编译得到的内核复制到/mnt/hda5/boot下,在以前系统的GRUB启动项中加入相关语句(根据自己硬盘情况修改):
titlelfs-livecd6.1
root(hd0,4)
kernel/boot/linuxroot=/dev/hda5rwvga=791

6,修改/mnt/hda5/etc/fstab文件。

好了,如果不出意外的话应该可以进入硬盘上的“liveCD”了,但是这样得到的系统在每次启动时都会让你选择时区语言之类,在关机或重启的时候有些错误发生,需要修改启动脚本,下面的工作在这个系统中完成:

7,用passwd修改root密码

8,修改/etc/inittab(下面是原始的文件,括号中给出修改方法):

#Begin/etc/inittab

id:3:initdefault:

si::sysinit:/etc/rc.d/init.d/rcsysinit

l0:0:wait:/etc/rc.d/init.d/rc0
l1:S1:wait:/etc/rc.d/init.d/rc1
l2:2:wait:/etc/rc.d/init.d/rc2
l3:3:wait:/etc/rc.d/init.d/rc3
l4:4:wait:/etc/rc.d/init.d/rc4
l5:5:wait:/etc/rc.d/init.d/rc5
l6:6:wait:/etc/rc.d/init.d/rc6

ca:12345:ctrlaltdel:/sbin/shutdown-t1-a-rnow

su:S1:once:/sbin/sulogin
sd:06:once:/usr/bin/shutdown-helper(将这一行注释掉,这里就是重启或关机发生错误的原因)


1:2345:respawn:/bin/openvt-f-c3-e-w--/usr/bin/livecd-login
2:2345:respawn:/bin/openvt-f-c3-e-w--/usr/bin/livecd-login
3:2345:respawn:/bin/openvt-f-c3-e-w--/usr/bin/livecd-login
4:2345:respawn:/bin/openvt-f-c4-e-w--/usr/bin/livecd-login
5:2345:respawn:/bin/openvt-f-c5-e-w--/usr/bin/livecd-login
6:2345:respawn:/bin/openvt-f-c6-e-w--/usr/bin/livecd-login

(将这些内容修改成
1:2345:respawn:/sbin/agettytty19600
2:2345:respawn:/sbin/agettytty29600
3:2345:respawn:/sbin/agettytty39600
4:2345:respawn:/sbin/agettytty49600
5:2345:respawn:/sbin/agettytty59600
6:2345:respawn:/sbin/agettytty69600
注意tty后面数字的对应,这样改了之后登录的时候就需要密码了)

#End/etc/inittab


9,删除/etc/rc.d/rcsysinit.d/下的S59clkconf,S69langconf,这样在启动时就不会让你选择时区语言了

10,在/etc/rc.d/init.d/下添加两个脚本如下:
(1)halt
#!/bin/sh
#####################################
#Bigin$rc_base/init.d/halt
#
#####################################
./etc/sysconfig/rc
.{rc_functions}

case"${1}"in
stop)
halt-d-f-i-p
;;
*)
echo"Usage:{stop}"
exit1
;;
esac


#End$rc_base/init.d/halt


(2)reboot
#!/bin/sh
###########################################
#Begin$src_base/init.d/reboot
#
###########################################

./etc/sysconfig/rc
.${rc_functions}

case"${1}"in
stop)
boot_mesg"Restartingsystem..."
reboot-d-f-i
;;
*)
echo"Usage:${0}{stop}"
exit1
;;

esac

#End$rc_base/init.d/reboot

然后修改这两个脚本的权限为754

11.在/etc/rc.d/rc0.d/下创建链接S99halt:
ln-sv/etc/rc.d/init.d/halt/etc/rc.d/rc0.d/S99halt
在/etc/rc.d/rc6.d/下创建链接S99reboot:
ln-sv/etc/rc.d/init.d/halt/etc/rc.d/rc6.d/S99reboot

12,基本完成了!呵呵。

阅读(2040) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~