考慮在嵌入式准系統中使用CDlinux,首先考慮安裝到原生硬碟
CDlinux內建的工具是不支援安裝到未分區硬碟或者linux分區的
需要手工搞一搞
在vmware環境下測試通過
詳細過程
1. 下載cdlinux的iso,迷你版或者社區版,最新0.961
2. 安裝vmware(老版本可能要設定acmp=off)或者virtual PC等虛擬機器軟體
3. 啟用虛擬機器。虛擬1G的ide硬碟(用於類比電子盤)(開始用scsi,後面發現不行,我的vm6不支援虛擬SATA)
4. 使用fdisl –l命令可以發現未分區的硬碟(0.4.9發現不了sda,0.9.6發現了但是grub不支援)
5. 先分成2個區。分別100M/100M,一個計劃放作業系統鏡像,另一個計劃存放臨時資料
分區
Fdisk (迷你版的沒有x介面,就用字元介面了)
P
N
P 主要磁碟分割
1 分區1
1
+100M
格式化
Mkfs.ext3 /dev/sda1 註:此時虛擬磁碟並沒有擴大到100M
mount
mkdir –p /media/sda1
mount /dev/sda1 /media/sda1
cd /media/sda1
touch test
reboot
注意修改bios,從cd啟動
選擇自動掛接,則自動掛接硬碟到/media/hda1
可以看到之前touch的test還在
安裝cdlinux到硬碟
首先把grub安裝到硬碟
mkdir –p /media/sda1/boot/grub
cd /usr/lib/grub/i386-pc
cp * /media/sda1/boot/grub #從記憶體複製過去
cd /media/sda1/boot/grub
grub
root (hd0,0)
setup (hd0)
quit
開始用的scsi盤,分區沒問題,但是這一步總是失敗。。。。
搞了半天,查了grub的命令手冊也不得要領
後來懷疑是grub不支援scsi
換成ide盤。前面都一樣。Ok了
接下來複製CDlinux
cp –r /media/CDlinux/CDlinux /media/sda1
修改grub的啟動列表,從硬碟啟動
cp /media/sda1/CDLinux/boot/menu.lst /media/sda1/boot/grub
把/media/sda1/boot/grub/menu.lst中的(cd)換成(hd0,0)
去掉光碟機
重啟
Ok了。