• Linux 挂载已有的 img 镜像


    1、通过sudo losetup -f  在执行该指令后会显示出一行信息来显示虚拟的设备块节点:/dev/loopX (X表示1.2.3…,博客下面出现的X都是表示1.2.3...)。

      

    2、使用上一步得到的设备名,第一次创建loop设备,通过命令 sudo losetup /dev/loopX my.img 实现(my.img是你要挂载的镜像名称)。

    3、通过 sudo fdisk -lu /dev/loopX 命令可以查看挂载的镜像基本信息。

      

     4、 接着同步该分区 sudo kpartx -av /dev/loopX ( X模拟成块设备时的设备节点数,如果提升找不到该命令执行sudo apt-get install kpartx指令安装即可),执行该命令后会出现下面提示信息

    [sudo] password for aplex:
    
    add map loopXp1 (253:0): 0 202752 linear 7:2 2048  //如果你分了两个区,还会出现多一行类似的信息,如下图

      

     5、 接下来根据kpartx同步分区的信息把分区进行挂载

    sudo mount /dev/mapper/loopXp1 /mnt 
    /*这里p1是你上一步查看到的分区信息,也就是第一个分区,你想挂载第几个分区就写p几,
    把分区挂载到mnt设备目录,或者你自己建一个新的Test文件夹挂载到自己的文件夹也可以, 挂载了才能读取内容,而直接访问只能读设备信息, 好比看碟,你访问dev相当于直接拿碟片用眼看最多你能看出来是个CD或DVD, 但插到光驱里读就能看到电影了, 注意如果你系统原来已经挂载了一个镜像记得先取消那个镜像的挂载。*/

    6、然后就可以通过 ls命令查看挂载起来的镜像了。

      

     7、如果你要取消挂载,执行指令 sudo umount /mnt/ 将挂载解除,然后分别执行sudo  kpartx -d /dev/loopX 、sudo  losetup -d /dev/loopX指令即可。

     注意:

      如果你不想执行1、2、3步也行,直接执行4、5、6、7,这样步骤命令就有点改变了,步骤如下:

      ① 同步该分区 sudo kpartx -av my.img 实现(my.img是你要挂载的镜像名称);

      ② 接下来根据kpartx同步分区的信息把分区进行挂载  sudo mount /dev/mapper/loopXp1 /mnt

      ③ 然后就可以通过 ls命令查看挂载起来的镜像了;

      ④ 如果你要取消挂载,执行指令 sudo umount /mnt/ 将挂载解除,然后执行sudo  kpartx -d /dev/loopX指令即可。

      这样虽然快一点,不过还是建议用完整的步骤,不然你会挂载着很多loopX。

      

  • 相关阅读:
    迅为IMX6ULL开发板-Linux MISC驱动-编写实验程序
    迅为龙芯2K1000开发板快速体验
    迅为3399开发板Android系统-使用strace跟踪系统调用
    迅为imx6ull开发板使用c语言调用shell命令控制led灯
    迅为与龙芯强强联合匠心之作 iTOP-2K1000开发板正式发布
    迅为iTOP3399开发板QT系统PCIE 4G移植-测试程序
    迅为IMX8MM开发板Android编译环境搭建
    bzero和memset函数
    [linux 2021-10-14] linux中启动jar的shell脚本
    重写与重载的区别
  • 原文地址:https://www.cnblogs.com/xingboy/p/16331165.html
Copyright © 2020-2023  润新知