Mount a Raspberry Pi SSD on your Big Sur Mac
Wat een gedoe.
This is not for “beginners”, actually probably don’t do any of this at all…
Read it first before attempting to do this on your machine.
Warning: This is all very outdated…
There is a $40,- solution that does this for you: https://www.paragon-software.com/home/extfs-mac/
I’ve already got MacFUSE.
You know, software so you can actually use other disks.
Updating to version 4.1.2 removed my Big Sur install due to update/upgrade issues, Big Sur did not sow me any “allow” buttons. I poked around, and got stuck at a bar fixed at 50%. So be warned. Backup your stuff before going into disk reading stuff.
Anyway, great to have a clean install.
Then… Get Brew.
Then.
From https://github.com/gerard/ext4fuse/issues/66:
Create a file called ext4fuse.rb
with the following contents:
class MacFuseRequirement < Requirement
fatal true
satisfy(build_env: false) { self.class.binary_mac_fuse_installed? }
def self.binary_mac_fuse_installed?
File.exist?("/usr/local/include/fuse/fuse.h") &&
!File.symlink?("/usr/local/include/fuse")
end
env do
ENV.append_path "PKG_CONFIG_PATH", HOMEBREW_LIBRARY/"Homebrew/os/mac/pkgconfig/fuse"
unless HOMEBREW_PREFIX.to_s == "/usr/local"
ENV.append_path "HOMEBREW_LIBRARY_PATHS", "/usr/local/lib"
ENV.append_path "HOMEBREW_INCLUDE_PATHS", "/usr/local/include/fuse"
end
end
def message
"macFUSE is required. Please run `brew install --cask macfuse` first."
end
end
class Ext4fuse < Formula
desc "Read-only implementation of ext4 for FUSE"
homepage "https://github.com/gerard/ext4fuse"
url "https://github.com/gerard/ext4fuse/archive/v0.1.3.tar.gz"
sha256 "550f1e152c4de7d4ea517ee1c708f57bfebb0856281c508511419db45aa3ca9f"
license "GPL-2.0"
head "https://github.com/gerard/ext4fuse.git"
bottle do
sha256 cellar: :any, catalina: "446dde5e84b058966ead0cde5e38e9411f465732527f6decfa1c0dcdbd4abbef"
sha256 cellar: :any, mojave: "88c4918bf5218f99295e539fe4499152edb3b60b6659e44ddd68b22359f512ae"
sha256 cellar: :any, high_sierra: "fc69c8993afd0ffc16a73c9c036ca8f83c77ac2a19b3237f76f9ccee8b30bbc9"
sha256 cellar: :any, sierra: "fe8bbe7cd5362f00ff06ef750926bf349d60563c20b0ecf212778631c8912ba2"
sha256 cellar: :any, el_capitan: "291047c821b7b205d85be853fb005510c6ab01bd4c2a2193c192299b6f049d35"
sha256 cellar: :any, yosemite: "b11f564b7e7c08af0b0a3e9854973d39809bf2d8a56014f4882772b2f7307ac1"
end
depends_on "pkg-config" => :build
on_macos do
depends_on MacFuseRequirement => :build
end
on_linux do
depends_on "libfuse"
end
def install
system "make"
bin.install "ext4fuse"
end
end
Lets see if we can create some code:
brew install --cask osxfuse
brew install --formula --build-from-source ./ext4fuse.rb
Check:
$ ext4fuseVersion: ext4fuse-0.1.3
Usage: ext4fuse <disk> <mountpoint>
Seems to work …
Now figure out what disk the Raspberry SD is..
diskutil list
Looks like our Linux disk is on /dev/disk2s2
sudo mkdir /Volumes/rpi
sudo ext4fuse /dev/disk2s2 /Volumes/rpi -o allow_other
Then we go into Apple’s “You’re too stupid to use your computer” shit.
Well actually they are right, but that’s besides the point.
First… turns out we cannot access any disks…
Buy a 4000,- computer that will not let you access folders unless you explicitly tell the OS it’s okay to read and write to folders… So let’s do that.
In preferences we can allow terminal to access disks.
After this we need a reboot.
Because, you know… We have left Linux long ago with macOS.
Hi… back again? Great.
sudo mkdir /Volumes/rpi
sudo ext4fuse /dev/disk2s2 /Volumes/rpi -o allow_other
Oops… Sorry, did you want to use your computer?
Well…
“A program tried to do things for you, but we at Apple would like everyone to release software trough our apple store, so we are making this as hard as possible”
Now for your sake, I hope you are getting the allow
button.
Changes are you are not getting this button, if that happens I have no idea what to do. I ended up with a total new install of Big Sur.
And… reboot time again…
Now it should work …
sudo mkdir /Volumes/rpi
sudo ext4fuse /dev/disk2s2 /Volumes/rpi -o allow_otherls -la /Volumes/rpi
Yay !
Turns out it’s read only…
Hmm…
To unmount the SD card:
sudo umount /Volumes/rpi
So maybe better get fuse-ext2
to work?
https://docs.j7k6.org/mount-ext4-macos/
sudo fuse-ext2 /dev/disk2s2 /Volumes/rpi -o rw+
YES !
Okay… this needs another post.
I no longer know what part of what I did makes this work.