{"id":1599,"date":"2017-04-12T06:46:23","date_gmt":"2017-04-11T21:46:23","guid":{"rendered":"http:\/\/matoken.org\/blog\/?p=1599"},"modified":"2017-04-12T06:46:23","modified_gmt":"2017-04-11T21:46:23","slug":"try-kpartx-which-makes-it-easy-to-create-device-map-of-disk-image","status":"publish","type":"post","link":"https:\/\/matoken.org\/blog\/2017\/04\/12\/try-kpartx-which-makes-it-easy-to-create-device-map-of-disk-image\/","title":{"rendered":"\u30c7\u30a3\u30b9\u30af\u30a4\u30e1\u30fc\u30b8\u306e\u30c7\u30d0\u30a4\u30b9\u30de\u30c3\u30d7\u304c\u7c21\u5358\u306b\u4f5c\u308c\u308bkpartx\u3092\u8a66\u3059"},"content":{"rendered":"<p>\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u3067<code>kpartx<\/code>\u3068\u3044\u3046\u30c7\u30a3\u30b9\u30af\u306e\u30c7\u30d0\u30a4\u30b9\u30de\u30c3\u30d7\u3092\u4f5c\u308b\u30b3\u30de\u30f3\u30c9\u304c\u3042\u308b\u306e\u3092\u77e5\u308a\u307e\u3057\u305f<\/p>\n<ul>\n<li><a href=\"https:\/\/vinelinux.org\/vlmagazine\/20110303.html\" title=\"Vine Linux Magazine - \u30eb\u30fc\u30d7\u30d0\u30c3\u30af\u30de\u30a6\u30f3\u30c8\u3068chroot\u3067\u4f5c\u308b\u306a\u3093\u3061\u3083\u3063\u3066\u4eee\u60f3\u30de\u30b7\u30f3\">Vine Linux Magazine &#8211; \u30eb\u30fc\u30d7\u30d0\u30c3\u30af\u30de\u30a6\u30f3\u30c8\u3068chroot\u3067\u4f5c\u308b\u306a\u3093\u3061\u3083\u3063\u3066\u4eee\u60f3\u30de\u30b7\u30f3<\/a><\/li>\n<\/ul>\n<blockquote>\n<p>\u305d\u3053\u3067\u307e\u305a\u3001kpartx\u3092\u4f7f\u3063\u3066\u5404\u30d1\u30fc\u30c6\u30a3\u30b7\u30e7\u30f3\u306e\u30c7\u30d0\u30a4\u30b9\u30de\u30c3\u30d7\u3092\u4f5c\u308a\u307e\u3059\u3002<br \/>\n$ sudo \/sbin\/kpartx -av \/opt\/atde3-20100309.img <br \/>\nadd map loop2p1 : 0 497952 linear \/dev\/loop2 63<br \/>\nadd map loop2p2 : 0 33045705 linear \/dev\/loop2 498015<br \/>\n$ ls \/dev\/mapper\/<br \/>\ncontrol  loop2p1  loop2p2<br \/>\n\u3053\u308c\u3067\u30c7\u30a3\u30b9\u30af\u30a4\u30e1\u30fc\u30b8\u306e\u5404\u7269\u7406\u30d1\u30fc\u30c6\u30a3\u30b7\u30e7\u30f3\u306b\u5bfe\u5fdc\u3057\u305f\u30c7\u30d0\u30a4\u30b9\u30de\u30c3\u30d7\u304c\u3067\u304d\u307e\u3057\u305f\u3002fdisk\u3067\u898b\u3048\u3066\u3044\u305f\u30d1\u30fc\u30c6\u30a3\u30b7\u30e7\u30f3\u306f\u305d\u308c\u305e\u308c\u3001\/dev\/mapper\/loop2p1 \/dev\/mapper\/loop2p2 \u3068\u3057\u3066\u53c2\u7167\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u3063\u3066\u3044\u307e\u3059\u3002<\/p>\n<\/blockquote>\n<p>\u3053\u308c\u307e\u3067\u306f\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u306e\u3088\u3046\u306bfdisk\u30b3\u30de\u30f3\u30c9\u3067\u30d1\u30fc\u30c6\u30a3\u30b7\u30e7\u30f3\u60c5\u5831\u3092\u78ba\u8a8d\u3057\u3066mount\u6642\u306boffset\u3092\u6307\u5b9a\u3057\u3066\u3044\u307e\u3057\u305f\uff0e<\/p>\n<ul>\n<li><a href=\"https:\/\/matoken.org\/blog\/blog\/2014\/01\/22\/usermode-qemu-kono-on-debian\/\" title=\"\u30e6\u30fc\u30b6\u30fc\u30e2\u30fc\u30c9\u30a8\u30df\u30e5\u30ec\u30fc\u30b7\u30e7\u30f3qemu \u3092\u4f7f\u3063\u3066 Kono on Debian \u306e\u30a4\u30e1\u30fc\u30b8\u3092 Host PC \u3067 apt-get \u3068\u304b\u3059\u308b | matoken&amp;apos;s meme\">\u30e6\u30fc\u30b6\u30fc\u30e2\u30fc\u30c9\u30a8\u30df\u30e5\u30ec\u30fc\u30b7\u30e7\u30f3qemu \u3092\u4f7f\u3063\u3066 Kono on Debian \u306e\u30a4\u30e1\u30fc\u30b8\u3092 Host PC \u3067 apt-get \u3068\u304b\u3059\u308b | matoken&rsquo;s meme<\/a><\/li>\n<\/ul>\n<p>kpartx\u3092\u4f7f\u3046\u3068\u3053\u306e\u4f5c\u696d\u304c\u7c21\u5358\u306b\u306a\u308a\u305d\u3046\u306a\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e<\/p>\n<p>Debian sid amd64\u3067\u306f\u305d\u306e\u307e\u307e<code>kpartx<\/code>\u30d1\u30c3\u30b1\u30fc\u30b8\u3060\u3063\u305f\u306e\u3067\u3053\u308c\u3092\u5c0e\u5165\u3057\u307e\u3059\uff0e(Ubuntu 17.04 amd64\u3067\u3082\u540c\u69d8\u3067\u3057\u305f\uff0e)<\/p>\n<div class=\"codehilite\">\n<pre><span><\/span>$ sudo apt install kpartx\r\n<\/pre>\n<\/div>\n<p>\u4e01\u5ea6Raspbian jessie 2017-04-10\u304c\u51fa\u305f\u306e\u3067\u3053\u308c\u3067\u8a66\u3057\u3066\u307f\u307e\u3059\uff0e<\/p>\n<div class=\"codehilite\">\n<pre><span><\/span>$ unzip -l <span class=\"m\">2017<\/span>-04-10-raspbian-jessie-lite.zip \r\nArchive:  <span class=\"m\">2017<\/span>-04-10-raspbian-jessie-lite.zip\r\n  Length      Date    Time    Name\r\n---------  ---------- -----   ----\r\n<span class=\"m\">1297862656<\/span>  <span class=\"m\">2017<\/span>-04-10 <span class=\"m\">18<\/span>:58   <span class=\"m\">2017<\/span>-04-10-raspbian-jessie-lite.img\r\n---------                     -------\r\n<span class=\"m\">1297862656<\/span>                     <span class=\"m\">1<\/span> file\r\n$ <span class=\"nb\">time<\/span> unzip <span class=\"m\">2017<\/span>-04-10-raspbian-jessie-lite.zip\r\nArchive:  <span class=\"m\">2017<\/span>-04-10-raspbian-jessie-lite.zip\r\n  inflating: <span class=\"m\">2017<\/span>-04-10-raspbian-jessie-lite.img  \r\n\r\nreal    2m58.438s\r\nuser    0m27.512s\r\nsys     0m2.132s\r\n sudo \/sbin\/kpartx -av <span class=\"m\">2017<\/span>-04-10-raspbian-jessie-lite.img\r\nadd map loop0p1 <span class=\"o\">(<\/span><span class=\"m\">254<\/span>:3<span class=\"o\">)<\/span>: <span class=\"m\">0<\/span> <span class=\"m\">83968<\/span> linear <span class=\"m\">7<\/span>:0 <span class=\"m\">8192<\/span>\r\nadd map loop0p2 <span class=\"o\">(<\/span><span class=\"m\">254<\/span>:4<span class=\"o\">)<\/span>: <span class=\"m\">0<\/span> <span class=\"m\">2442728<\/span> linear <span class=\"m\">7<\/span>:0 <span class=\"m\">92160<\/span>\r\n$ ls -lA \/dev\/mapper\/\r\n\u5408\u8a08 <span class=\"m\">0<\/span>\r\ncrw------- <span class=\"m\">1<\/span> root root <span class=\"m\">10<\/span>, <span class=\"m\">236<\/span>  4\u6708 <span class=\"m\">11<\/span> <span class=\"m\">23<\/span>:37 control\r\nlrwxrwxrwx <span class=\"m\">1<\/span> root root       <span class=\"m\">7<\/span>  4\u6708 <span class=\"m\">12<\/span> <span class=\"m\">06<\/span>:07 loop0p1 -&gt; ..\/dm-3\r\nlrwxrwxrwx <span class=\"m\">1<\/span> root root       <span class=\"m\">7<\/span>  4\u6708 <span class=\"m\">12<\/span> <span class=\"m\">06<\/span>:07 loop0p2 -&gt; ..\/dm-4\r\nlrwxrwxrwx <span class=\"m\">1<\/span> root root       <span class=\"m\">7<\/span>  4\u6708 <span class=\"m\">11<\/span> <span class=\"m\">23<\/span>:37 sda3_crypt -&gt; ..\/dm-0\r\nlrwxrwxrwx <span class=\"m\">1<\/span> root root       <span class=\"m\">7<\/span>  4\u6708 <span class=\"m\">11<\/span> <span class=\"m\">23<\/span>:37 x220--vg-root -&gt; ..\/dm-1\r\nlrwxrwxrwx <span class=\"m\">1<\/span> root root       <span class=\"m\">7<\/span>  4\u6708 <span class=\"m\">11<\/span> <span class=\"m\">23<\/span>:37 x220--vg-swap_1 -&gt; ..\/dm-2\r\n<\/pre>\n<\/div>\n<p>\u30c7\u30d0\u30a4\u30b9\u30de\u30c3\u30d4\u30f3\u30b0\u3055\u308c\u3066\u3044\u307e\u3059\uff0e\u3053\u308c\u3067\u7c21\u5358\u306bmount\u51fa\u6765\u307e\u3057\u305f\uff0e<\/p>\n<div class=\"codehilite\">\n<pre><span><\/span>$ sudo mount -o ro \/dev\/mapper\/loop0p1 \/media\/mk\/pi-boot\r\n$ sudo mount -o ro \/dev\/mapper\/loop0p2 \/media\/mk\/pi-root\/\r\n$ mount <span class=\"p\">|<\/span> grep \/dev\/mapper\/loop0p\r\n\/dev\/mapper\/loop0p1 on \/media\/mk\/pi-boot <span class=\"nb\">type<\/span> vfat <span class=\"o\">(<\/span>ro,relatime,fmask<span class=\"o\">=<\/span><span class=\"m\">0022<\/span>,dmask<span class=\"o\">=<\/span><span class=\"m\">0022<\/span>,codepage<span class=\"o\">=<\/span><span class=\"m\">437<\/span>,iocharset<span class=\"o\">=<\/span>ascii,shortname<span class=\"o\">=<\/span>mixed,utf8,errors<span class=\"o\">=<\/span>remount-ro<span class=\"o\">)<\/span>\r\n\/dev\/mapper\/loop0p2 on \/media\/mk\/pi-root <span class=\"nb\">type<\/span> ext4 <span class=\"o\">(<\/span>ro,relatime,data<span class=\"o\">=<\/span>ordered<span class=\"o\">)<\/span>\r\n$ ls \/media\/mk\/pi-boot\r\nCOPYING.linux     bcm2708-rpi-0-w.dtb     bcm2708-rpi-cm.dtb   bcm2710-rpi-cm3.dtb  config.txt    fixup_db.dat  kernel.img   start.elf     start_x.elf\r\nLICENCE.broadcom  bcm2708-rpi-b-plus.dtb  bcm2709-rpi-2-b.dtb  bootcode.bin         fixup.dat     fixup_x.dat   kernel7.img  start_cd.elf\r\nLICENSE.oracle    bcm2708-rpi-b.dtb       bcm2710-rpi-3-b.dtb  cmdline.txt          fixup_cd.dat  issue.txt     overlays     start_db.elf\r\n$ ls \/media\/mk\/pi-root\r\nbin  boot  dev  etc  home  lib  lost+found  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var\r\n<\/pre>\n<\/div>\n<p>\u305d\u3057\u3066chroot\u3057\u3066\u307f\u305f\u308a<\/p>\n<div class=\"codehilite\">\n<pre><span><\/span>$ sudo mount -o remount,rw \/media\/mk\/pi-root\r\n$ sudo cp -p \/usr\/bin\/qemu-arm-static \/media\/mk\/pi-root\/usr\/bin\r\n$ sudo chroot \/media\/mk\/pi-root\/ \/bin\/bash\r\n<span class=\"c1\"># dpkg --get-selections &quot;*&quot; | wc -l<\/span>\r\n<span class=\"m\">427<\/span>\r\n<\/pre>\n<\/div>\n<p>\u30a2\u30f3\u30de\u30a6\u30f3\u30c8\u3057\u3066\u5143\u306b\u623b\u3057\u307e\u3059\uff0e<\/p>\n<div class=\"codehilite\">\n<pre><span><\/span># exit\r\n$ sudo umount \/media\/mk\/pi-*\r\n$ sudo kpartx -d \/dev\/mapper\/loop0p1\r\n$ sudo kpartx -d \/dev\/mapper\/loop0p2\r\n$ rm .\/2017-04-10-raspbian-jessie-lite.img\r\n<\/pre>\n<\/div>\n<p>\u4fbf\u5229\u3067\u3059\u306d :)<br \/>\n\u5f8c\u306f\u5727\u7e2e\u30d5\u30a1\u30a4\u30eb\u3092\u305d\u306e\u307e\u307e\u4f7f\u3048\u308b\u3068\u4fbf\u5229\u306a\u3093\u3067\u3059\u304c\u30e0\u30ea\u30ab\u30ca?<\/p>\n<div>\n<p>\n<iframe style=\"width:120px;height:240px;\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" src=\"\/\/rcm-fe.amazon-adsystem.com\/e\/cm?lt1=_blank&#038;bc1=000000&#038;IS2=1&#038;bg1=FFFFFF&#038;fc1=000000&#038;lc1=0000FF&#038;t=matokensmeme-22&#038;o=9&#038;p=8&#038;l=as4&#038;m=amazon&#038;f=ifr&#038;ref=as_ss_li_til&#038;asins=B06Y5RLT7T&#038;linkId=9b6b833e217db258a103e2ab26ce5b97\"><\/iframe><iframe style=\"width:120px;height:240px;\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" src=\"\/\/rcm-fe.amazon-adsystem.com\/e\/cm?lt1=_blank&#038;bc1=000000&#038;IS2=1&#038;bg1=FFFFFF&#038;fc1=000000&#038;lc1=0000FF&#038;t=matokensmeme-22&#038;o=9&#038;p=8&#038;l=as4&#038;m=amazon&#038;f=ifr&#038;ref=as_ss_li_til&#038;asins=B01N2627HG&#038;linkId=c1b3926c41fc4f65d55ba276ecb88a6b\"><\/iframe><iframe style=\"width:120px;height:240px;\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" src=\"\/\/rcm-fe.amazon-adsystem.com\/e\/cm?lt1=_blank&#038;bc1=000000&#038;IS2=1&#038;bg1=FFFFFF&#038;fc1=000000&#038;lc1=0000FF&#038;t=matokensmeme-22&#038;o=9&#038;p=8&#038;l=as4&#038;m=amazon&#038;f=ifr&#038;ref=as_ss_li_til&#038;asins=B06XC6CL7J&#038;linkId=309a72263181a4173c2337543fc980d8\"><\/iframe>\n<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u4ee5\u4e0b\u306e\u30da\u30fc\u30b8\u3067kpartx\u3068\u3044\u3046\u30c7\u30a3\u30b9\u30af\u306e\u30c7\u30d0\u30a4\u30b9\u30de\u30c3\u30d7\u3092\u4f5c\u308b\u30b3\u30de\u30f3\u30c9\u304c\u3042\u308b\u306e\u3092\u77e5\u308a\u307e\u3057\u305f Vine Linux Magazine &#8211; \u30eb\u30fc\u30d7\u30d0\u30c3\u30af\u30de\u30a6\u30f3\u30c8\u3068chroot\u3067\u4f5c\u308b\u306a\u3093\u3061\u3083\u3063\u3066\u4eee\u60f3\u30de\u30b7\u30f3 \u305d\u3053\u3067\u307e [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"webmentions_disabled_pings":false,"webmentions_disabled":false,"activitypub_content_warning":"","activitypub_content_visibility":"","activitypub_max_image_attachments":4,"activitypub_interaction_policy_quote":"anyone","activitypub_status":"","footnotes":""},"categories":[7,6,199,63,196],"tags":[228,276,202,227,288,201],"class_list":["post-1599","post","type-post","status-publish","format-standard","hentry","category-debian-linux","category-linux","category-sid","category-ubuntu","category-zesty17-04","tag-chroot","tag-debian-linux","tag-debian-sid","tag-kpartx","tag-ubuntu","tag-ubuntu-17-04"],"_links":{"self":[{"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/posts\/1599","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/comments?post=1599"}],"version-history":[{"count":0,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/posts\/1599\/revisions"}],"wp:attachment":[{"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/media?parent=1599"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/categories?post=1599"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/tags?post=1599"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}