树莓派系统给磁盘分了两个区,一个是bootfs,一个是Linux分区(home分区),Linux分区,在macOS下不能直接访问。这篇文章,记录一下我这个神奇的访问之旅。
两条路
ChatGPT告诉我,你有两条路可以走,一条是装一个Linux虚拟机,一条是使用macFUSE + ext4fus。从我多年的被坑经验来看,第一个,还要下载镜像,还要配置虚拟机,虚拟机和系统有一个出问题,我就会很麻烦。于是我机智的问了一下docker行不行,GPT说"macOS 不允许把物理块设备透传给 Docker",我也不想验证了。于是,我浅浅的看了一下第二条路。搜了一个blog,这很简单啊。
地下室
顺利的第一个命令
brew install --cask macfuse
顺利的第二个命令
git clone https://github.com/gerard/ext4fuse.git && cd "$(basename "$_" .git)"
make
大坑的第三个命令
sudo ./ext4fuse /dev/disk5s1 ~/ext4_mount -o allow_other
macOS开始疯狂爆权限问题,因为我是新电脑,所以SIP没有关,还有一个什么系统的权限啥的,也没开,这个简单,关机->长按电源-> csrutil --dsiable。然后什么安全性的设置点一点,重启再在安全里面找到这个插件,全部打开,然后再重启。
地狱
开开心心的运行关键命令
sudo ./ext4fuse /dev/disk5s1 ~/ext4_mount -o allow_other
打开挂载的文件目录。我看到了一些文件夹,带着红红的标识,开始我是没有在意的,当我点击我想要的目录时候

再次咨询了一下GPT,GPT是这样回答我的。原来如此,那我怎么办!我用这个系统,本来就是想直接访问文件的,你这个软件,还去读区这个系统的文件权限,那我怎么肯能有这个系统的权限呢!我真的不知道这个软件的作者是怎么想的。

从地狱爬出来
我再次问一下GPT,GPT说,选第一条路吧。但是我真的好不甘心啊。突然,我想到ext4fuse是一个开源软件啊,既然是他拦截了我,那自然,我可以直接破除这个人为的限制,于是,让Claude分析了一下代码,给我找到了,设置权限的位置,并给我一个修改意见,果然。
浅浅的修改一下,op_getattr.c。再次make->unmount->mount。搞定!
