zoukankan      html  css  js  c++  java
  • 将LFSliveCD安装到硬盘的注意事项

    近来一直在学习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的权限: chmod a+w /tmp
     
    3,删除原内核,解压内核到其/usr/src目录下:
    rm -rf /mnt/hda5/usr/src/*
    tar xvf lfs-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,配置内核(make menuconfig),将Ext2,Ext3选择为编译到内核中,其它根据自己硬件可以把无关的硬件模块去掉,
    (参考帖中说,编译内核的时候使用 chroot切换了环境,我发现不切换也没多大问题)
     
    5,复制内核到boot:将编译得到的内核复制到 /mnt/hda5/boot 下,在以前系统的GRUB启动项中加入相关语句(根据自己硬盘情况修改):
    title lfs-livecd6.1
    root (hd0,4)
    kernel /boot/linux root=/dev/hda5 rw vga=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/rc sysinit
     
    l0:0:wait:/etc/rc.d/init.d/rc 0
    l1:S1:wait:/etc/rc.d/init.d/rc 1
    l2:2:wait:/etc/rc.d/init.d/rc 2
    l3:3:wait:/etc/rc.d/init.d/rc 3
    l4:4:wait:/etc/rc.d/init.d/rc 4
    l5:5:wait:/etc/rc.d/init.d/rc 5
    l6:6:wait:/etc/rc.d/init.d/rc 6
     
    ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now
     
    su:S1:once:/sbin/sulogin
    sd:06:once:/usr/bin/shutdown-helper (将这一行注释掉,这里就是重启或关机发生错误的原因)
     
     
    1:2345:respawn:/bin/openvt -f -c 3 -e -w -- /usr/bin/livecd-login
    2:2345:respawn:/bin/openvt -f -c 3 -e -w -- /usr/bin/livecd-login
    3:2345:respawn:/bin/openvt -f -c 3 -e -w -- /usr/bin/livecd-login
    4:2345:respawn:/bin/openvt -f -c 4 -e -w -- /usr/bin/livecd-login
    5:2345:respawn:/bin/openvt -f -c 5 -e -w -- /usr/bin/livecd-login
    6:2345:respawn:/bin/openvt -f -c 6 -e -w -- /usr/bin/livecd-login
     
    (将这些内容修改成
    1:2345:respawn:/sbin/agetty tty1 9600
    2:2345:respawn:/sbin/agetty tty2 9600
    3:2345:respawn:/sbin/agetty tty3 9600
    4:2345:respawn:/sbin/agetty tty4 9600
    5:2345:respawn:/sbin/agetty tty5 9600
    6:2345:respawn:/sbin/agetty tty6 9600
    注意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}"
    exit 1
    ;;
    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 "Restarting system..."
    reboot -d -f -i
    ;;
    *)
    echo "Usage: ${0} {stop}"
    exit 1
    ;;
     
    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,基本完成了!呵呵。
  • 相关阅读:
    jQuery实现图片前进后退
    jQuery写日历
    python列表模拟栈
    python 列表去重
    Linux的文件系统
    新建vss数据库
    关于业务用例和系统用例
    从零开始使用Linux命令
    svn的安装与配置
    数塔 动态规划
  • 原文地址:https://www.cnblogs.com/huapox/p/3299984.html
Copyright © 2011-2022 走看看