很高兴看到这里弹出一些关于 IPFS 的问题! :)
所以,有两种不同的东西:
它们都严重重叠,但最好将 MFS 描述为基本上是一个本地可更改的文件系统,将“对象”映射为文件和文件夹。
您在本地 IPFS 客户端中有一个根 ( / ),您可以在其中放置文件和文件夹。
例如,您可以使用以下内容递归地添加文件夹:
ipfs add --recursive /path/to/folder
您会得到一个 CID(内容 ID)。此内容 ID 将文件夹、其所有文件和所有文件结构表示为不可修改的数据结构。
此文件夹可以映射到本地根目录中的名称:
ipfs cp /ipfs/<CID> /<foldername>
ipfs files ls 现在将按名称显示此文件夹,而 ipfs pin ls --type=recursive 将显示内容 ID 为固定。
如果您使用 (Web)GUI,文件将显示在“文件”选项卡下,而引脚显示在“引脚”选项卡下。
请注意,您不必固定存储在 MFS 中的文件或文件夹,存储在那里的所有内容都将永久可用。
如果您要更改 MFS 中的文件夹、子文件夹、文件等,该文件夹将获得不同的 Content-ID,您的 pin 仍将确保旧版本保存在您的客户端上。
因此,如果您将另一个文件添加到您的文件夹中,例如 cat /path/to/file | ipfs files write --create /folder/<newfilename>,您的文件夹的 CID 将会不同。
比较ipfs files stat --hash /folder,然后再次比较。
希望我没有完全混淆你:D
最好的问候
鲁本