1.错误:”/tools/i686-pc-linux-gnu/bin/as”,execv:No such file or directory lfs
这个错是第一次进入chroot碰到的。我这个文件是存在的。我决定把/sources/里面的文件夹全部删了
解决不了了。只有重新编译一遍。
2.一个重启后的warning:face eth0 does not exist.
是因为自己编译内核的时候ath9k,jme模块没有编译,一个是无线网卡,一个是有线网卡。
lspci -k。非常有用的命令。可以看到当前主机都用的是什么驱动。
iwconfig 看无线网络的情况。
iwlist
ip addr相当于Ifconfig。有用。lfs没有装coreultis,也就没有ifconfig。
3.sudo ls
安装了sudo,改了/etc/sudoers,但是做普通用户guang时用命令sudo ls的时候,会出现segmentation fault.
我首先chmod 4775 ls,sudo,然后ldd -v /lib/sudo/sudo*看了一下。
最后最重要的是要改sudoers文件,将guang ALL=(ALL) NOPASSWD:ALL 加上。NOPASSWD是重点。这个意思是说guang这个用户执行sudo的时候不需要密码。
4.faild to load firmware radeon/CAICOS-pfp.bin
http://wiki.gentoo.org/wiki/Radeon#Firmware
下载了CAICOS_*.bin,BTC_*.bin后再编译进内核。注意内核选项FIRMWARE_EXTRA,FIRMWARE_DIR(好像叫个名字)的值就可以了。
直接make的可以节省时间。
用开源的AMD驱动需要打开KMS。并且我用官网的闭源包amd-**.zip安装的时候提示我有工具偶安装。估计是因为很多东西都没有安装吧。连which都没有
5.安装dhcpcd想联网
dhcpcd:waitting for carrier.
于是去安装iwconfig(在wireless-tools包里面)
iwconfig过后,四个接口全部都是no wireless extension.
我就去iwconfig homepage.看了下。内核有的选项没选上。
但是官网说的那个CONFIG_ NET_RADIO找不到。
去IRC问了下,叫我选上WEXT_CORE,WEXT_PROC,CFG80211_WEXT.嗯。如果需要Wireless Extension,就需要有这几个选项。
http://cateee.net/lkddb/web-lkddb/index_W.html
介绍内核各个配置文件
但是,iwlist wlan0 scan都能用了,dhcpcd还是waiting for carrier.
解决:iwconfig wlan0 essid 网络名称,接着dhcpcd wlan0就有ip了。dhcpcd -k wlan0。停止wlan0上的dhcpcd进程。
6.安装了network-manager,但是没有前端。也就是图形界面。
于是又去安装wicd,但是pybabel command not found.我安装了babel的。
7.安装gtk+-3的时候,碰到了包依赖的问题。
按照那个手册上来安装的话,好像看不出问题。其实,应该是gobject-introspection安装了以后,gdk-pixbuf和pango就需要重新安装一下。
http://www.linuxquestions.org/questions/linux-from-scratch-13/error-while-compiling-gtk-2-a-4175438615/
中的回答That did the trick, reinstalling Pango after gobject-introspection. It’s marked as optional, but I guess that means either install it first, or not at all… (Or maybe the warning was only about missing those features?) Anyway, problem solved.
8.firefox chinanet登陆页面的跳转问题。
一开始的时候郁闷,wlan0(我自己把他名字给改了,参考systemd主页)怎么搞都分配不到ip.
后来iwconfig wlan0 esssid chinanet,然后dhcpcd wlan0分配到了ip,但是打开浏览器,浏览器还是不会自动跳转到wlan登陆页面。去百度,很多人说重新安装一下驱动就好了,我想我iwlist wlan0 scan都能扫信号了,驱动怎么会出错。于是去route看路由表。
结果ping自己的网关不能Ping通,ping自己的ip都能通。结果才发现没有登陆成功之前是ping不通的,网关给屏蔽了。后来登陆上了,再Ping就能成功。ping不通的时候,用arping测试主机。
还有一个sit0接口的问题,一个路由表应该是只有一个默认网关的,sit0开始已经有了个默认网关了,我在ifconfig.sit0中配置了。后来删了,就好了。实际上是路由表的问题。不过这里面有一个问题很奇怪。我把ifconfig.sit0删了,路由表全部清空以后,/etc/init.d/networt restart后sit0又出来了。而且路由表没有了sit0还是不能上网,我是后来重启了才发现能上网了。