如何將zynq7000自帶的ramdisk8M文件系統擴到ramdisk24M製作

   由於zynq7000自帶的文件系統(ramdisk)大小爲8M的,在開發過程中需要移植一些庫到文件系統,
所以需要給文件系統擴容,從新自己製作新的文件系統,現在把製作方法介紹如下:
1.用dd命令製作鏡像文件
使用dd軟件製作鏡像文件並將上述我們製作的rootfs_zed中的內容拷貝到鏡像文件中,具體命令如下:
#sudo  ----------切換到root模式下
#cd /home/filesystem  ---------進入到filesystem目錄
#dd if=/dev/zero of=ramdisk24M.image bs=1024 count=24576  -----此處設置爲24M
dd命令的解釋如下:
dd作用是用指定大小的塊拷貝一個文件,並在拷貝的同時進行指定的轉換
主要選項:
if=file        輸入文件名,默認爲標準輸入
of=file        輸出文件名,默認爲標準輸出
ibs=bytes      一次讀入bytes個字節(即一個塊大小爲bytes個字節)
obs=bytes      一次寫入bytes個字節
bs=bytes       同時設置讀和寫的塊大小爲bytes
cbs=bytes      一次轉換bytes個字節
skip=blocks    從輸入文件開頭跳過blocks個塊後再開始複製
seek=blocks    從輸出文件開頭跳過blocks個塊後再開始複製
count=blocks   僅僅拷貝blocks個塊,塊大小等於ibs指定的字節數
2.將鏡像文件製作成ext2格式的文件系統
#mke2fs -F ramdisk24M.image -L "ramdisk" -b 1024 -m 0 
mke2fs的命令解釋如下:
一般用法:
mke2fs -F 設備 -L 標籤名稱 -m xx% -b 區塊大小
-b<區塊大小> 指定區塊大小,單位爲字節。
-c 檢查是否有損壞的區塊。
-f<不連續區段大小> 指定不連續區段的大小,單位爲字節。
-F 不管指定的設備爲何,強制執行mke2fs。
-i<字節> 指定"字節/inode"的比例。
-N<inode數> 指定要建立的inode數目。
-l<文件> 從指定的文件中,讀取文件西中損壞區塊的信息。
-L<標籤> 設置文件系統的標籤名稱。
-m<百分比值> 指定給管理員保留區塊的比例,預設爲5%。
-M 記錄最後一次掛入的目錄。
-q 執行時不顯示任何信息。
-r 指定要建立的ext2文件系統版本。
-R=<區塊數> 設置磁盤陣列參數。
-S 僅寫入superblock與group descriptors,而不更改inode able inode 
 bitmap以及block bitmap。
-v 執行時顯示詳細信息。
-V 顯示版本信息。
3. 使用tune2fs調整生成的文件系統的參數
   # tune2fs ramdisk24M.image -i 0   --------不進行自檢
   tune2fs調整和查看ext2/ext3文件系統的文件系統參數
   tune2fs -l 查看文件系統信息
  -i 設置[d|m|w] 設置強制自檢的時間間隔
4. 將以前自帶的文件系統的內容拷貝到新生成的image文件中,這個就不詳細解介紹了,可以參
   看我的另一篇博客:
   [zynq開發中如何向文件系統裏添加自己的程序](http://blog.csdn.net/yhg20090519/article/details/52972108)
5. 我們將文件系統擴容後,在啓動過程中可能會報錯,報錯的原因是在內核配置裏預留的
 啓動內存空間不夠引起的,所以需要改內核的配置,從新編譯,內核配置要改的地方如下:
 # make ARCH=arm menuconfig                                          

這裏寫圖片描述

這裏寫圖片描述

這裏寫圖片描述
配置好後重新編譯內核,至此所有操作就結束了。

發佈了8 篇原創文章 · 獲贊 7 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章