iPaq或Casio機器上跑Linux(轉)
iPaq或Casio機器上跑Linux(轉)[@more@]來自Hi-Pda的訊息,網友飛來的豬投稿,他在自己的Casio E-115上安裝了PocketLinux,而且是可逆的。
幾個月前Hi-Pda上曾經貼過“現在已經有iPaq上用linux”的文章,不過那個時候在iPaq上裝linux是不可逆的過程,裝了linux就不能再裝回WinCE了,很少人肯去試試?現在就有點不一樣了,Pocket Linux1.0正式版出現了,不僅在iPaq上可以安裝Linux,還可以在Casio機器上安裝Linux呢。最重要的是,你如果不喜歡,還可以重灌回來!
說到這裡,有些人可能不相信,iPaq用的是Flash Rom,可以改寫作業系統的內容,iPaq可以升級WinCE的版本,所以用Linux也是可能的,但是我們都知道Casio用的是Mask Rom,不可能重寫,怎麼可能裝Linux呢?
硬體底層的東西一時我也不太瞭解,從Pocket Linux的文件來看,它的過程是這樣的:先從WinCE啟動機器->然後自動執行cyace.exe來切換控制權->Linux接過系統控制權->從CF卡load Linux的核心->啟動完成。
這篇我就重點說Casio機器上裝linux吧(因為我的機器是Casio E-115),有空再說iPaq。
按照文件來看,只要是基於MIPS系統都有可能安裝linux,現在已知支援的有Casio E100、E105、E115。由於Casio沒有Flash Rom,Linux必須從WinCE Load,因此需要在WinCE中安裝bootloader(引導啟動)、kernel(系統核心)、root filesystem(root檔案系統),這些都要安裝在Compact Flsah卡中。
在做一個啟動PocketLinux的CF卡之前必須注意以下事項:
1.一塊>=32Mb的CF卡
所需的CF卡越大越好,至少......如果只有一塊8Mb的卡是不適合開發Linux的(由於Linux的kernel並不大,其實8Mb就夠了,不過只有系統核心就如同沒有任何應用程式的空白作業系統,什麼也不能用......)
2.一個安裝Linux系統的機器和一個讀卡器(對CF卡要可讀寫)一些CF相關裝置是可以在Linux中工作的,不過大多數需要USB支援,所以需要支援USB的kernel,有時Linux中USB支援的裝置工作不穩定,甚至會造成整個系統的Down掉。
3.vmlinux-stripped - 用於CE機器上的Linux 的核心繫統(kernel)在可以下載
4.pocketlinux.tar.gz - PocketLinux執行需要的檔案
5.cyace.exe - bootloader程式(有點象SystemCommander)
CyaCE是一個開放式的程式,可以在下載
6.還需要一些工具,用於Linux的root 檔案系統。
root-small.tar.gz - a cut down Linux filesystem.
root-large.tar.gz - a larger filesystem.
然後要Format CF卡,CF卡必須至少有兩個分割槽,一個windows格式,存放bootloader和kernel,另一個Linux 分割槽放Linux啟動後所用的一切......(CF卡也要分割槽,各位沒有想過吧),建議分第三個區存放使用者檔案,那麼系統的root區就可以設為只讀以防一些意外事件。
CF卡上的分割槽建議為:
1./dev/sdb1 - vfat - 2.5Mb - windows partition
2./dev/sdb2 - ext2 - 5Mb - PocketLinux read/write partition
3./dev/sdb3 - ext2 - 其餘空間 - root partition
使用fdisk分割槽後這樣格式化:
# mkfs.msdos /dev/sdb1
# mkfs.ext2 /dev/sdb2
# mkfs.ext2 /dev/sdb3
好了,現在安裝CyaCE(安裝開始嘍...)
copy cyace.exe和cyacecfg.txt和kernel到CF卡的windows分割槽。
編輯cyacecfg.txt以指向正確的kernel映象(要有Linux知識哦......)
# mount /dev/sdb1 /mnt/sdb1 -t vfat
# cp vmlinux /mnt/sdb1
# cp cyace.exe /mnt/sdb1
# cp cyacecfg.txt /mnt/sdb1
# umount /mnt/sdb1
接著安裝Linux檔案系統
基本的Linux file system要放在第三個分割槽(This must be done as root to allow the device files to be created)
# mount /dev/sdb3 /mnt/sdb3 -t ext2
# cd /mnt/sdb3
# tar zxvf ~/root-.tar.gz
# tar zxvf ~/pocketlinux.tar.gz
啟動!!!
大多數機器上,啟動Linux要執行cyace.exe(從CE的檔案管理器執行),Casio E100/E105/E115可以設定Linux為“當CF卡插如時自動啟動”(把cyace和kernel放在CF卡的CE/R4100目錄中,把cyace.exe改名為AutoRun.exe)。一旦系統核心(kernel)啟動,PocketLinux會執行SysV初始,預設PocketLinux是run-level 5。
裝置連線:
最簡單的方法是透過minicom這樣的終端模擬來建立序列連線,預設情況下是PPP連線。命令如下(假設裝置是接在ttyS0(com1)):pppd /dev/ttyS0 115200 noauth nodetach nocrtscts local persist proxyarp :
ip1和ip2是source(PC)和destination(CE機)的IP地址。大多數情況下需要root的許可權。一旦連線建立,你可以用telnet -l root
好啦,安裝部分講完了。有人願意試一下嗎?拿出一個別人看不懂的機器......有幾點要注意:
一是tvt-make-cf這個script不要去使用,據說還不穩定,原句是"Since this script must be run as root it could potentially do VERY BAD THINGS to your system if not configured correctly. "
二是裝了Linux,原來CE系統記憶體中儲存的程式也會被幹掉,先backup一下吧。
安裝在ram裡面好象也是可以的,不過據說不方便。
恢復原來的CE:
拿下主電池,Reset吧......
裝完了有些什麼呢?Application Launcher,Address Book,News,Memo Pad,email Themes,Simple Calculator,Layout Test,User Info......
講完啦,有人聽嗎?(臺下扔來臭雞蛋和爛番茄......)有興趣的話下次可以再深入一點,或是有iPaq的人想看看(也可以restore的哦)。
--更詳細的情況請見
後文:
從這篇文章可以引出一個有趣的推論:既然linux都可以啟動,那麼CE升級版也應該可以啟動嘍,以後的CE4.0 5.0也可以從CF卡上 啟動啊,要什麼flash rom呢?CE裝置的廠商們啊......不要再出什麼Casio E900了,給我一個CF卡啟動的方案吧......
幾個月前Hi-Pda上曾經貼過“現在已經有iPaq上用linux”的文章,不過那個時候在iPaq上裝linux是不可逆的過程,裝了linux就不能再裝回WinCE了,很少人肯去試試?現在就有點不一樣了,Pocket Linux1.0正式版出現了,不僅在iPaq上可以安裝Linux,還可以在Casio機器上安裝Linux呢。最重要的是,你如果不喜歡,還可以重灌回來!
說到這裡,有些人可能不相信,iPaq用的是Flash Rom,可以改寫作業系統的內容,iPaq可以升級WinCE的版本,所以用Linux也是可能的,但是我們都知道Casio用的是Mask Rom,不可能重寫,怎麼可能裝Linux呢?
硬體底層的東西一時我也不太瞭解,從Pocket Linux的文件來看,它的過程是這樣的:先從WinCE啟動機器->然後自動執行cyace.exe來切換控制權->Linux接過系統控制權->從CF卡load Linux的核心->啟動完成。
這篇我就重點說Casio機器上裝linux吧(因為我的機器是Casio E-115),有空再說iPaq。
按照文件來看,只要是基於MIPS系統都有可能安裝linux,現在已知支援的有Casio E100、E105、E115。由於Casio沒有Flash Rom,Linux必須從WinCE Load,因此需要在WinCE中安裝bootloader(引導啟動)、kernel(系統核心)、root filesystem(root檔案系統),這些都要安裝在Compact Flsah卡中。
在做一個啟動PocketLinux的CF卡之前必須注意以下事項:
1.一塊>=32Mb的CF卡
所需的CF卡越大越好,至少......如果只有一塊8Mb的卡是不適合開發Linux的(由於Linux的kernel並不大,其實8Mb就夠了,不過只有系統核心就如同沒有任何應用程式的空白作業系統,什麼也不能用......)
2.一個安裝Linux系統的機器和一個讀卡器(對CF卡要可讀寫)一些CF相關裝置是可以在Linux中工作的,不過大多數需要USB支援,所以需要支援USB的kernel,有時Linux中USB支援的裝置工作不穩定,甚至會造成整個系統的Down掉。
3.vmlinux-stripped - 用於CE機器上的Linux 的核心繫統(kernel)在可以下載
4.pocketlinux.tar.gz - PocketLinux執行需要的檔案
5.cyace.exe - bootloader程式(有點象SystemCommander)
CyaCE是一個開放式的程式,可以在下載
6.還需要一些工具,用於Linux的root 檔案系統。
root-small.tar.gz - a cut down Linux filesystem.
root-large.tar.gz - a larger filesystem.
然後要Format CF卡,CF卡必須至少有兩個分割槽,一個windows格式,存放bootloader和kernel,另一個Linux 分割槽放Linux啟動後所用的一切......(CF卡也要分割槽,各位沒有想過吧),建議分第三個區存放使用者檔案,那麼系統的root區就可以設為只讀以防一些意外事件。
CF卡上的分割槽建議為:
1./dev/sdb1 - vfat - 2.5Mb - windows partition
2./dev/sdb2 - ext2 - 5Mb - PocketLinux read/write partition
3./dev/sdb3 - ext2 - 其餘空間 - root partition
使用fdisk分割槽後這樣格式化:
# mkfs.msdos /dev/sdb1
# mkfs.ext2 /dev/sdb2
# mkfs.ext2 /dev/sdb3
好了,現在安裝CyaCE(安裝開始嘍...)
copy cyace.exe和cyacecfg.txt和kernel到CF卡的windows分割槽。
編輯cyacecfg.txt以指向正確的kernel映象(要有Linux知識哦......)
# mount /dev/sdb1 /mnt/sdb1 -t vfat
# cp vmlinux /mnt/sdb1
# cp cyace.exe /mnt/sdb1
# cp cyacecfg.txt /mnt/sdb1
# umount /mnt/sdb1
接著安裝Linux檔案系統
基本的Linux file system要放在第三個分割槽(This must be done as root to allow the device files to be created)
# mount /dev/sdb3 /mnt/sdb3 -t ext2
# cd /mnt/sdb3
# tar zxvf ~/root-.tar.gz
# tar zxvf ~/pocketlinux.tar.gz
啟動!!!
大多數機器上,啟動Linux要執行cyace.exe(從CE的檔案管理器執行),Casio E100/E105/E115可以設定Linux為“當CF卡插如時自動啟動”(把cyace和kernel放在CF卡的CE/R4100目錄中,把cyace.exe改名為AutoRun.exe)。一旦系統核心(kernel)啟動,PocketLinux會執行SysV初始,預設PocketLinux是run-level 5。
裝置連線:
最簡單的方法是透過minicom這樣的終端模擬來建立序列連線,預設情況下是PPP連線。命令如下(假設裝置是接在ttyS0(com1)):pppd /dev/ttyS0 115200 noauth nodetach nocrtscts local persist proxyarp :
ip1和ip2是source(PC)和destination(CE機)的IP地址。大多數情況下需要root的許可權。一旦連線建立,你可以用telnet -l root
好啦,安裝部分講完了。有人願意試一下嗎?拿出一個別人看不懂的機器......有幾點要注意:
一是tvt-make-cf這個script不要去使用,據說還不穩定,原句是"Since this script must be run as root it could potentially do VERY BAD THINGS to your system if not configured correctly. "
二是裝了Linux,原來CE系統記憶體中儲存的程式也會被幹掉,先backup一下吧。
安裝在ram裡面好象也是可以的,不過據說不方便。
恢復原來的CE:
拿下主電池,Reset吧......
裝完了有些什麼呢?Application Launcher,Address Book,News,Memo Pad,email Themes,Simple Calculator,Layout Test,User Info......
講完啦,有人聽嗎?(臺下扔來臭雞蛋和爛番茄......)有興趣的話下次可以再深入一點,或是有iPaq的人想看看(也可以restore的哦)。
--更詳細的情況請見
後文:
從這篇文章可以引出一個有趣的推論:既然linux都可以啟動,那麼CE升級版也應該可以啟動嘍,以後的CE4.0 5.0也可以從CF卡上 啟動啊,要什麼flash rom呢?CE裝置的廠商們啊......不要再出什麼Casio E900了,給我一個CF卡啟動的方案吧......
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617542/viewspace-947724/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 銳評新版卡西歐casio計算器
- 在Linux機器上安裝執行Oracle(三)(轉)LinuxOracle
- 在Linux機器上安裝執行Oracle(二)(轉)LinuxOracle
- 虛擬機器上網(轉)虛擬機
- 【Mysql】針對跑mysql的linux機器的最佳化經驗MySqlLinux
- 機器人跑酷時代就要來了機器人
- 將虛擬機器跑在ceph之中虛擬機
- RC-u3 跑團機器人機器人
- Win10工作列跑右側或上邊的解決辦法Win10
- 用非開發組機器跑專案
- 虛擬機器上單個linux 搭建standby虛擬機Linux
- Laravel 跑在 swoole 上Laravel
- Android 智慧手機或平板電腦上執行 Linux 的方法AndroidLinux
- linux之SecureCRT上傳或下載LinuxSecurecrt
- 讓雙CPU的linux機器自動關機(轉)Linux
- Linux上安裝GCC編譯器過程(轉)LinuxGC編譯
- Linux 或 Windows 上實現埠對映LinuxWindows
- 轉:虛擬機器中為Linux新增硬碟虛擬機Linux硬碟
- 香橙派5plus上跑雲手機方案二 waydroid
- Linux:成熟收穫或泡沫破裂(轉)Linux
- 如何在 Linux 上安裝 MariaDB 或 MySQLLinuxMySql
- [轉]在ESXi主機上關閉無響應的虛擬機器虛擬機
- Linux上的sysctl(轉)Linux
- 小米新機跑分成績曝光?或將推出入門級智慧手機Pocophone F1 Lite
- 定時備份windows機器上的檔案到linux伺服器上的操作梳理(rsync)WindowsLinux伺服器
- 縮減Azure上Linux虛擬機器系統盤容量Linux虛擬機
- 在VMware上安裝CentOS版本的Linux虛擬機器CentOSLinux虛擬機
- Linux虛擬機器安裝配置到專案上架Linux虛擬機
- 在虛擬機器VMware上安裝Linux系統教程虛擬機Linux
- 如何在你的Linux機器上安裝執行OracleLinuxOracle
- 透明的閘道器:在Linux上執行IPchains(轉)LinuxAI
- 虛擬機器上學習Linux運維?學linux有什麼用虛擬機Linux運維
- linux無法上網或聯網怎麼辦?Linux
- 如何檢視Linux上程式或程式用到的庫Linux
- 用putty上傳window檔案到linux或unixLinux
- 如何在 Alpine Linux 上啟用或禁用防火牆?Linux防火牆
- 虛擬機器跑Ubuntu沒有網路的解決方案虛擬機Ubuntu
- PHP 程式跑在 Windows 服務上PHPWindows