LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: huohuliaisili

零起点构建自己的Linux ( LFS-6.2-5 + BLFS-6.2.0 )

[复制链接]
发表于 2007-5-20 10:49:26 | 显示全部楼层
以下内容为menu.lst文件
# Begin /boot/grub/menu.lst

# By default boot the first menu entry.
default 0

# Allow 30 seconds before booting the default.
timeout 30

# Use prettier colors.
color green/black light-green/black

# The first entry is for LFS.
title LFS 6.2
root (hd0,3)
kernel /boot/lfskernel-2.6.16.38 root=/dev/sda4


以下内容为94-conf脚本,
##########  7.5. Configuring the setclock Script ##########

cat > /etc/sysconfig/clock << "EOF"
# Begin /etc/sysconfig/clock

UTC=0

# End /etc/sysconfig/clock
EOF

##########  7.8. Creating the /etc/inputrc File ##########
# /etc/inputrc File

cat > /etc/inputrc << "EOF"
# Begin /etc/inputrc
# Modified by Chris Lynn <roryo@roryo.dynup.net>

# Allow the command prompt to wrap to the next line
set horizontal-scroll-mode Off

# Enable 8bit input
set meta-flag On
set input-meta On

# Turns off 8th bit stripping
set convert-meta Off

# Keep the 8th bit for display
set output-meta On

# none, visible or audible
set bell-style none

# All of the following map the escape sequence of the
# value contained inside the 1st argument to the
# readline specific functions

"\eOd": backward-word
"\eOc": forward-word

# for linux console
"\e[1~": beginning-of-line
"\e[4~": end-of-line
"\e[5~": beginning-of-history
"\e[6~": end-of-history
"\e[3~": delete-char
"\e[2~": quoted-insert

# for xterm
"\eOH": beginning-of-line
"\eOF": end-of-line

# for Konsole
"\e[H": beginning-of-line
"\e[F": end-of-line

# End /etc/inputrc
EOF

########## 7.9. The Bash Shell Startup Files ##########
locale -a

LC_ALL=en_GB.iso88591 locale charmap

LC_ALL=en_GB.ISO-8859-1 locale language
LC_ALL=en_GB.ISO-8859-1 locale charmap
LC_ALL=en_GB.ISO-8859-1 locale int_curr_symbol
LC_ALL=en_GB.ISO-8859-1 locale int_prefix

cat > /etc/profile << "EOF"
# Begin /etc/profile

#export LANG=POSIX
export LANG=en_GB.ISO-8859-1
export INPUTRC=/etc/inputrc

# End /etc/profile
EOF


echo "HOSTNAME=LFS6.25" > /etc/sysconfig/network

########## 7.11. Customizing the /etc/hosts File ##########
cat > /etc/hosts << "EOF"
# Begin /etc/hosts (network card version)

127.0.0.1 localhost
192.168.1.2 localhost LFS6.25
#192.168.1.2 HOSTNAME.example.org [alias1] [alias2 ...]

# End /etc/hosts (network card version)
EOF


########## 7.12. Creating custom symlinks to devices ##########
#        cd /sys/block/hdd
#        udevtest /block/hdd

#        cd /sys/block/hdc
#        udevtest /block/hdc


cat >/etc/udev/rules.d/82-cdrom.rules << EOF

# Custom CD-ROM symlinks
SUBSYSTEM=="block", ENV{ID_TYPE}=="cd",     ENV{ID_PATH}=="pci-0000:00:0f.1-ide-1:0", SYMLINK+="cdrom"
SUBSYSTEM=="block", ENV{ID_TYPE}=="cd",     ENV{ID_PATH}=="pci-0000:00:0f.1-ide-1:1", SYMLINK+="cdrom1 dvd"

EOF

########## 7.13. Configuring the network Script ##########
#        grep -H . /sys/class/net/*/address

cat > /etc/udev/rules.d/26-network.rules << EOF
ACTION=="add", SUBSYSTEM=="net", SYSFS{address}=="00:11:09:d0:00:6f",     NAME="eth0"
ACTION=="add", SUBSYSTEM=="net", SYSFS{address}=="00:00:00:00:00:00",     NAME="lo"
EOF


########## 7.13.2 Creating Network Interface Configuration Files ##########

cd /etc/sysconfig/network-devices &&
mkdir -v ifconfig.eth0 &&
cat > ifconfig.eth0/ipv4 << "EOF"
ONBOOT=yes
SERVICE=ipv4-static
IP=10.62.13.25
GATEWAY=10.62.13.254
PREFIX=24
BROADCAST=10.62.13.255
EOF

########## 7.13.3. Creating the /etc/resolv.conf File ##########
cat > /etc/resolv.conf << "EOF"
# Begin /etc/resolv.conf

domain localhost
nameserver 202.114.200.254
#nameserver 218.104.78.2

# End /etc/resolv.conf
EOF

########### 8. Making the LFS System Bootable ##########
cat > /etc/fstab << "EOF"
# Begin /etc/fstab

# file system  mount-point  type   options         dump  fsck
#                                                        order

/dev/sda4       /           ext3    defaults        1     1
#/dev/hda3      swap         swap   pri=1           0     0
proc           /proc        proc   defaults        0     0
sysfs          /sys         sysfs  defaults        0     0
devpts         /dev/pts     devpts gid=4,mode=620  0     0
shm            /dev/shm     tmpfs  defaults        0     0
# End /etc/fstab
EOF

涉及到系统启动的脚本有哪几个,会不会是前面出了问题?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-20 11:06:01 | 显示全部楼层
编译内核的时候,应该加上文件系统支持。如果确认是没有加入对文件系统的支持,应该在这里加上。
关于编译内核,看这里:
金国步作品列表 http://lamp.linux.gov.cn/jinbuguo_florilegium.html
# Linux 2.6.19.x 内核编译配置选项简介 http://lamp.linux.gov.cn/Linux/kernel_options.html

还是挂LiveCD进去。

export LFS=/mnt/lfs
mkdir -v $LFS
mount /dev/xxx $LFS
## 挂载虚拟文件系统 ##
mount --bind /dev $LFS/dev
mount -vt devpts devpts $LFS/dev/pts
mount -vt tmpfs shm $LFS/dev/shm
mount -vt proc proc $LFS/proc
mount -vt sysfs sysfs $LFS/sys

chroot $LFS
然后重编译内核,加入对文件系统的支持。编译内核后,记得备份一次 .config 文件。 .config 文件是一个隐藏文件,在你完成编译内核后会在内核原码包的目录下产生。把它拷贝到其它地方,或者重命名。
回复 支持 反对

使用道具 举报

发表于 2007-5-20 11:39:17 | 显示全部楼层
我查看了第一次编译时产生的.config文件,含有File system的那一部分内容如下:
# File systems
#
CONFIG_EXT2_FS=y
# CONFIG_EXT2_FS_XATTR is not set
# CONFIG_EXT2_FS_XIP is not set
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y
CONFIG_JBD=y
# CONFIG_JBD_DEBUG is not set
CONFIG_FS_MBCACHE=y
CONFIG_REISERFS_FS=m
# CONFIG_REISERFS_CHECK is not set
# CONFIG_REISERFS_PROC_INFO is not set
# CONFIG_REISERFS_FS_XATTR is not set
# CONFIG_JFS_FS is not set
CONFIG_FS_POSIX_ACL=y
CONFIG_XFS_FS=m
# CONFIG_XFS_QUOTA is not set
# CONFIG_XFS_SECURITY is not set
# CONFIG_XFS_POSIX_ACL is not set
这样看来,编译内核时已经加入了对ext3文件系统的才持呀,
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-20 11:55:35 | 显示全部楼层
开机时,出现GRUB引导菜单的时候,按C键,到命令模式下。

kernel (hd        按 Tab 键
kernel (hdn,       n用一个数字替换掉,如果只有一块硬盘,这里为0 。
kernel (hdn,m)/      找出你的Linux系统根分区,按Tab键1次或者2次。看看此分区根目录下有什么?有没有 boot 目录?
kernel (hdn,m)/boot/   还是按Tab键,看有没有一些文件,找出你认为是kernel的那个文件。
kernel (hdn,m)/boot/lfskernel-2.6.16.38 root=/dev/sda4
如果上面的能够找出,把GRUB中显示的分区 (hdn,m) 记下来,看它与实际是否相符?
如果想再尝试是否能启动,在这个地方就可以敲回车了。
然后
boot
引导系统。
如果仍然无法启动系统,把屏幕上的提示抄下来。
回复 支持 反对

使用道具 举报

发表于 2007-5-20 13:12:15 | 显示全部楼层
还是出错,出错信息为:
using IPI shortcut mode
VFS: cannot open root device "sda4" or unknown-block(0,0)
please append a correct "root=" boot option.
kernel panic -not syncing :VFS : unable to mount root fs on unknow-block(0,0)
感觉像是编译内核时没有加进对硬盘的支持.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-20 13:16:42 | 显示全部楼层
Post by guo333806
还是出错,出错信息为:
using IPI shortcut mode
VFS: cannot open root device "sda4" or unknown-block(0,0)
please append a correct "root=" boot option.
kernel panic -not syncing :VFS : unable to mount root fs on unknow-block(0,0)
感觉像是编译内核时没有加进对硬盘的支持.

如果确定不是配置文件的问题,那就是编译内核问题了。
这段话应该就说明了编译内核有问题.
回复 支持 反对

使用道具 举报

发表于 2007-5-20 14:07:59 | 显示全部楼层
编译时除了选择对ext3的支持,其余的都默认.应该就可以了吧
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-20 14:24:59 | 显示全部楼层
Post by guo333806
编译时除了选择对ext3的支持,其余的都默认.应该就可以了吧

Linux 2.6.19.x 内核编译配置选项简介
http://lamp.linux.gov.cn/Linux/kernel_options.html
回复 支持 反对

使用道具 举报

发表于 2007-5-20 20:06:22 | 显示全部楼层
重新编译了一遍内核,按金步国的帖子,把所有必选的选项抄了下来,费了好长时间才把那些选项找到.重启以后,又出现错误,错误与以前不一样,错误提示为:
uncompressing linux ...... ok,
boot the kernel,
BIOS provided physical RAM
502MB LOWMEM avialable
found SMP MP-table at
到这里屏幕就不动了,按键盘什么键也没反应了.
你是怎么配置这么多繁杂的选项的?我已经按照那个帖子把所有必选的选项都选了,结果.......
不知是怎么回事了,估计还是内核的问题.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-20 20:46:49 | 显示全部楼层
Post by guo333806
重新编译了一遍内核,按金步国的帖子,把所有必选的选项抄了下来,费了好长时间才把那些选项找到.重启以后,又出现错误,错误与以前不一样,错误提示为:
uncompressing linux ...... ok,
boot the kernel,
BIOS provided physical RAM
502MB LOWMEM avialable
found SMP MP-table at
到这里屏幕就不动了,按键盘什么键也没反应了.
你是怎么配置这么多繁杂的选项的?我已经按照那个帖子把所有必选的选项都选了,结果.......
不知是怎么回事了,估计还是内核的问题.

那没办法,只有再重编译内核。
回复 支持 反对

使用道具 举报

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

本版积分规则

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