在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

rootfs鏡像制作其實沒那么難

ZLG致遠電子 ? 2025-04-03 11:37 ? 次閱讀

嵌入式Linux開發(fā)中,文件系統(tǒng)的打包和鏡像制作是關(guān)鍵步驟。本文介紹了Linux核心板文件系統(tǒng)的打包與鏡像制作方法,適合嵌入式開發(fā)人員快速上手。


f29ea166-103c-11f0-9434-92fbcf53809c.jpg ?前言

致遠電子Linux核心板提供的系統(tǒng)固件里,除了鏡像文件之外,通常還會提供文件系統(tǒng)壓縮包。鏡像文件可以直接用于燒寫到目標板,而文件系統(tǒng)壓縮包則可以進行部分修改,修改后重新制作鏡像文件燒寫。

這里只講直接用編譯好的二進制文件對文件系統(tǒng)打包的問題。一般來說,如果自己能從源碼開始編譯文件系統(tǒng),打包文件系統(tǒng)也不會存在什么問題。


f29ea166-103c-11f0-9434-92fbcf53809c.jpg ?rootfs打包

解開壓縮包,可以看到通常包含如下目錄。

/bin /boot /dev /etc /home /lib /media /opt /proc /root /sbin /tmp /usr /var

對根文件系統(tǒng)進行修改后,再次打包成鏡像文件,由于沒有了buildroot這樣的自動化文件系統(tǒng)制作工具,這就需要特別注意:

  • 打包文件系統(tǒng)時的目錄位置、權(quán)限等,要用root權(quán)限打包,普通用戶打包會出現(xiàn)錯誤,文件系統(tǒng)不完整。
  • 不能將Linux下的tar包解壓在Windows格式的硬盤并打包。

對于文件系統(tǒng)打包位置問題,舉個例子:

$cdmyrootfs$ls$/bin /boot /dev /etc /home /lib /media /opt /proc /root /sbin /tmp /usr /var$sudo tar cvf ../myrootfs.tar * #將當前文件系統(tǒng)全部文件打包到上一級目錄


f29ea166-103c-11f0-9434-92fbcf53809c.jpg ?制作UBI文件系統(tǒng)鏡像

使用UBI文件系統(tǒng)時,有ubifs.img和ubi.img兩種不同鏡像。其中ubifs.img用于U-Boot下燒寫,而ubi.img鏡像則用于進入Linux系統(tǒng)后的更新。

1. 制作ubi燒寫鏡像

制作ubi鏡像的工具為mkfs.ubifs,有下列參數(shù):

-r:制定文件內(nèi)容的位置;

-m:頁面大小;

-e:邏輯擦除塊大小;

-p:物理擦除塊大小;

-c:最大的邏輯擦除塊數(shù)量;

-s:最小的硬件輸入輸出頁面大小,如:k9f1208為256。

特別提示,頁面大小等參數(shù)要根據(jù)內(nèi)核加載Flash分區(qū)時ubifs輸出的信息一致,否則不能啟動系統(tǒng)。

示例:

$sudo mkfs.ubifs -r rootfs -m 2048 -e 129024 -c 1948 -o ubifs.img

2. 制作ubifs鏡像

制作ubifs鏡像用到的工具為ubinize。例:

$sudo ubinize -o ubi.img -m 2048 -s 512 -p 131072 ubifs.conf

ubifs.conf的內(nèi)容如下:

[ubifs]mode=ubiimage=ubifs.imgvol_id=0vol_size=200MiBvol_type=dynamicvol_name=rootfs #建議與uboot創(chuàng)建的卷標一致vol_alignment=1vol_flags=autoresize

進入Linux后可通過ubiformat命令燒寫ubi.img,例如:

#ubiformat /dev/mtd4 -s 512 -f ubi.img


f29ea166-103c-11f0-9434-92fbcf53809c.jpg ?制作 Ext4文件系統(tǒng)制作Ext4文件系統(tǒng),一般方法是先準備好根文件系統(tǒng)內(nèi)容,然后創(chuàng)建一個鏡像文件,格式化成Ext4格式,然后將鏡像文件掛載到一個目錄并復制根文件系統(tǒng)的內(nèi)容到里面,之后卸載,最后進行一些處理。

$sudomkdirfs$sudoddif=/dev/zero of=fs.img bs=1M count=4096#創(chuàng)建初始大小的鏡像文件$sudomkfs.ext4 fs.img #格式化鏡像文件為Ext4文件系統(tǒng)$sudomount fs.img fs/ #掛載鏡像文件到fs目錄$sudocp-rfp myrootfs/* fs/ #復制根文件系統(tǒng)文件$sudoumount fs/ #卸載$sudoe2fsck -p -f fs.img #檢查文件系統(tǒng)分區(qū)是否正常$sudoresize2fs -M fs.img #調(diào)整文件系統(tǒng)鏡像大小

也可以寫成腳本將幾步操作合成一步操作,例如MX2000文件系統(tǒng)制作腳本內(nèi)容如下:

#!/bin/bashOUTPUT_FILE=data.ext4TARGET_DIR=./usrdata/ROOTFS_EXT4_REV=1ROOTFS_EXT4_LABEL="data"ROOTFS_EXT4_SIZE=3069ROOTFS_EXT4_SIZE_MB=${ROOTFS_EXT4_SIZE}MROOTFS_EXT4_INODES=0ROOTFS_EXT4_RESBLKS=5ROOTFS_EXT4_MKFS_OPTIONS="-O ^64bit -O ^has_journal"ddif=/dev/zero of=${OUTPUT_FILE}bs=1M count=${ROOTFS_EXT4_SIZE}mke2fs -d${TARGET_DIR}\ -r${ROOTFS_EXT4_REV}\ -N${ROOTFS_EXT4_INODES}\ -m${ROOTFS_EXT4_RESBLKS}\ -L"${EXT4_LABEL}"\ ${EXT4_MKFS_OPTS}\ ${OUTPUT_FILE}


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • zlg
    zlg
    +關(guān)注

    關(guān)注

    1

    文章

    67

    瀏覽量

    38408
  • 核心板
    +關(guān)注

    關(guān)注

    5

    文章

    1069

    瀏覽量

    30344
  • rootfs
    +關(guān)注

    關(guān)注

    0

    文章

    20

    瀏覽量

    4730
收藏 人收藏

    評論

    相關(guān)推薦

    Linux內(nèi)核鏡像bzImage和rootfs制作、安裝及調(diào)試過程

    一個最小可運行Linux操作系統(tǒng)需要內(nèi)核鏡像bzImage和rootfs,本文整理了其制作、安裝過程,調(diào)試命令,以及如何添加共享磁盤。
    發(fā)表于 10-14 17:28 ?7181次閱讀
    Linux內(nèi)核<b class='flag-5'>鏡像</b>bzImage和<b class='flag-5'>rootfs</b>的<b class='flag-5'>制作</b>、安裝及調(diào)試過程

    自己想做個顯示器,其實那么

    =5美元開關(guān)(可選) =2美元電位器(可選) =2美元面包板 =1美元SD卡(不能用大容量)=5美元國外項目,美元到人民幣的換算請自行查閱其實很多材料都可以回收再利用,如果你是一位經(jīng)常Make的人
    發(fā)表于 12-09 12:44

    為什么芯片那么搞?

    為啥芯片那么搞?終于有人講透了!
    發(fā)表于 05-29 17:45

    樹莓派系統(tǒng)鏡像制作

    從樹莓派帶你掌握嵌入式linux產(chǎn)品實戰(zhàn)開發(fā)–樹莓派系統(tǒng)鏡像制作(七)作者:伍俊偉 本文非作者授權(quán),禁止轉(zhuǎn)載2020年8月22日文章目錄從樹莓派帶你掌握嵌入式linux產(chǎn)品實戰(zhàn)開發(fā)--樹莓派系統(tǒng)鏡像
    發(fā)表于 11-05 09:21

    請問IMX8MP使用UUU燒錄rootfs.sdcard鏡像后,根目錄的空間還能再調(diào)整嗎?

    之后,emmc的/dev/root分區(qū)也就是1G。那么emmc剩余的十幾G的空間都是沒有分區(qū)的,有沒有辦法可以讓根文件系統(tǒng)的容量擴展到整個emmc的空間?如果直接制作十幾G的rootfs.sdcard燒錄到emmc,就燒錄得太慢
    發(fā)表于 12-30 06:49

    如何縮小制作完成的系統(tǒng)鏡像大小?

    到系統(tǒng)中工作:現(xiàn)在的問題是,制作完成的鏡像太大了,跟實際分區(qū)大小是一致的,達到了5.5GB,但是從df -h信息可以看到,鏡像加載后實際占用空間并不大,只有1GB不到。鏡像太大,一方面
    發(fā)表于 01-04 07:39

    如何在PC主機上制作Ubuntu Rootfs鏡像

    之前教程已經(jīng)講完如何替換kernel及boot 鏡像制作,今天講如何制作Ubuntu Rootfs鏡像。本文主要講解
    發(fā)表于 06-02 16:01

    用RK3588開發(fā)板燒寫rootfs結(jié)果分區(qū)大小和鏡像一樣怎么解決

      燒寫官方的就是把剩余空間都給rootfs分區(qū),燒寫剪裁的就是鏡像大小=rootfs分區(qū)大小,求助,用3588的開發(fā)板,燒寫rootfs結(jié)果分區(qū)大小和
    發(fā)表于 07-20 16:19

    如何制作光盤鏡像文件

    如何制作光盤鏡像文件 NERO軟件不管是刻錄還是做鏡像文件,都是很好用的。下面介紹一下如何制作:有的時候我們不喜歡Nero
    發(fā)表于 09-11 16:03 ?3.1w次閱讀
    如何<b class='flag-5'>制作</b>光盤<b class='flag-5'>鏡像</b>文件

    人臉識別那么,1行命令就能實現(xiàn)

    現(xiàn)在人臉識別那么火,各大手機廠商也是爭先在自己的手機上加入這種技術(shù)。那么,人臉識別技術(shù)真的很難嗎,其實不是的。下面告訴你如何用1行命令實現(xiàn)人臉識別技術(shù)。
    發(fā)表于 10-27 16:13 ?2754次閱讀
    人臉識別<b class='flag-5'>沒</b><b class='flag-5'>那么</b><b class='flag-5'>難</b>,1行命令就能實現(xiàn)

    linux系統(tǒng)鏡像制作

    Rescue開源工具來實現(xiàn)linux系統(tǒng)的打包備份,如果你經(jīng)常需要安裝很多軟件在服務器上,并且服務器較多,那么是否需要直接將你已安裝好的系統(tǒng)打包成鏡像文件,然后制作成你自己的系統(tǒng),之后只需要直接安裝就可以了。
    發(fā)表于 11-03 14:34 ?4820次閱讀
    linux系統(tǒng)<b class='flag-5'>鏡像</b><b class='flag-5'>制作</b>

    小衛(wèi)星制造沒有那么,其實和IT攢機差不多

    小衛(wèi)星這種東西,一旦上了量搞起產(chǎn)業(yè)化,全球競爭起來搞不好就白菜化了。本來也那么神秘,說穿了和IT攢機或者嵌入式系統(tǒng)研發(fā)差不多。以后全球小衛(wèi)星組網(wǎng),也說不定是中國干成的。
    的頭像 發(fā)表于 02-07 14:48 ?6702次閱讀
    小衛(wèi)星制造沒有<b class='flag-5'>那么</b><b class='flag-5'>難</b>,<b class='flag-5'>其實</b>和IT攢機差不多

    芯片本質(zhì)是什么 芯片制作為什么那么

      為什么制作一塊芯片那么?   制作一塊芯片的難度如同創(chuàng)造一座城市,甚至比創(chuàng)造城市更難!   從華為中興等一系列中國企業(yè)被芯片制裁,到中國勒緊褲腰帶造芯片,再到2022
    的頭像 發(fā)表于 04-19 14:45 ?2.4w次閱讀
    芯片本質(zhì)是什么  芯片<b class='flag-5'>制作</b>為什么<b class='flag-5'>那么</b><b class='flag-5'>難</b>

    linux鏡像制作工具

    Linux鏡像制作工具是一類非常重要的工具,可以用于創(chuàng)建定制的Linux操作系統(tǒng)鏡像。這些工具可以幫助開發(fā)人員、系統(tǒng)管理員和Linux愛好者創(chuàng)建個性化的Linux發(fā)行版、定制化的嵌入式操作系統(tǒng)以及
    的頭像 發(fā)表于 11-23 09:56 ?2532次閱讀

    Docker-鏡像的分層-busybox鏡像制作

    docker hub里面查看busybox的Dockerfile, 知識點4:bootfs 和 rootfs? 知識點5:為什么Docker鏡像要采用這種分層結(jié)構(gòu)? 如果多個容器共享一份基礎鏡像,當某個
    的頭像 發(fā)表于 01-15 10:44 ?369次閱讀
    Docker-<b class='flag-5'>鏡像</b>的分層-busybox<b class='flag-5'>鏡像</b><b class='flag-5'>制作</b>
    主站蜘蛛池模板: 亚洲大成色www永久网址 | 高清不卡免费一区二区三区 | 午夜啪啪片 | 欧美作爱福利免费观看视频 | 国产美女久久 | 亚洲高清国产一线久久 | 欧美午夜网站 | 午夜剧场黄色 | 三级五月天 | 日本一级高清不卡视频在线 | 黄色网址在线免费观看 | 欧美福利在线播放 | 特级中国aaa毛片 | 狠狠色噜噜狠狠色综合久 | 国产普通话一二三道 | 国产操视频 | 亚洲精品美女久久久久网站 | 黄视频网站观看 | 欧洲精品不卡1卡2卡三卡 | 嫩草影院播放地址一二三 | 中文字幕在线观看第一页 | 午夜影院免费在线观看 | 日韩欧美中文字幕在线播放 | 欧美第一色 | 操美女大逼逼 | 国产精品爽爽影院在线 | 日本三级特黄 | 国产在线97色永久免费视频 | 午夜毛片视频高清不卡免费 | 国产一区二区三区在线观看视频 | 最新版天堂中文在线官网 | 狠狠操狠狠干 | 亚洲国产欧美精品一区二区三区 | 久热首页| 亚洲开心激情网 | 日本色片视频 | 俺也去第四色 | 天天澡天天干 | 丁香婷婷综合五月综合色啪 | 亚洲国产色图 | 欧美一卡二卡3卡4卡无卡六卡七卡科普 |