2007年8月14日 星期二

ubuntu feisty amd64 安裝筆記 3 - 在 Ubuntu 下設立 IA32 的環境

後來想想, 除了把 kernel compile 成 64 dual-core 外, 還有 library 和 application 也最好要跟著改, 才能發揮它的效用. 後來發現 Ubuntu feisty 有 amd64 的 image, 於是就把它下載燒成光碟, 然後把我的系統重灌!

然而在 64-bit, 還是有一些零星的小問題. 大體上都很順, 連 X windows 都不需要另外安裝 fglrx driver 就可以開了. 比較麻煩是 firefox 無法使用 java plugin. Java 和 firefox 都是 64-bit 而且 OK. freemind 一 apt-get install 完就可以 run 而且中文也 OK.

查 sun 的官方網頁好像目前還無解, 於是就試試 "Ubuntu AMD64 IA32 Howto", 以下是隨手筆記:


# apt-get install debootstrap
# debootstrap --arch i386 feisty /hda3/feisty-i386 http://tw.archive.ubuntu.com/ubuntu
# chroot /chroot/feisty-i386
從以下是進入 IA32 環境下操作:
# vi /etc/apt/sources.list
# apt-get update && apt-get upgrade
# apt-get install libx11-
#共享 64 環境中的 home, tmp, proc 在 /etc/fstab 中加入:
----------------------------
/home /chrrot/feisty-i386/home none bind 0 0
/tmp /chroot/feisty-i386/tmp none bind 0 0 proc
/chroot/feisty-i386/proc proc defaults 0 0
----------------------------
在當下可以運作, 但是重新開機後, tmp 和 proc 好像無法 bind, 可能是因為我的 tmp 也是經過 bind 到 /dev/shm/tmp, fstab 應是比較早執行,
我把它移到自己寫的 bind_dir script 中:
------------------
echo "Start to setup IA32 environment"
mount --bind /dev/shm/tmp /hda3/chroot/feisty-i386/tmp
echo "The IA32 /tmp is mouted to /dev/shm/tmp"
mount -t proc proc /chroot/feisty-i386/proc
echo "The IA32 proc is mouted"
mount --bind /home /chroot/feisty-i386/home
echo "The IA32 home is mounted"
echo "The IA32 environment is OK"
----------------
# cp /etc/passwd /chroot/feisty-i386/etc/
# cp /etc/shadow /chroot/feisty-i386/etc/
# cp /etc/group /chroot/feisty-i386/etc/

# apt-get install language-support-zh
?? 無法設定 locale, 並沒有出現 configuration 的畫面.
# apt-get install gnome-icon-theme gnome-themes ttf-arphic-uming
原來是用 ttf-arphic-newsung, 但是找不到, 我改用 ttf-arphic-uming

在 ia32-chroot 中執行應用程式
# chroot /hda3/chroot/feisty-i386
# su - export DISPLAY=:0 <執行應用程式>
使用 dchroot 執行 32bit 應用程式
$ apt-get install dchroot
# gedit /etc/dchroot.conf 在檔案最後面加上:
# ia32 chroot ia32 /chroot/breezy-i386 以後只要用以下方式即可執行應用程式
# dchroot -c ia32 -d <應用程式>
建立啟動圖示 在安裝完應用程式之後,將 ia32-chroot 中的應用程式啟動圖示複製到 AMD64 系統中。

在 Ubuntu 中應用程式的啟動圖示會被放到 /usr/share/applications 目錄,啟動圖示的 icon 則放在 /usr/share/pixmaps 目錄,
因此只要將 ia32-chroot 中這兩個資料夾的 *.desktop/*.xpm/*.png 項目複製到系統中的相同位置即可:
# cp /chroot/breezy-i386/usr/share/applications/*.desktop /usr/share/applications/
# cp /chroot/breezy-i386/usr/share/pixmaps/*.xpm /usr/share/pixmaps/
# cp /chroot/breezy-i386/usr/share/pixmaps/*.png /usr/share/pixmaps/

其中最後的建立啟動圖式我並沒有試, 單純留個記錄. 基本上我也不會常用 dchroot, 我自己是習慣用一個 workspace, 開一個 IA32
的 terminal, 然後所有 IA32 的行為都在裏面執行就好了!

然後在這個環境中 apt-get install firefox, apt-get install sun-java6-XXXX, 基本上就 OK 了

2007年8月9日 星期四

ubuntu feisty amd64 安裝筆記 2 - RAM disk 測試

將投資在 CPU 效能的錢移到 RAM, 當然就是想看看 RAM disk 的威力了. 我打算先買 2G, 日後等 DDR2 RAM 2G 一條價錢降到很便宜, 再一次把它加到 6G
在此先研究一下 ramdisk 怎麼做:

1 重 build kernel, 在 Kernel 中設定 ramdisk 的 default size 之後, 我設得很大, 將近 3GB,
可是我試了一下:
dd if=/dev/zero of=/dev/ram1 bs=1G count=1
整個系統卻掛掉!! 於是我改了幾個設定, bs=1024, count=XXx 云云, 後來發現到了 800MB 還 可以跑, 可是到了 900MB 系統就會掛了!

經查是 Kernel 的最大 ramdisk 大小為系統記憶體的一半!! 所以我有 2G, 最大只可以到 1G.
可是實際上比一半還小一些呢? 以後還是找出打破找出打破這一限制的方法, 否則以後如果 我加到 8GB 的 DRAM, 我相信系統記憶體也用不到 4GB!
2. 後來發現好像在 linux 2.6 使用 ramdisk 的方法更簡便了:
a) 使用 tmpfs 的方法:
在 /etc/fstab 中加上
tmpfs /tmp tmpfs size=950m,mode=1777 0 0
就可以把 /tmp mount 到 ramdisk 了!!
b) 直接使用 /dev/shm :
mkdir /dev/shm/tmp
chmod 1777 /dev/shm/tmp
mount --bind /dev/shm/tmp /tmp
就可以讓 /dev/shm/tmp binding 到 /tmp, 完全不需要 format, 看來 /dev/shm 是架在 tmpfs 之上的!

接下來只要找到方法在開機和關機 script 自動作以上的動作以及資料的同步即可

Ubuntu feisty amd64 安裝筆記 1 - 690G driver 安裝

最近我那台老電腦終於掛了, 我念了好久的組裝夢幻電腦的工作也變成勢在必行. 在幾經成本的考量下, 我決定只換掉主板, CPU, 和記憶體. 我的目標是:
1. 不超過一萬元
2. 要省電
3. 雙核
4. 記憶體要 2G
5. 要能播放 HDTV
原先我鎖定的 Core2 Duo, 怎麼算光 CPU + 主機板就要 8~9000 元. Intel 的 965G 系列內建顯示又沒有支援 HDTV, 且效能評價不佳, 我勢必要再買一塊顯示卡. 一旦加上顯卡成本和耗電又都加上來了. 因此, AMD 690G 系列主板成了我的選凙!!

最後我選擇了:
AMD BE-2350 45W NT 3100
Gigabyte GA-MA69G-S3H NT 2900
威剛ddr2 800 1G x2 NT 2900

總價約 8900, 再加上舊的主板顯卡DRAM回收, 實際花了 8000 元. 其中 BE-2350
是我在最後變更的. 本來用 x2 4000+ 或 x2 3800+ 又要再便宜 700 多! 這顆 CPU 在台灣還很新, 一開始還沒有現貨. 我覺得等到台灣每個地方都舖了還會更便宜. 但是, 以 45 W 和 65 W 比起來, 我相信長期的電費省下來還是划算, 也算是對環保盡小小心力!!

因為保留原來的硬碟, 所以一開完機, 原來的 Ubuntu feisty 就可以開機. 只是 X window 開不起來!
出現以下的錯誤:
(WW) RADEON: No matching Device section for instance (BusID PCI:1:5:0) found
(EE) No devices detected.
在網路上找一下資料, 似乎有許多人有很多問題, 有說要把 BIOS 的 HEPT 關掉云云. 但是我是單純顯示的問題. 後來參考 "ATI卡,成功安装的个人经验分享", 雖然它是獨立顯卡, 但對 690G 也適用:
1. apt-get install xorg-driver-fglrx # Video driver for ATI graphics drivers
2. ati-config --initial
3. modprobe -a
4. vi /etc/modules, 加入
fglrx
之後直接打 startx, 就成功了!!

記得有人說用 Hiweed Linux 直接就 OK!! 還有人先裝
apt-get install linux-restricted-modules-$(uname -r)
但這個我已經先裝了, 還有人用
sed -i -e 's/"ati"/"fglrx"/' /etc/X11/xorg.conf
這個我沒有執行! 也有人說在 configure X windows 時, 不要選 ati, 選 vesa, 進入後再用 ati 去設定!!

佇 Linux 來看GPX 檔案

最近定定有戶外活動。使用𤆬路機 (GPS) 來記錄行過的路線。普通我記錄路線,攏是用手機仔抑是專門个𤆬路機,罕得用電腦來看。 毋過,"仙人拍鼓有時錯,跤步踏差啥人無"。有一擺我無細膩,袂記得共一擺活動的路線收煞起來,閣直接開始記錄下一擺的活動,按呢共幾落...