【教程】Mac版MN3利用bindfs添加外置文档/视频目录而不拷贝/导入内置存储的方法

一,配置mac终端环境
1,安装homebrew包管理器,在官网复制最新安装命令

2,安装osxfuse

打开官网,右侧下载最新安装包
https://osxfuse.github.io/

3,安装bindfs及其依赖(安装过程若有权限报错,homebrew会自动提供需要预先输入的命令,请按提示复制输入)

brew install pkg-config
brew install gettext
brew install bindfs

二,日常使用

sudo bindfs 源目录 挂载点目录

Notes:
0,若文档在mac系统硬盘上,且系统盘为APFS,请勿使用该方法挂载

     > 将缓存和软件相关文件夹以类似沙箱的形式存储在资源库中是app通用的 
       做法。
       MN默认的mac沙箱存储位置在:
       /System/Volumes/Data/Users/用户                    
      名/Library/Containers/QReader.MarginStudyMac/Data/Documents
       类似的,苹果icloud文件会在本地生成一个同步缓存,其位于
       /System/Volumes/Data/Users/用户名/Library/CloudStorage/iCloud Drive
       基于APFS文件系统,以MN为例,其缓存文件夹会存在于两个位置,                      
       icloud drive和data/documents,这2个文件夹都是资源库的子文件夹,但                      
      是只占用一份空间。比如一本书是1GB,他在这2个位置都会有一个文件, 
      但是总占用仍为1GB。同一APFS分区下的文件拷贝只会创建一个链接符 
      号,而不会占用空间。

1,注意需要在MN内建立一个临时目录,如testbindfs
2,每次运行MN前请确保移动存储已接入
3,若开启了相关文档的自动icloud,那么未接入移动存储开启MN时,MN会自动复制icloud同步文件至MN内,影响下次挂载。

例子及其效果:(用户名lancoaventura替换为你的,3偏微分方程替换为你的文档目录,testbindfs替换为你的挂载目录)

sudo bindfs /Volumes/PaperDrawer/Phy0M/3偏微分方程/ /System/Volumes/Data/Users/lancoaventura/Library/Containers/QReader.MarginStudyMac/Data/Documents/testbindfs/

可在finder的菜单中开启路径显示,方便输入命令时复制路径

测试使用的外置移动硬盘中的文档目录:

挂载在资源库中MN内置存储的效果:

MN软件内呈现效果:

2赞

若文档在mac系统硬盘上,且系统盘为APFS,请勿使用该方法挂载

我的恰好是这种情况,麻烦问下有办法解决么?我添加进去文件大小为零,打不开。

你是说你的文档在本机的某个位置存着,希望挂载到MN目录里来是吧

这个方法也可以用的,只是说可能会起不到一个节省空间的作用

是不是我太傻,搞不会,希望有傻瓜教程

2赞

好的 回头会出个简化版

1赞

我也是,该怎么办

安装homebrew的url失效啦
新的是这个

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

感谢指出!

Regards
Lanco

不知道为什么,我用终端安装“homebrew包管理器”的时候,始终报错,意思好像是说网络连接失败?但是我把报错的链接粘到浏览器上却能正常打开,捯饬了好久都安装不了……

1赞

花了好些时间去理解,我理解的是原理

把U盘默认的挂载的目录改变到沙箱中,相等于直接从沙箱读取文件,U盘一退出沙箱的文件就没了。前提是icloud同步文档不太能开启。相当于没有把U盘的文件拷贝到沙箱或icloud同步文件夹中。不知道对不对?

12 个帖子已被合并到了现有主题:【活动】品评MarginNote开发计划,今天你是产品经理!:mailbox_with_mail:

我也是唉,请问你的问题解决了吗?

站长~我在第一步好像就遇到了问题,跟下面一个朋友遇到的问题一样,就是复制homebrew码到终端的时候现实终端里面无法连接,用了下面一个网友提供的最新代码复制也是一样的,请问怎么解决呀?

我最后放弃了……就自己老老实实用普通的PDF阅读器打开并做批注了。

讲道理:
1、我使用我网盘的路径数据加载到MN之后,它应该直接读取这个数据。而并不是产生另外一份新的数据。(如pdf,加载的时候会在MN存储路径中复制一份新的和生成MD5):thinking:

但是,问题:我应该无法在别的平台直接读取我的笔记,只是增加了读取pdf的路径。

这个跟ln -s 文件夹/ 有啥区别呢
:thinking:
刚刚进行测试,ln -s 文件夹/ 并不会加载里面的文件