問題1.安裝的上不能查看分區表
(chroot)Gentoo-20121221 / # fdisk -l
cannotopen /proc/partitions
解決方法:在livecd上執行命令
mount-t proc none /mnt/gentoo/proc
問題2.安裝完以後不能正常引導。grub
cannotopen root device "sda7" or unknown-block(0,0): error-6
pleaseappend a correct root boot option here are the available partitions
kernelpanic - not syncing :vfs:unable to mount root fs onunknown-block(0,0)
不能引導不能打開識別。很有可能是grub菜單辯解的問題雙系統啟動
vi/boot/grub/grub.conf
default0
timeout5
splashimage=(hd0,6)/boot/grub/splash.xpm.gz
titleWindows 7
rootnoverify(hd0,0) 0 ,0是第一塊盤的第一個分區。
makeactive
chainloader+1
titleGentoo Linux 3.7.10-gentoo
root(hd0,6) 6是boot分區,對應的是sda7, sda9 是主分區,根就掛載在sda9上面
kernel/boot/vmlinuz-3.7.10-gentoo ro root=/dev/sda9 quiet
問題3.config_devtmpfs=yis required in your kernel configuration
編譯內核的時候沒有選上。
cannotstart udev as udev ud-mount not start 沒有默認啟動。
重新編譯內核找到相關選項
DeviceDrivers --->
GenericDriver Options --->
(/sbin/hotplug)path to uevent helper
[*]Maintain a devtmpfs filesystem to mount at /dev
[*]Automount devtmpfs at /dev, after the kernel mounted the rootfs
問題4.Gentoo安裝後,無法聯網,但Ping地址錯誤,檢查/etc/resolv.conf發現沒設置nameserver,但設置之後重啟,resolv.conf又會變成原來的樣子。
解決方法:在/etc/conf.d/net加上一行,“dns_servers_eht0=xxx.xxx.xxx.xxx",重啟之後正常。
問題5.顯卡的問題。編譯是一般不用編譯顯卡。使用桌面時,編譯安裝驅動即可。
Nvidiafb:Unkonwnna_arch
試編譯kernel去掉nvidiaframebuffer支持,我編譯把nvidia和vesa都加上,結果無論如何分辨率上不去,dmesg看了一下,kernel好像是先加載nvidiaframebufer,於是我去掉nvidiaframebuffer結果就行了。\
I810does no support smp
Unableto mount root fs on unkonwn-block(0,0)
問題6.低級問題有連個make.conf 合並一下就ok
!!!Found 2 make.conf files, using both '/etc/make.conf' and'/etc/portage/make.conf'
Calculatingdependencies... done!
默認是尋找/etc/portage/make.conf裡面的內容,'把/etc/make.conf合並到/etc/portage/make.conf 裡面。
問題Endtarce do_early_param內核編譯有問題。
問題6需要升級升級整個系統emerge-avuD world
configfile '/etc/conf.d/xdm' needs updating.?
etc-update //升級一下配置文件
問題7建完用戶後沒有自己的家目錄。(useradd-m user1,就是因為沒有添加m這個參數導致)
localhostskel # cd /home/
localhosthome # mkdir user1
localhosthome # chown user1:user1 user1
localhosthome # cd /etc/skel/
localhostskel # cp -R .[a-z]* /home/dg/
localhostskel # ls -a /home/dg
再次登錄就可以有自己的家目錄了。
問題8 時間問題:
ln-sv /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
然後修改/etc/conf.d/hwclock中的clock="local"
Linux下編譯工程時,有時候需要修改代碼文件時間,命令行上采用find+touch可修改為當前時間。
find . -exec touch {} \;
問題9 關於emerge安裝軟件修改默認安裝路徑的問題。
指定emerge安裝路徑比如安裝bind服務
EXTRA_ECONF="--prefix=/test"emerge -av bind
Net.eth0網絡不能啟動和關閉
(chroot)livecd / # /etc/init.d/net.eth0 stop
*ERROR: net.eth0 stopped by something else
Dothis;
/etc/init.d/net.eth0stop
-verify the interface is down, if its not maybe just 'ifconfig eth0down' it
/etc/init.d/net.eth0 zap /etc/init.d/net.eth0start
不能使用root進行ssh登陸
問題10 不能使用root ssh登陸,修改如下。
[root@dns~]# vim /etc/ssh/sshd_config
PermitRootLogin yes
把no改為yes,重起一下sshd就ok,為安全起見不建議修改,可以添加一個用戶把用戶user1加入到wheel組裡面。通過user1ssh上去,然後再切換到root.
問題11重要問題沒有eth1eth0 ,編譯內核時候網卡驅動沒有選上
interfaceeth1 does not exist ensure that you have loaded the correct kernel
DeviceDrivers --->
[*]Network device support --->
[*] Ethernet (10 or 100Mbit) --->
<*> PCI NE2000 and clones support (see help)
問題12掛載/proc和/dev 切換環境
#mount -t proc none /mnt/gentoo/proc
#mount -o bind /dev/ /mnt/gentoo/dev
切換安裝環境
mount-t proc none /mnt/gentoo/proc
mount-o bind /dev /mnt/gentoo/dev
chroot/mnt/gentoo / /bin/bash
env-update&& source /etc/profile
exportPS1=”(chroot) $PS1”
問題13.Gentoo改密碼
例如:/etc/passwd關於root的登記項如下:
root:hjkkjsdfjkdsf:0:0:root:/bin/bash
我們只需要將他修改成:root::0:0:root:/bin/bash,就可以了。
重新啟動系統,現在的root已經沒有口令了。
進入none模式可以在內核裡面改的none--》dg,KernelInit=/bin/bash
問題14iptables沒有raw表編輯內核設置拒絕跟蹤連接。
[*]Networking support --->
Networkingoptions --->
[*]Network packet filtering framework (Netfilter) --->
IP:Netfilter Configuration -->Raw table support (required for notrack/track)
問題15ptables:No chain/target/match by that name.
Networkpacket filtering framework (Netfilter) 把防火牆相關的選項選成模塊。
問題16emerge-avuND world
(see"package.use" in the portage(5) man page for more details)
#required by sys-apps/portage-2.1.11.62[-build,python3]
#required by @selected
#required by @world (argument)
在vim/etc/portage/package.use
加入sys-apps/portagepython3 build
問題17查看內存信息
dnschroot # dmidecode -t memory | grep MB
SMBIOS2.5 present.
Size:2048 MB
Size:2048 MB
問題18iptables-nvL --line-numbers
刪除內核的時候顯示紅色表示刪除綠色表示保留
emerge-Cq gentoo-sources:3.7.10-r1
dns~ # qlist -Iv oo-s //顯示所有內核
app-vim/gentoo-syntax-20120109
sys-kernel/gentoo-sources-3.7.10-r1
sys-kernel/gentoo-sources-3.9.2
問題19.Dmesg-c 查看網卡是千兆還是百兆網
問題20問題查看內核支持的分區表類型
要從GPT磁盤啟動,主板的芯片組必須支持UEFI,僅把GPT磁盤用作數據盤則無此限制
windows7的GPT似乎本身就是以4KB的扇區進行分區的,所以要想默認4K對齊,直接用GPT比較好.
注意:對於D版windows通過模擬BIOS激活的,最好不要輕易嘗試,因為模擬BIOS激活一般是通過替換MBR代碼來達到激活的效果,在GPT裡面,由於不存在MBR,這種方法可能會破壞分區表,導致無法引導。
Enablethe block layer --》PartitionTypes
[*] EFI GUID Partition support添加按H可以發現幫助。
關於utf8 Securityoptions ---> Native language support-->(utf8) Default NLS Option
問題21 升級perl
checking for XML::Parser… configure: error: XML::Parser perl module is required for intltool
這樣的錯誤。
解決辦法是emerge一個 perl-cleaner,然後執行:perl-cleaner --all
把perl相關的模塊和文件都檢查並修正一遍。
問題22. 安裝bind報錯 嘗試從新編譯系統解決問題
# emerge --update --deep --newuse world //重新構建你的系統
然後運行Portage的depclean來移除已經安裝到你的舊系統裡但是在新USE標記中被廢除的條件依賴關系。
警告: 運行emerge --depclean是一項危險的操作,必須小心。請反復檢查要刪除的包的列表裡確定沒有你仍然需要的包。下面這個例子裡,我們添加了-p選項來depclean──只列出這些包而不刪除他們。
# emerge -p --depclean //刪除不需要的包
depclean完成之後,運行revdep-rebuild來重新構建那些動態鏈接到由可能已經刪除的包提供的公共對象的程序。revdep-rebuild是gentoolkit包的一部分,不要忘了先emerge它。
#運行revdep-rebuild //重建
安裝bind注意添加參數。
#vim /usr/portage/net-dns/bind/bind-9.9.2_p2.ebuild
加入這一行。 local myconf="--enable-epoll --enable-fixed-rrset"
再次安裝 一下bind
出錯使用如下命令
ebuild /usr/portage/net-dns/bind/bind-9.9.3_p2.ebuild manifest
 
問題23.網卡識別為 enp2s1,想讓其變成eth0
ln -s /dev/null /etc/udev/rules.d/80-net-name-slot.rules
使用新的網卡名字
# ln -s /etc/init.d/net.lo /etc/init.d/net.eth0
# rm /etc/init.d/net.enp2s1
# rc-update del net.enp2s1 default
#rc-update add net.eth0 default
#rc-update add net.eth1 default
修改 vim /etc/conf.d/net
config_eth0="192.168.10.234/24"
config_eth0="192.168.1.234/24"
routes_eth1="default via 192.168.1.1"
問題24. iptables重啟後丟失
#/var/lib/iptables $ ls
rules-save 把規則放到這裡面
25.問題查看安裝碼包的源
#/usr/portage/distfiles ls
Archive-Tar-1.90.tar.gz git-manpages-1.8.1.5.tar.gz
Authen-SASL-2.16.tar.gz git-manpages-1.8.3.2.tar.gz
問題26. 已經安裝了哪些包。
$ cat /var/lib/portage/world
app-portage/layman
dev-tcltk/expect
net-analyzer/traceroute
net-dns/bind-tools
net-dns/dnstop
net-misc/rdesktop
net-misc/sipcalc
sys-apps/xinetd
sys-process/atop
virtual/ssh
問題27.bind fix問題。
vim /usr/portage/net-dns/bind/bind-9.9.2_p2.ebuild
加入這一行。 local myconf="--enable-epoll --enable-fixed-rrset"
再次安裝 一下bind
出錯使用如下命令
ebuild /usr/portage/net-dns/bind/bind-9.9.3_p2.ebuild manifest
28.刪除首行/行尾空格
空格:\s
行末空格:\s\+$
行首空格:^\s\+
刪除行尾多個空格 : %s/\s\+$//g
刪除行首多個空格 : %s/^ \s\+//g
29.gentoo LANG的問題
gentoo ~ # locale
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.utf8
LC_CTYPE="en_US.utf8"
LC_NUMERIC="en_US.utf8"
LC_TIME="en_US.utf8"
LC_COLLATE="en_US.utf8"
LC_MONETARY="en_US.utf8"
LC_MESSAGES="en_US.utf8"
LC_PAPER="en_US.utf8"
LC_NAME="en_US.utf8"
LC_ADDRESS="en_US.utf8"
LC_TELEPHONE="en_US.utf8"
LC_MEASUREMENT="en_US.utf8"
LC_IDENTIFICATION="en_US.utf8"
LC_ALL=
解決方法
gentoo# locale-gen
* Generating 4 locales (this might take a while) with 1 jobs
* (1/4) Generating en_US.ISO-8859-1 ... [ ok ]
* (2/4) Generating en_US.UTF-8 ... [ ok ]
* (3/4) Generating de_DE.ISO-8859-1 ... [ ok ]
* (4/4) Generating de_DE.ISO-8859-15@euro ... [ ok ]
* Generation complete
設置為 zh_TW.UTF-8
#locale-gen --lang zh_TW.UTF-8
Generating locales...
zh_TW.UTF-8... doneGeneration complete.
grub2-install 使用
grub2-install --no-floppy /dev/sda
grub2-mkconfig -o /boot/grub/grub.cfg