日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux根文件系统创建过程

發布時間:2024/10/14 linux 67 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux根文件系统创建过程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

步驟一:創建根文件系統基本目錄
1.在home目錄下創建:mkdir rootfs,然后,

2.在usr/下面建立子目錄

3.在dev/下面建立字符設備文件


4安裝/etc,系統所有配置文件都在這里,注意在不同平臺(x86 arm PowerPC等)這些配置文件基本都是差不多的,所以只需要拿別人的修改就可以。(這里直接把別人的配置目錄做成一個包,拿過來直接解壓cp到rootfs里面就可以了。)

步驟二:下載內核源碼并編譯
1.從https://www.kernel.org/下載自己想要編譯的內核版本(我編譯的是linux-2.6.29)
解壓放到rootfs目錄下,然后執行:
make menuconfig //按照自己的要求進行配置得到.config文件
然后對內核進行編譯,執行:
make uImage ARCH=arm CROSS_COMPILE=arm-linux-
最后得到我們的鏡像文件:

2.編譯內核模塊,執行:
make modules ARCH=arm CROSS_COMPILE=arm-linux-
在此過程,遇到的各種問題請參考:
https://blog.csdn.net/JustDoIt_201603/article/details/87556900

步驟三:busybox的編譯和安裝
busybox(稱為嵌入式開發中的瑞士軍刀)是一個工具集(例如我們常用ls,pwd命令,及vi或vim工具),對于這些常用的命令和工具,我們沒有必要重新去開發,直接利用busybox進行移植即可。這里我用的是busybox-1.13.3,解壓到rootfs目錄下:

1.配置busybox,執行make menuconfig
提示如下錯誤:

意思是混合隱式規則和常規規則:棄用語法,起初以為是busybox包的問題,換了低版本也報同樣的錯誤,百度上說可能是由于系統make工具太新(系統:Ubuntu16.04),make舊版?? 的一些規則已經無法兼容新版make
將原來的config %config: scripts_basic outputmakefile FORCE改為:

將原來的/ %/: prepare scripts FORCE,改為:

然后重新執行:make menuconfig,進入這個Busybox Settings --->

首先設置下面第一項為yes(*表示yes),然后設置最后一項Cross Compiler prefix(交叉編譯器的前綴)的內容為arm-linux
然后進入第四項busybox的安裝選項中

設置busybox安裝路徑前綴,這里我選擇安裝到rootfs目錄下

然后退出保存設置。后面最好source /etc/profile一下。

2.編譯busybox,執行:
make ARCH=arm CROSS_COMPILE=arm-linux-
編譯完成:

3.busybox安裝
安裝之前我們/home/wangz/rootfs/bin/目錄下都是空的,然后執行安裝:

編譯完成后,會發現/home/wangz/rootfs/bin/bin多了很多指令工具:

這些指令都是鏈接命令,連接到了busybox的bin下面去了。

4.內核模塊的安裝
前面的內核模塊都只是編譯了,還沒有安裝,現在來安裝,執行:

make modules_install ARCH=arm INSTALL_MOD_PATH=/home/wangz/rootfs

5.到這里整個根文件系統都完成了。

總結

以上是生活随笔為你收集整理的linux根文件系统创建过程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。