歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

Inst gentoo based on alpha platform

  成功安裝gentoo based on alpha platform,發文一篇。     真是辛苦,盡管gentoo早就出了alpha platform的distribution,但居然它主頁上沒for alpha的installation guide,兩個月前試著裝了一次(把以前裝的RH7.2刪了),結果因為boot loader 搞不定,白裝,連起動都成問題。最近比較空,在仔細研究了aboot的文檔後花了三天時間終於把基本系統裝上,現在正在裝X。     不說廢話,先說說機器配置,alpha 21164 500mhz,256m mem,EB164兼容主板,2×SCSI 18.2G硬盤,SRM 5.1 boot rom。還算我運氣好,SRM的版本夠高,不然還要   重新刷bios。(其實光這步就可以卡死很多敢於吃螃蟹的)     先下載gentoo 1.4 RC1 test4的iso(我一直在等它出rc4 for alpha的iso,可sparc,ppc,hppa的版本都更新了,就是for alpha 不更新,氣死我了)刻成光盤。打開機器,進入SRM 狀態,show dev後發現光驅的設備號為 dka 500。it's easy,   boot dka500 -fl 0,啟動光盤。     進入Linux,起先的安裝步驟和x86平台無甚兩樣:   modprobe eepro100(認出網卡)   ifconfig eth0 192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255 up   /sbin/route add -net default gw 192.168.0.1 netmask 0.0.0.0 metric 1 eth0   更改etc/resolv.conf,設置dns serevr。   date xxxxxxx 設置時間     fdisk /dev/sda 硬盤分區,這裡需要仔細說說,由於alpha平台的特殊性,它只認BSD風格的分區形式(就是那種不認partition,只認slice的風格)。同時由於它的boot loader---aboot的特性,所以分區時必須要注意這點,第一個分區的起始扇區必須在2048 block之後(也有建議512的),也就是1m左右的空間以便放aboot引導程序(其實aboot也就80k大)。兩個月前我第一次裝時沒注意,結果把整個distribution build之後才發覺分區錯了,那個暈阿!   剩下來的分區就容易了,按照BSD風格,四個分區分別是a,b,c,d 其實就是   /dev/sda1 /boot 128m, /dev/sda2 swap 768m, /dev/sda3 /var , /dev/sda4 /.     mke2fs -j /dev/sda1   mke2fs -j /dev/sda4(這兩個分區必須用ext2或ext3,否則aboot不認)   mkswap /dev/sda2   mkfs.xfs -l size=32m /dev/sda3 我試了試xfs的格式在/var分區下。具體參數見gentoo網站上的簡介。     swapon /dev/sda2 打開swap   mkdir /mnt/gentoo   mount /dev/sda4 /mnt/gentoo   mkdir /mnt/gentoo/boot   mount /dev/sda1 /mnt/gentoo/boot   mkdir /mnt/gentoo/var   mount /dev/sda3 /mnt/gentoo/var     cd /mnt/gentoo   lynx http://www.ibiblio.org/pub/Linux/distributions/gentoo/releases/1.4_rc1/alpha/   拿下stage1的安裝包     tar -xvjpf /mnt/cdrom/gentoo/stage1-*.tar.bz2 解開安裝包     mount -t proc proc /mnt/gentoo/proc   cp /etc/resolv.conf /mnt/gentoo/etc/resolv.conf   chroot /mnt/gentoo /bin/bash 這步比較重要,進入編譯環境,其實就像罩了把傘一樣。:-)   env-update (這裡有可能會失敗,不要緊,emerge sync一把就好了,其實是安裝包太老需要更新)   Regenerating /etc/ld.so.cache...   source /etc/profile   emerge sync   nano -w /etc/make.conf 這裡要改點東西,最主要的就是把裡面缺省的cpu 型號改成你要的,我是21164,所以改成EV56,你要是搞不清,沒關系,uname -p一把.     cd /usr/portage   scripts/bootstrap.sh 艱苦的旅程終於開始了,後來我看了一下時間,用了我大約4個多小時,這裡它編譯了binutils, gcc, gettext, glibc, 然後重編譯binutils, gcc,gettext。     現在進入stage2,     emerge -p system   emerge system   這更誇張,一共73個組件居然編了我6個半小時。     進入stage3   ln -sf /usr/share/zoneinfo/path/to/timezonefile /etc/localtime 設置時區   這後面的path/to/timezonefile是zoneinfo下你所在時區的路徑,找到Asia,再找到裡你最近的城市,做把連接。     開始編譯kernel   emerge sys-kernel/alpha-sources 注意,這和x86平台不一樣,我一開始拼命想試   emerge sys-kernel/gentoo-sources 可系統總告訴我這些ebuilds被masked了,想破腦袋也想不出為什麼,後來進到/usr/portage/sys-kernel下一看才明白,原來如彼!笨死了:-( 我用的是alpha機器啊!emerge ebuilds的嚴謹性由此可見一斑。     cd /usr/src/linux   make menUConfig 這裡有些要注意,要把BSD風格的分區支持編進去,要把VFS,devfs的分區也編進去,否則會引起kenel panic,我就是...唉,不說了,怎麼倒霉事盡跑我頭上....編一次kernel要花去我整整一個小時啊!開始想念在那台p4 2.4G   的服務器上4分鐘編譯一次kernel的好光景來了....還有就是注意網卡驅動等等等等   make dep   make boot 這和x86平台不一樣,依葫蘆畫瓢吧!   make modules   make modules_install   cp /usr/src/linux/arch/alpha/boot/mvlinux.gz /boot     emerge app-admin/sysklogd   rc-update add sysklogd default   emerge sys-apps/vcron   rc-update add vcron default 這個就不說了。   emerge sys-apps/xfsprogs 專給xfs用的     更改 /etc/fstab   passwd 改 root passWord   echo mymachine.mydomain.com > /etc/hostname 這個也容易。   更改 /etc/hosts   更改 /etc/modules.autoload   nano -w /etc/conf.d/net   rc-update add net.eth0 default   nano -w /etc/rc.conf 更改時區(一大堆routing jobs)     最後就是aboot的安裝了,emerge aboot   裝完後運行swriteboot /dev/sda /boot/bootlx 把aboot copy至起始扇區,   然後 abootconf /dev/sda 4 更改aboot 初始配置,因為/ 分區在/dev/sda4   初始狀態是 /dev/sda 2,這要是在aboot 0.6版以前是要更改編譯參數,重新編譯   aboot的(天哪,還要編譯),現在0.9版好多了,擦汗ing.....   到/etc下照著aboot.conf.example的樣改出一個aboot.conf來。呵呵     etc-update   exit 退出chroot狀態   cd /   umount /mnt/gentoo/boot   umount /mnt/gentoo/proc   umount /mnt/gentoo/var   umount /mnt/gentoo   reboot     重起!哈!gentoo for alpha終於裝好了,全世界第一篇中文版gentoo based on   alpha platform的installation guide也誕生了。快鼓掌!     不過裝完後一想,這套linux是32bit的,不爽。反正我還有一個硬盤,改日裝套   netbsd for alpha罷,這可是純64位的系統.....




Copyright © Linux教程網 All Rights Reserved