~ >: dmesg | grep mtdblock
kernel command
line: console=tty0
console=ttys0,115200
root=/dev/mtdblock2
rootfstype=jffs2
init=/linuxrc
mem=64m
rwnoinitrd
loglevel=7
0x000000000000-0x000000100000 : "mtdblock0 u-boot 1mb"
0x000000100000-0x000001000000 : "mtdblock1 kernel 15mb"
0x000001000000-0x000003800000 : "mtdblock2 rootfs 40mb"
0x000008800000-0x00000d800000 : "mtdblock4 data 80mb"
0x00000d800000-0x000010000000 : "mtdblock5 backup 40mb"
檢視linux核心分割槽表
~ >: cat /proc/partitions
major minor #blocks name310
1024 mtdblock0
31115360 mtdblock1
31240960 mtdblock2
31381920 mtdblock3
31481920 mtdblock4
31540960 mtdblock5
檢視分割槽對應的塊裝置
~ >: ls -l /dev/mtdblock*
brw-rw
----
1 root root 31, 0 nov 3
18:33 /dev/mtdblock0
brw-rw
----
1 root root 31, 1 nov 3
18:33 /dev/mtdblock1
brw-rw
----
1 root root 31, 2 nov 3
18:33 /dev/mtdblock2
brw-rw
----
1 root root 31, 3 nov 3
18:33 /dev/mtdblock3
brw-rw
----
1 root root 31, 4 nov 3
18:33 /dev/mtdblock4
brw-rw
----
1 root root 31, 5 nov 3
18:33 /dev/mtdblock5
以 mtdblock5 為例將其以jffs2檔案系統格式掛載到 /info 掛載點上:
~ >: flash_eraseall /dev/mtd5
erasing
128kibyte @ 22c0000 - 86% complete.
skipping bad block at 0x022e0000
erasing
128kibyte @ 2800000 - 100% complete.
~ >: mount -t jffs2 /dev/mtdblock5 /info/
~ >: mount
rootfs on / type rootfs (rw)
/dev/root on / type jffs2 (rw,relatime)
proc on /proc
type proc (rw,relatime)
usbfs on /proc/bus/usb type usbfs (rw,relatime)
tmpfs on /dev type tmpfs (rw,relatime)
ramfs on /tmp type ramfs (rw,relatime)
sysfs on /sys type sysfs (rw,relatime)
devpts on /dev/pts type devpts (rw,relatime,mode=600)
/dev/mtdblock5 on /info type jffs2 (rw,relatime)
可以看到/info掛載系統為jffs。
我們建立乙個hello檔案來實驗一下,並重啟系統,檢視檔案存在情況。
~ >: touch /info/hello
~ >: ls /in
info/ init
~ >: ls /info/
hello
~ >: reboot
系統重啟後,發現並不會自動掛載/dev/mtdblock5到/info路徑下需要我們手動命令掛載才能看到/info路徑下的hello檔案存在.
~ >: ls /info/
~ >:
~ >: mount -t jffs2 /dev/mtdblock5 /info/
~ >: ls /info/
hello
~ >:
那麼就會引申乙個問題,如何讓系統重啟的時候就自動將/dev/mtdblock5以jffs2檔案系統格式掛載到/info路徑下?
我們知道,,linux系統啟動的最後啟動init程序,而讀init程序就是根據/etc/inittab這個檔案來在不同的執行級別啟動相應的程序或執行相應的操作,所以我們只需要將掛載操作寫進inittab檔案裡面即可。
通過系統檔案提供的資訊,我們找到了fstab檔案
~ >: cat /etc/fstab
/dev/root / ext2 rw,noauto 0
1proc /proc
proc defaults 0
0usbfs /proc/bus/usb usbfs defaults 0
0tmpfs /dev tmpfs defaults 0
0ramfs /tmp ramfs defaults 0
0sysfs /sys sysfs defaults 0
0
我們在fstab裡面將/dev/mtdblock5新增掛載進去,重啟掛載就可以了
~ >: cat etc/fstab
/dev/root / ext2 rw,noauto 0
1proc /proc
proc defaults 0
0usbfs /proc/bus/usb usbfs defaults 0
0tmpfs /dev tmpfs defaults 0
0ramfs /tmp ramfs defaults 0
0sysfs /sys sysfs defaults 0
0/dev/mtdblock5 /info jffs2 defaults 0
0~ >: mount -a
~ >: mount -o remount /dev/mtdblock5
~ >:reboot
jffs2映象製作及掛載
一 用mkfs.jffs2 命令製作jffs2映象檔案 或者使用命令 apt get install mtd utils 命令使用例項 mkfs.jffs2 s 0x1000 e 0x40000 p 0x500000 d rootfs o jffs2.img 說明 頁大小0x1000 4k 塊大小0...
jffs2映象製作和掛載
用mkfs.jffs2 命令製作jffs2映象檔案 或者使用命令 apt get install mtd utils 命令使用例項 mkfs.jffs2 s 0x1000 e 0x40000 p 0x500000 d rootfs o jffs2.img 說明 頁大小0x1000 4k 塊大小0x4...
製作JFFS2映象以及掛載到PC
用mkfs.jffs2 命令製作jffs2映象檔案 或者使用命令 apt get install mtd utils 命令使用例項 mkfs.jffs2 s 0x1000 e 0x40000 p 0x500000 d rootfs o jffs2.img 說明 頁大小0x1000 4k 塊大小0x4...