linux文件系統基礎--根文件系統的理解以及製作過程

簡單的來說,我認爲根文件系統就是一種目錄結構,那麼根文件系統和普通的文件系統有什麼區別呢?我認爲根文件系統就是要包括Linux啓動時所 必須的目錄和關鍵性的文件,例如Linux啓動時都需要有init目錄下的相關文件,在Linux掛載分區時Linux一定會找/etc/fstab這個 掛載文件等,根文件系統中還包括了許多的應用程序bin目錄等,任何包括這些Linux系統啓動所必須的文件都可以成爲根文件系統。

    Linux支持多種文件系統類型,在嵌入式上常用的有:ROMFS,JFFS2,NFS,CRAMFS,YAFFS等等。在Linux系統中是通過mount命令來掛載不同的文件系統。

在ARM Linux中常用的文件系統的配置:

  • RAM Disk Driver + EXT2;
  • MTD Driver + JFFS2/YAFFS;
  • NFS;

uclinux中常見的文件系統配置爲:

  • Blkmem Driver + ROMFS(支持 Nor Flash);
  • RAM Disk Driver + ROMFS(不支持FLASH);
  • MTD Driver + JFFS2/YAFFS(支持多種flash);

   建立根文件系統的步驟:

1.創建根文件系統目錄。

2.創建各種必要的系統文件目錄。

3.創建設備文件。

4.建立啓動相關的配置文件。

5.編譯安裝庫文件glibc/uclibc。

6.編譯busybox,安裝系統軟件和應用。

這裏重點要建立啓動相關的配置文件(Linux-2.6):

創建/etc/inittab

::sysinit:/etc/init.d/rcS

::respawn:/sbin/getty 115200 s3c2410_serial0

::restart:/sbin/init

::shutdown:/bin/umount -a -r

創建/etc/init.d文件

#!/bin/sh

mount -a

/etc/init.d/udev  start

mkdir  /dev/pts

mount -t devpts devpts /dev/pts

hwclock --hctosys

ifup eth0

ifup lo

/etc/init.d/sshd start

thttpd -C /etc/thttpd.conf

建立開發板上的文件系統配置文件/etc/fstab

proc       /proc      proc      defaults    0    0

sys        /sys       sysfs     defaults    0    0

 

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