Help us understand the problem. What is going on with this article?

SDのext4パーティションにWindows/Macからアクセスできるツール

More than 3 years have passed since last update.

はじめに

Raspberry Pi(Raspbian)のmicroSD内のファイルをPC/Macにコピーしたいことがあると思います。
scpやUSBメモリ経由という手もありますが、ファイルサイズが大きいと時間がかかる&少々手間なので、microSDのext4パーティションに直接ファイルアクセスできるツールを調べました。

前提条件

  • Raspbianのイメージを直接書き込んだmicroSDであること
    • NOOBSは試してないのでわからない…

Windowsの場合

ext4パーティションにアクセスできるツールは複数あります。
しかし、Windowsの仕様(SD規格に準拠し、SDカードのパーティションは一つだけ認識)の影響なのか、実際に使えたのは下記の二つでした。
※PC内蔵のSDスロットでは無く、USB接続のカードリーダー経由であれば、Ext2FsdでもOKかも

Macの場合

FUSE for macOS(osxfuse)ext4fuseでext4パーティションをマウントできます。

osxfuseはbrewだとインストールに失敗(osxfuseのバージョンが古い?)したので、dmgからインストール後にext4fuseをインストールします。

$ brew tap homebrew/fuse
$ brew install ext4fuse

次にmicroSDをMacに接続して、デバイス名を調べます。

$ df
Filesystem        512-blocks      Used Available Capacity iused      ifree %iused  Mounted on
/dev/disk1         234573824 195229280  38832544    84% 1554478 4293412801    0%   /
devfs                    740       740         0   100%    1280          0  100%   /dev
map -hosts                 0         0         0   100%       0          0  100%   /net
map auto_home              0         0         0   100%       0          0  100%   /home
/dev/disk3s1          128912     80528     48384    63%     512          0  100%   /Volumes/boot

この場合、microSDのデバイス名は/dev/disk3です。
Raspbianのイメージを直接書き込んだmicroSDであれば、パーティション2がext4なパーティションなので、

$ sudo ext4fuse -o allow_other /dev/disk3s2 /mnt

でマウントできます。
-o allow_otherを付けないと、root権限でしかアクセスできません

参考情報

osx で ext4 をread/write でマウントする。
OSX 10.10.1 Yosemite で Fuse でext4使おうとしたら fuse インストール出来ない

tomoya0x00
元は車載関連の組み込み屋。現在はAndroidアプリ作ってる。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away