现在先做一下常规操作,就是完全从零开始按LFS的操作:
1、开新分区和挂载,做为新的LFS的根目录位置,这是LINUX的基础知识自不必说,如果新人不太清楚的话,建议在一个发行版上多搞几次就明白了。这部分在手册的第2章:Preparing the Host System。
2、建立临时工具包,这个就是非常核心的部分了,在手册的第4和5章。在第4章Final Preparations,我们可以看到它建立了临时的变量LFS等,最核心的变量设置是/tools -> $LFS/tools,这里是非常有技巧的,也是挡在众多LFS新手前的第一道坎,比较难理解。(10年前我搞LFS时也在这困住了很长时间
![[乖]](/static/emoticons/u4e56.png)
)它的技巧在于,成功地“欺骗了”工具链。我们可以看到,后面的工具链安装时,位置都会选择“/tools”,实际上是装在了“$LFS/tools”位置下,但是,你不可以“老实”地写成“$LFS/tools”,因为后面会有一个chroot切换根目录的操作,这样的写法就无法成功“欺骗”工具链,用前面的写法就可以,因为后面切根目录的时候,是以$LFS为根目录的,原来的“$LFS/tools”位置,就非常恰好地成为了 “/tools”,这里就巧妙地形成了一致!(真的很佩服工作组大佬们的思路!)
3、第4-5章的临时工具包编译好后,采用切换根目录的方法,进入临时的独立系统,用临时工具包编译出整个完整的LFS系统,这是第6章的内容。这里面最难的部分就是工具链的调整。因为上面我们提到了,工具包的工具链,指向是“/tools”,第6章要调整为指向"/",也就是根目录。这里面采用了一些技巧,等下再细说。
4、第7-8章就是对第6章编译好的系统,再进行一些细节的设置,比如启动脚本、界面、设置网络,比如增加新用户等等。这段比较核心的是编译内核,再把内核放到“/boot”下面,并调整启动菜单,从而能够成功启动。
5、成功启动后,LFS的全部工作就已经完成了。这时候的系统是TTY界面的命令行系统,这个系统有着基础的功能,可以让你学一下LINUX的命令行,比如玩玩sed、find、shell脚本什么的,同时也有着最强大的功能:编译!只要有源代码,就没有这个系统编译不了的!这甚至是很多发行版都无法正常做到的!
![[真棒]](/static/emoticons/u771fu68d2.png)
至于这时候用来当服务器还是用于桌面还是当个玩具显摆,就是各用户的事情了,这是BLFS手册的内容了。