手機安裝完之後,接下來可以更新手機裡linux系統的kernel module好支援各種咚咚.
不過在那之前,透過那個小小的手機螢幕,要在手機畫面上的小terminal,按到小小的英文螢幕鍵盤來下linux指令實在是一件痛苦的事情.
所以在玩裡面的系統之前,得先把openmoko與linux主機的usb網路連線先搞定會比較方便.
usb連線的教學在http://wiki.openmoko.org/wiki/USB_Networking網頁上有.
不過由於透過usb連線跑tcpip之前沒碰過,所以在gentoo的環境下自己得先摸索一下.
從 http://www.linux-usb.org/usbnet/ 看了一下.要在usb上跑tcpip,需要kernel的支援,
這台gentoo的kernel之前並沒有把這部份功能掛進來,所以就得從kernel那邊開始.
先去/usr/src/linux下make menuconfig找找看跟usbnet相關的選項.
<M> Simple USB Network Links (CDC Ethernet subset)
找到上面的選項之後,選M 用module的方式來掛進kernel.
執行 make modules;make modules_install把module compile出來與安裝.
執行modprobe usbnet把module掛進kernel.
再來就可以開始進行連線的設定了.
http://wiki.openmoko.org/wiki/USB_Networking剛好有Gentoo的設定方式,
所以就照著作:
先設定Openmoko上面的網路<—-這段還是得痛苦的用手機畫面慢慢點.
在openmoko上打開terminal
然後要編輯/etc/resolv.conf
輸入 nameserver xxx.xxx.xxx.xxx
e.g. nameserver 192.168.1.1
而目前呢,手機上果然只有vi可以用來編輯這個檔案. 這下小小的英文鍵盤還要切來切去才能下vi的指令了.
在gentoo上面的設定 就照著網頁上的方式來作
- Open /etc/conf.d/net and add:
# for Neo1973
config_usb0=( "192.168.0.200 netmask 255.255.255.0" )
routes_usb0=( "192.168.0.202/32 via 192.168.0.200" )
- Create a new init script:
cd /etc/init.d
ln -s net.lo net.usb0
設定完usb的網路設定,就可以執行
/etc/init.d/net.usb0 start 把網路跑起來.
由於我們的gentoo上有使用iptables的防火牆,所以接下來的設定也是需要跟著作,網路才會通.
- Put iptables into use:
iptables -I INPUT 1 -s 192.168.0.202 -j ACCEPT
iptables -I OUTPUT 1 -s 192.168.0.200 -j ACCEPT
iptables -A POSTROUTING -t nat -j MASQUERADE -s 192.168.0.0/24
- Store them
/etc/init.d/iptables save
最後就開始嘗試連線了.
執行ssh 192.168.0.202 -l root
然後default 手機上面的root沒設密碼直接就可以進去了.
這樣就可以透過linux上的連線盡量作設定ex.其他的kernel module的install等,而不需要用那個小小的螢幕了.