Linux 系统中有关mtd和ubi的接口:
(1) cat /proc/mtd:可以看到当前系统的各个mtd情况,
(2) cat /proc/partitions: 分区信息,有上面的类似
(3) cat /sys/class/ubi/ubi0/*:当前系系统的ubi情况
(4) ls /dev/ubi*, 查看设备节点

假设我们想在mtdblock1上加载ubifs文件系统,步骤如下:
(1)./ubiformat /dev/mtd1  -----格式化mtdblock1
(2)./ubiattach /dev/ubi_ctrl -m 1  -d 2 -----将mtdblock1与ubi2建立连接,命令输出如下:
[  977.342492] UBI: attaching mtd1 to ubi2
[  977.346417] UBI: physical eraseblock size:   131072 bytes (128 KiB)
[  977.352631] UBI: logical eraseblock size:    126976 bytes
[  977.357948] UBI: smallest flash I/O unit:    2048
UBI device number 2, total 2000 LEBs (253952000 bytes, 242.2 MiB), available 1976 LEBs (250904576 bytes, 239.3 MiB), LEB size 126976 bytes (124.0 KiB)

3) ls /sys/class/ubi/  -----可以看到该目录下增加了一个ubi2的子目录
(4) cat /sys/class/ubi/ubi2/dev  -----可以得到该ubi2设备的主次设备号,如249:0
(5) cat /sys/class/ubi/ubi2/volumes_count  -----结果为0,表示该ubi上没有任何volume
(6) ls /dev/ubi*  -----如果/dev中没有ubi2, 则手工创建“mknod /dev/ubi2 c 249 0”
(7) ./ubimkvol /dev/ubi2 -s 100MiB -N my_ubi_vol  -----在ubi2上创建一个volume
(8) ls /sys/class/ubi/  -----可以看到该目录下增加一个ubi2_0的目录,代表ubi2上的第一个volume,如果哦“cat /sys/class/ubi/ubi2_0/name”, 你可以得到“my_ubi_vol”,这就是(7)中的名字。
(9) cat /sys/class/ubi/ubi2_0/dev  -----得到该volume的主次设备号,如249:1
(10) mknod /dev/ubi2_0 c 249 1   -----如果/dev中没有ubi2_0, 则需要手工创建
(11) mount -t ubifs ubi2_0 /mnt   -----将ubi2_0挂载到本地目录 /mnt上,
(12) mount     -----可以看到ubi2_0成功挂载在/mnt上。

脚本如下

#!/bin/sh

nblock=`cat /proc/mtd | grep -w userdata | awk -F ':' '{print $1}' | awk -F 'd' '{print $2}'`
ndevice=`expr $nblock + 1`
ubiattach /dev/ubi_ctrl -m ${nblock} -d ${ndevice}
mount -t ubifs -o relatime,sync,rw ubi${ndevice}_0 /usr/mnt_vfs
#

UBI 文件系统之分区挂载的更多相关文章

  1. linux下磁盘进行分区、文件系统创建、挂载和卸载

    任务的原因:由于,刚购买来的服务器需要将磁盘挂载到操作系统上,为了挂载磁盘首先要对磁盘进行分区,然后进行文件系统的创建,最后将磁盘挂载到操作系统上的某个目录. MBR(Master Boot Reco ...

  2. linux下磁盘进行分区、文件系统创建、挂载和卸载(转)

    任务的原因:由于,刚购买来的服务器需要将磁盘挂载到操作系统上,为了挂载磁盘首先要对磁盘进行分区,然后进行文件系统的创建,最后将磁盘挂载到操作系统上的某个目录. MBR(Master Boot Reco ...

  3. 内核启动时在挂载ubi文件系统时提示UBIFS error (ubi0:0 pid 1): ubifs_read_superblock: min. I/O unit mismatch

    一.背景 1.1 笔者机器的内核错误信息如下: UBIFS error (ubi0:0 pid 1): ubifs_read_superblock: min. I/O unit mismatch: 2 ...

  4. UBI 文件系统移植 sys 设备信息【转】

    转自:http://blog.chinaunix.net/uid-25304914-id-3058647.html cat /sys/class/misc/ubi_ctrl/dev --------- ...

  5. UBI文件系统简介

    转:http://www.embedu.org/Column/Column102.htm 在linux-2.6.27以前,谈到Flash文件系统,大家很多时候多会想到cramfs.jffs2.yaff ...

  6. aix磁盘分区挂载问题

    aix在进行磁盘分区挂载时,可能会报错

  7. 给虚拟机添加新硬盘并分区,fdisk查看分区,分区,重新读取分区表信息partprobe,格式化,挂载,查看分区挂载信息,自动挂载文件/etc/fstab,/etc/fstab文件错误导致重启崩溃后的修复

    1.虚拟机关机断电 2.添加硬盘 2.开机 3.fdisk -l查看刚才新添加的硬盘 [root@localhost ~]# fdisk -l 磁盘 /dev/sda:21.5 GB, 2147483 ...

  8. CentOS 7 增加磁盘分区挂载(lvm)

    1.查看主机现有磁盘情况 # fdisk -l 现在主机中存在一块8G的磁盘sdb,尚未分区挂载,所以需将磁盘进行分区挂载. 2.对磁盘进行分区 # fdisk /dev/sdb   (选择要操作分区 ...

  9. Linux分区挂载点介绍

    一.Linux分区挂载点介绍 Linux分区挂载点介绍,推荐容量仅供参考不是绝对,跟各系统用途以及硬盘空间配额等因素实际调整: 分区类型 介绍 备注 /boot 启动分区 一般设置100M-200M, ...

随机推荐

  1. AXI总线简介、ID分析、DMA、Vivado烧录、系统集成

    转载:https://blog.csdn.net/CrazyUncle/article/details/89918030?depth_1-utm_source=distribute.pc_releva ...

  2. 跳台阶 牛客网 剑指Offer

    跳台阶 牛客网 剑指Offer 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果). class Solution: #ru ...

  3. hdu 1160 FatMouse's Speed(最长不下降子序列+输出路径)

    题意: FatMouse believes that the fatter a mouse is, the faster it runs. To disprove this, you want to ...

  4. 前端面试手写代码——模拟实现new运算符

    目录 1 new 运算符简介 2 new 究竟干了什么事 3 模拟实现 new 运算符 4 补充 预备知识: 了解原型和原型链 了解this绑定 1 new 运算符简介 MDN文档:new 运算符创建 ...

  5. Swarm+Docker+Portainer(集群,图形化)

    参考文章 https://blog.csdn.net/u011781521/article/details/80469804 https://blog.csdn.net/u011781521/arti ...

  6. centos redhat 安装g++

    正确安装命令 : yum install gcc-c++ libstdc++-devel 安装后可以在/bin/找到

  7. httprunner3源码解读(4)parser.py

    源码结构目录 可以看到此模块定义了4个属性和12个函数,我们依次来讲解 属性源码分析 # 匹配http://或https:// absolute_http_url_regexp = re.compil ...

  8. 无法复现的“慢”SQL《死磕MySQL系列 八》

    系列文章 四.S 锁与 X 锁的爱恨情仇<死磕MySQL系列 四> 五.如何选择普通索引和唯一索引<死磕MySQL系列 五> 六.五分钟,让你明白MySQL是怎么选择索引< ...

  9. 『学了就忘』Linux软件包管理 — 44、在RPM包中提取文件

    目录 1.RPM包中文件的提取 2.在RPM包中提取文件的操作 (1)cpio命令介绍 (2)提取RPM包中文件 1.RPM包中文件的提取 为什么要做这个事呢? 在操作Linux系统的时候误删除一个文 ...

  10. 如何解决 ASP.NET Core 中的依赖问题

    依赖性注入是一种技术,它允许我们注入一个特定类的依赖对象,而不是直接创建这些实例. 使用依赖注入的好处显而易见,它通过放松模块间的耦合,来增强系统的可维护性和可测试性. 依赖注入允许我们修改具体实现, ...