在CF卡上建立文件系統和安裝引導加載程序

CF卡在嵌入式工控領域越來越多的被應用,如何在CF卡上構建嵌入式linux是開發中一個基礎但非常重要的過程!

本文介紹在CF卡上建立用於PC104板卡上的根文件系統,着重介紹了針對CF卡的操作,至於具體文件系統的製作,網上教程很多,就不具體羅列了。

1. 將CF卡用讀卡器插入PC機;
2. fdisk -l
該命令會列出所有磁盤及其分區,找到CF卡相對應的盤符,
如"/dev/sdb1"。
3. fdisk /dev/sdb
執行該命令後即可對CF卡分區了,鍵入"d"即爲刪除分區,
鍵入"n"即爲新建一個分區,注意,在創建分區後要鍵
入"w"纔會將分區情況保存下來,否則此次分區不會對
CF卡起作用,最後鍵入"q"退出。(假設現在我們刪除了
所有分區,然後創建了一個分區)。
4. fdisk -l
查看一下創建的分區名稱(這裏假設上一步創建的分區爲/dev/sdb1)。
4. mkfs.ext2 /dev/sdb1
該命令將/dev/sdb1分區格式化爲ext2文件系統類型。
6. mkdir /mnt/cf
mount /dev/sdb1 /mnt/cf
上面mount命令執行後,進入CF卡的目錄了,就可以製作具體的文件系統了。

但是要製作一個能從CF卡啓動的linux系統還要安裝引導裝載程序,這個在下篇裏介紹。



上一篇文章簡單介紹瞭如何針對linux在CF卡上分區、格式化並製作文件系統,現在介紹一下在CF卡上安裝grub的步驟。

針對linux有很多不同的引導裝載程序,如針對X86處理器的grub和lilo,針對ARM處理器系列的uboot,以及vivi等等。其中uboot支持的處理器架構比較多,功能強大,但是移植過程也比較繁瑣,因爲要針對具體的硬件以及需求進行移植。而grub與lilo的安裝移植比較簡單,只需幾個命令,針對上一篇文章介紹的PC104板卡是X86架構的,因此本文介紹一下grub在CF卡上的安裝。

在CF卡上安裝引導裝載程序grub的步驟(以grub-0.97爲例):
準備工作:下載grub源碼grub-0.97.tar.gz,放入/usr/local/src/目錄中。
1. cd /usr/local/src
2. tar zxvf grub-0.97.tar.gz
3. cd grub-0.97
4. ./configure
5. make
6. make install
7. 上一步完成後會在/usr/local/lib目錄下生成一個grub的目錄(也有可能
在其他的目錄,取決於相關的環境變量),將生成的grub目錄中的所有文
件複製到CF卡上的boot/grub/中,另外把/usr/local/src/grub-0.97/grub/
中的可執行文件grub複製到CF卡的boot/grub中,然後進入CF卡的boot/grub,
執行命令"./grub",出現grub的命令行,輸入"find /boot/grub/stage1",
會有一行輸出如"root (hd1,0)",接着輸入"root (hd1,0)",回車後輸
"setup (hd1)",若出現了success相關輸出,即表示在CF卡上成功安裝了
引導裝載程序grub!
8. 在grub命令行下輸入"quit"。
9. ln -s grub.conf menu.lst

這樣,grub就以及安裝完畢了,接着編輯CF卡上相關目錄中的grub.conf文件,具體grub.conf的內容網上教程很多,不具體列出來。

在成功移植linux內核、文件系統並編寫相應的啓動初始化腳本後,將CF卡插入PC104板卡的CF卡插槽,上電啓動,即可啓動完全屬於你的嵌入式linux了。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章