|
楼主 |
发表于 2003-5-5 20:03:33
|
显示全部楼层
不归之旅...
包:
*--sysvinit-2.85.tar.gz
ftp://ftp.cistron.nl/pub/people/ ... ysvinit-2.85.tar.gz
*--bash-2.05b.tar.gz 打bash-2.05b001-004四个补钉
ftp://ftp.gnu.org/gnu/bash/
开始了:
一个分区加载在/mnt/linux2下
建目录:
mkdir bin boot etc home lib mnt proc root sbin tmp usr var
进入/mnt/linux2/usr
又建目录
mkdir bin include man sbin share src
进入/usr/man
建目录
mkdir man1 man2 man3 man4 man5 man6 man7 man8
进入/usr/share
建目录
mkdir aclocal autoconf automake man
进入/mnt/linux2/usr/share/man
执行命令
mkdir man1 man2 man3 man4 man5 man6 man7 man8
mkdir /mnt/linux2/var/run
重要的/dev文件
cp -dpR /dev /mnt/linux2
对于/etc/下的passwd , group
如果你的passwd是使用shadow的话
<在root:x:,:与:之间有* or x就是使用了shadow)
请先命令
pwunconv
grpunconv
去掉shadow之后,就 cp /etc/passwd /mnt/linux2/etc
cp /etc/group /mnt/linux2/etc
然后还原
命令-- pwconv, grpconv
安装SysVinit
解开包tar zxvf .tar.bz
在src中编辑Makefile文件
nano (vi) Makefile
在第一行,加入
ROOT = /mnt/linux2
<你分区加载的地方...>
在最后四行,作如下修改:
在每行中的/dev前面加入$(ROOT),
就像这样 $(ROOT)/dev
好了....
运行命令
:
make LDFLAGS=-static<如果没有这个参数
在启动内核,将会出现
( kernel panic: no init found try passing init=option to kernel)
>
make install
编辑/mnt/linux2/etc/inittab
文件
--------------------------
id:S:initdefault:
~~:S:wait:/sbin/sulogin
z6:6:wait:/sbin/sulogin
1:2345:respawn:/sbin/sulogin
---------------------------
可惜在我的启动界面中:
出现了
Give root password for maintenane
or .................
如果在启动时出现
sulogin:cannot open password databasa!
你需要五个文件
cp /lib/ld-2.3.1.so /mnt/linux2/lib
cp /lib/libc.so.6 /mnt/linux2/lib
cp /lib/libnsl.so.1 /mnt/linux2/lib
cp /lib/libnsl.so.1 /mnt/linux2/lib
cp /lib/libnss-compat.so.2 /mnt/linux2/lib
Bash编译
cd /bash-2.05b
patch p0 < bash-2.05-001
.........< bah-2.05b-004
./configure --enable-static-link
cp bash /mnt/linux2/bin
编译出现的问题
collect2:ld terminated with signal 15 [ Terminated].core dumped
在我的gentoo下在最后没有编译成功<gcc version 3.2.2>
可我用gentoo光盘启动.chroot来编译却成功了
.....
你可以用你原来的linux内核来启动
这个系统了
----------------------
再会....... |
|