[镜像]镜像操作losetup

安装完之后查看一下版本 /usr/sbin/debootstrap –version转自:http://blog.csdn.net/cnyyx/article/details/27182833

1、挂载镜像

  1. sudo losetup -f   #查看哪个loop设备是空闲的     /dev/loop0      #loop0这个设备是空闲的
  2. sudo losetup /dev/loop0 /var/lib/libvirt/images/ubuntu.img
  3. sudo kpartx -av /dev/loop0   # losetup+kpartx用来挂在带有分区表的镜像文件
    #输出结果如下
    add map loop0p1 (253:0): 0 18380800 linear /dev/loop0 2048
    add map loop0p2 (253:1): 0 2 linear /dev/loop0 18384894
    add map loop0p5 (253:2): 0 2093056 linear /dev/loop0 18384896 
  4. sudo mkdir mount-fs
  5. sudo mount /dev/mapper/loop0p1 mount-fs  #把第一个分区挂载到mount-fs

2、卸载镜像

  1. sudo umount mount-fs
  2. sudo kpartx -dv /dev/loop0  
    #输出如下
    del devmap : loop0p5
    del devmap : loop0p2
    del devmap : loop0p1 
  3. sudo losetup -d /dev/loop0

安装完之后查看一下版本 /usr/sbin/debootstrap –version

 

3、镜像中安装debian包

如果想安装某个工具,则需要如下操作

  1. sudo apt-get install binfmt-support qemu qemu-user-static debootstrap tar dosfstools 
  2. 安装完之后查看一下版本 /usr/sbin/debootstrap –version
  3. 如果本地低于 debootstrap 1.0.74,则需要以下操作,如果不低于则不需要 wget https://rcn-ee.com/mirror/debootstrap/debootstrap_1.0.74_all.deb sudo dpkg -i debootstrap_1.0.74_all.deb
  4. 然后将img按照Chapter1中方式mount到对应文件夹,比如mount 到了mount-fs
  5. 然后 sudo chroot mount-fs

 

这样就可以查看和编辑镜像中的内容

 

如果我们在zsh下,chroot会失败,则需要切换到bash下,如下

 

sudo chsh -s /bin/bash gaorong
sudo chroot mount-part2
或者sudo chroot mount-part2 /bin/bash

 

posted @ 2017-09-11 09:07  aaronGao  阅读(2024)  评论(0编辑  收藏  举报