|
|
发表于 2005-11-9 09:30:11
|
显示全部楼层
还有一个简单的方法,刚在别的网站上看到的:
code:export LFS=/mnt/lfs
code:mkdir $LFS
code:mount /dev/hdaX $LFS
code LFS/lfschroot.sh
code:./devpop.sh
code:# Begin lfschroot.sh
# Changes root directory for use in LFS 6.1 Chapter 6
# Mount required filesystems
mount -t proc proc $LFS/proc
mount -t sysfs sysfs $LFS/sys
# These "fake mounts" are also needed now
mount -f -t ramfs ramfs $LFS/dev
mount -f -t tmpfs tmpfs $LFS/dev/shm
mount -f -t devpts -o gid=4,mode=620 devpts $LFS/dev/pts
echo ""
echo "Do not forget to populate /dev !"
echo ""
# Chroot into the LFS system with a reduced environment
chroot "$LFS" /tools/bin/env -i \
HOME=/root TERM="$TERM" PS1='\u:\w\$ ' \
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin \
/tools/bin/bash --login +h
# End lfschroot.sh
code:# Begin devpop.sh
# Based on LFS 6.1 Chapter 6.8.2
# This mounts a tempfs to /dev and populates
# the /dev directories with a minimal set of device nodes.
# ONLY RUN AFTER YOU HAVE CHROOTed INTO LFS DIRECTORY!!!
mount -n -t tmpfs none /dev
mknod -m 622 /dev/console c 5 1
mknod -m 666 /dev/null c 1 3
mknod -m 666 /dev/zero c 1 5
mknod -m 666 /dev/ptmx c 5 2
mknod -m 666 /dev/tty c 5 0
mknod -m 444 /dev/random c 1 8
mknod -m 444 /dev/urandom c 1 9
chown root:tty /dev/{console,ptmx,tty}
# These symbolic links are required by LFS
ln -s /proc/self/fd /dev/fd
ln -s /proc/self/fd/0 /dev/stdin
ln -s /proc/self/fd/1 /dev/stdout
ln -s /proc/self/fd/2 /dev/stderr
ln -s /proc/kcore /dev/core
# Mount the kernel filesystems within /dev
mkdir /dev/pts
mkdir /dev/shm
mount -t devpts -o gid=4,mode=620 none /dev/pts
mount -t tmpfs none /dev/shm
# Test to see if udev is built yet. If so, run it.
if [ -f /sbin/usevstart ]; then
/sbin/udevstart
fi
# End devpop.sh
In chapter 7 you don't need the tools directory anymore use this lfschroot.sh instead.
code:# Chroot into the LFS system with a reduced environment for Chapter 7
chroot "$LFS" /usr/bin/env -i \
HOME=/root TERM="$TERM" PS1='\u:\w\$ ' \
PATH=/bin:/usr/bin:/sbin:/usr/sbin \
/bin/bash --login
This is the easiest way to reenter the chroot environment,. so when you want to start you only have to.
# export LFS=/mnt/lfs
# mount /dev/[xxx] $LFS
# $LFS/lfschroot.sh
# ./devpop.sh
and you can go further where you left. |
|