【问题标题】:How can one list all of the currently pinned files for an IPFS instance?如何列出 IPFS 实例的所有当前固定文件?
【发布时间】:2020-07-10 14:01:30
【问题描述】:

根据https://docs.ipfs.io/guides/concepts/pinning/ ,运行命令ipfs add hello.txt 显然“固定”文件“hello.txt”,但为什么我在运行命令ipfs files ls 时看不到后面列出的文件?它只列出了我使用 IPFS 桌面应用程序添加的文件。为什么“hello.txt”现在不在列表中?

此外,我通过运行命令ipfs pin ls 找到了一个所谓的“固定”对象列表,但是那里显示的 CID 都没有对应于“hello.txt”,甚至没有任何前面提到的使用 IPFS 桌面应用程序添加的文件。

如何实际管理固定文件?

【问题讨论】:

    标签: ipfs


    【解决方案1】:

    很高兴看到这里弹出一些关于 IPFS 的问题! :)

    所以,有两种不同的东西:

    • 别针
    • 文件/文件夹(称为 MFS)

    它们都严重重叠,但最好将 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

    最好的问候

    鲁本

    【讨论】:

    • 啊,没有意识到“固定文件”和“文件夹”(MFS) 中的文件是两个不同的系统,它们是分开管理的。现在更有意义了。
    猜你喜欢
    • 1970-01-01
    • 2017-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-06
    • 2023-01-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多