上一章,已經對操做系統安裝作了充分準備,而且已經從livecd(u盤系統)切換進入了gentoo安裝環境中。linux
不過如今纔是真正的開始!打起精神!這可不是在裝ubuntu!web
安裝Portage快照
一個用來告訴Portage哪些軟件標題可用於安裝、哪些配置文件能夠由管理員選擇等等的文件集合。shell
emerge-webrsync
在這個操做中,emerge-webrsync可能會報找不到/usr/portage/位置。這是預期內的而且不用擔憂——這個工具將會建立這個位置。數據庫
須要一點時間,能夠泡杯熱coffee,等一會~編程
可選:更新Portage數據庫
Portage數據庫能夠更新到最新版本ubuntu
假設須要最新更新的包(gentoo protage發佈的1小時之內的新包裹)小程序
emerge --sync
選擇配置文件vim
eselect profile list
正常做爲PC機使用的話,建議使用desktop一項的,因此我選擇3ruby
eselect profile set 3
初始化選擇環境網絡
emerge --ask --update --deep --newuse @world
此過程快慢根據上面選擇的profile,通常名字越長(包越多)則時間越久
第一個default/linux/amd64/13.0是最快的,帶有desktop的profile都比較慢,由於要下載桌面環境,若是把kde,gnome,systemed什麼的一塊兒加進來就更加可怕了!
這個過程很是之慢,我這兒顯示173包下載或更新,足夠把剛剛泡的咖啡喝掉在看會ruby編程了!
好吧,他編譯了一下午多,我回來了!(畢竟平時寫代碼編譯只是一個小程序,這是編譯一個系統啊)
設定時區
選擇的時區是Asia/Shanghai:
echo "Asia/Shanghai" > /etc/timezone
基於/etc/timezone條目更新/etc/localtime文件。
/etc/localtime文件用於讓系統的C類庫知道系統在什麼時區
root #emerge --config sys-libs/timezone-data
設置地區
此項工做是本地化,設置語言、編碼、日期格式等等
下一步是運行locale-gen。它將生成/etc/locale.gen文件中指定的全部地區。
nano -w /etc/locale.gen
因爲沒有了vi,只能使用nano,ctrl-O保存,ctrl-X退出,以下添加進去,使用中文和英語
en_US ISO-8859-1 en_US.UTF-8 UTF-8 zh_CN GBK zh_CN.UTF-8 UTF-8
驗證所選擇的地區當前可用,運行locale -a
經過eselect locale set VALUE能夠設定正確的地區:
eselect locale set 8
如今從新加載環境:
env-update && source /etc/profile && export PS1="(chroot) $PS1"
選擇一個合適的內核並使用emerge來安裝它。
emerge --ask sys-kernel/gentoo-sources
此命令會自動檢測當前環境依賴,找到合適的linux kernel,內核是linux系統發行版的核心
編譯gentoo的linux內核有兩種方式:
第一個是純手工編譯,須要對硬件有必定了解,缺乏了模塊均可能會致使設備沒法正常工做
因此我使用第二種genkernel方案,雖然這不是官方推薦,也不利於學習linux內核編譯,可是,以前我手動編譯不管如何都找不到wlan設備,致使筆記本的無線沒法正常使用,這一次,我決定使用自動化編譯
nano -w /etc/fstab
添加以下一行:
/dev/sda2 /boot ext2 defaults 0 2
其餘地方都不要動!
下載安裝genkernel
emerge --ask sys-kernel/genkernel
編譯並安裝
genkernel all
注意:這將又是一個漫長等待的時間,並且沒有任何屏幕輸出的編譯等過程,這一次我睡了一覺,明早繼續
早上好,看看電腦,已經編譯好了
結束後輸入
ls /boot/kernel* /boot/initramfs*
顯示以下
(chroot)livecd / # ls /boot/kernel* /boot/initramfs* /boot/initramfs-genkernel-x86_64-4.9.16-gentoo /boot/kernel-genkernel-x86_64-4.9.16-gentoo
代表這一覺,電腦已經自動完成了內核模塊的編譯和安裝
安裝固件
emerge --ask sys-kernel/linux-firmware
一些驅動須要先在系統上安裝附加的固件才能工做。這常常用於網絡接口,特別是無線網絡接口。很是多的固件都打包在sys-kernel/linux-firmware裏
fstab
在Linux系統下,系統所用到的全部分區都必須在 /etc/fstab文件中指明。這個文件包含了這些分區的掛載點(在系統目錄樹中的位置)、掛載方法和特殊掛載選項(是否自動掛載,是否某個用戶能夠掛載它等)。
建議在這以前,先安裝一個vim編輯器(若是你是vim黨),這樣會使得後面編輯配置文件更加快速,你不喜歡vim,能夠繼續使用nano編輯器或者安轉emacs
安裝vim:
emerge app-editors/vim
安裝是經過源碼編譯的,須要稍做等待......
好了,有vim用了
vim /etc/fstab
若是和我同樣,分區有/,/home,/boot分區,就按照如下配置便可
提示:
主機名、域名信息
vim /etc/conf.d/hostname
若是你須要一個域名,在/etc/conf.d/net中設定(文件須要建立)
我做爲桌面用戶,不須要,因此還要修改下面文件:
若是你選擇不設定域名,你能夠去掉登陸界面上的這條信息:「This is hostname.(none)」。你只須要修改/etc/issue ,把字符串.\O從該文件裏刪掉便可。
啓用PCMCIA
筆記本電腦有個pci擴展塢,若是想啓用就安裝此項,若是不須要,就跳過
PCMCIA用戶首先應該安裝sys-apps/pcmciautils軟件包。
emerge --ask sys-apps/pcmciautils
root密碼
passwd
輸入新的密碼
系統日誌工具
安裝系統日誌工具,選擇初學者專用的sysklogd
emerge --ask app-admin/sysklogd rc-update add sysklogd default
cron守護進程
emerge --ask sys-process/cronie rc-update add cronie default
文件索引 locate
可使用locate命令搜索文件
emerge --ask sys-apps/mlocate
遠程訪問 ssh
自動開啓遠程服務
rc-update add sshd default
這些操做很是重要,這決定了你以後能不能鏈接到網絡,若是不能鏈接互聯網,就連emerge命令都沒用,到時候會發現許多的命令沒有,包括網絡鏈接命令!而沒有網絡,emerge又不能把它們下載下來,不能emerge安裝網絡工具,又很差連上網,這就進入了一個惡性循環,雖然還有別的辦法好比有線網絡,路由器等等,仍是先把這些工具都裝上,方便咱們進入系統後進一步配置和emerge更多的包!
安裝dhcpd客戶端
emerge --ask net-misc/dhcpcd
安裝PPPoE客戶端
emerge --ask net-dialup/ppp
安裝無線網鏈接工具
對於筆記本電腦這些很是重要(不然在命令行中沒法鏈接wifi)!!!官方沒有特別說明
試着使用iwconfig,你會發現沒有這條命令!說明這個程序沒有安裝,與此同時iw命令也沒有!
emerge --ask net-wireless/wireless-tools emerge --ask net-wireless/iw
安裝wpa支持,讓gentoo可鏈接wpa路由器,就像以前咱們livecd安裝gentoo時
emerge --ask net-wireless/wpa_supplicant
linux引導
linux經常使用的引導有三個:grub(1-2),LILO,efibootmgr
選擇grub2便可,相對傳統並且靈活
LILO以前在slackware linux上我使用過
efibootmgr是比較新的專門用於引導uefi系統,而grub2亦可作到
安裝grub2
emerge --ask --verbose sys-boot/grub:2
將grub安裝到sda設備上,就是咱們的硬盤。若是是多塊硬盤設備,安裝到系統硬盤(主硬盤)
grub-install /dev/sda
要生成最終的GRUB2配置,運行grub-mkconfig命令:
grub-mkconfig -o /boot/grub/grub.cfg
開始使用gentoo linux
到達此處,gentoo的安裝已經結束!
輸入:
reboot
從新載入系統(以root身份登陸)
連上wifi:按照上一章wpa_supplicant或者iw,iwconfig鏈接wifi的用法便可
連上以後會自動設置ip,若是沒有,使用如下語句:
dhcpcd
dhcp就是動態獲取ip地址
ping一下網絡,若是已經進入互聯網
開始emerge,就像ubuntu的apt-get!
如今開始使用gentoo linux吧!