Как можно перечислить все закрепленные в данный момент файлы для экземпляра IPFS? - PullRequest
0 голосов
/ 30 марта 2020

Согласно 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.

Как на самом деле можно управлять закрепленными файлами?

1 Ответ

1 голос
/ 30 марта 2020

круто видеть здесь несколько вопросов о IPFS! :)

Итак, есть две разные вещи:

  • Пины
  • Файлы / папки (называемые MFS)

Они оба сильно перекрываются, но лучше описать, что MFS - это в основном локально изменяемая файловая система с отображением «объектов» в виде файлов и папок.

У вас есть root (/) в вашем локальном клиенте IPFS, где вы можете поместить файлы и папки.

Например, вы можете рекурсивно добавить папку:

ipfs add -r --recursive /path/to/folder

Вы получаете CID (идентификатор контента) обратно. Этот идентификатор содержимого представляет папку, все ее файлы и всю файловую структуру в виде неизменяемой структуры данных.

Эта папка может быть сопоставлена ​​с именем в вашем локальном root:

ipfs cp /ipfs/<CID> /<foldername>

A ipfs files ls теперь будет отображать эту папку по имени, а ipfs pin ls --type=recursive будет отображать идентификатор содержимого как закрепленный.

Если вы используете (Интернет) GUI файлы будут отображаться на вкладке «файлы», а контакты - на вкладке «булавки».


Примечание: вам не нужно прикреплять файл или папку. хранится в вашей MFS, все хранящееся там будет постоянно доступно.

Если вы собираетесь изменить папки, подпапки, файлы и т. д. c в вашей MFS, папка получит другой Content-ID и ваш pin будет по-прежнему проверять, хранится ли старая версия на вашем клиенте.

Поэтому, если вы добавите в свою папку другой файл, например, cat /path/to/file | ipfs files write --create /folder/<newfilename>, CID вашей папки будет другим.

Сравните ipfs files stat --hash /folder и потом снова.

Надеюсь, я не полностью сбить вас с толку: D

С уважением

Рубен

...