第一步:准备工作
首先需要下载 IPFS Kubo 这个软件
https://github.com/ipfs/kubo/releases
下载完成后先设置环境变量 IPFS_PATH ,例 D:\myipfs, 因为使用 --nocopy 参数时,文件必须与 IPFS_PATH 在同一个根目录下。
设置环境变量的具体操作
setx IPFS_PATH D:\myipfs
refreshenv
初始化 IPFS
ipfs init
开启 nocopy
ipfs config --json Experimental.FilestoreEnabled true
启动 IPFS 进程
ipfs daemon
首次启动 IPFS 时,防火墙可能会自动弹出请求权限的提示框,请允许软件访问网络。这样可以确保 IPFS 能够正常运行并与其他节点进行通信。
如果你曾经安装过 IPFS,请在C盘搜索IPFS文件夹并删除。反正我就是这么做的
这样就完成了IPFS Kubo的安装
第二步:分享文件
我们可以使用如下命令进行分享文件。
ipfs add --nocopy --recursive --hash=blake2b-256 --chunker=size-1048576 -H "D:\test"
来自 https://annas-blog.org/help-seed-zlibrary-on-ipfs.html 的命令
命令解释
--nocopy
必选,不然分享多少文件,就会占用多少空间。
--recursive
必选,不然不能分享文件夹
--chunker=size-1048576
必选,默认大小为 262144,大小设置为最大 1048576 。不然分享文件,会占用很多的空间。
--hash=blake2b-256
默认 hash 是 sha256
使用blake2b-256 比 sha256 更快,更省电,在下载速度上可以体现
-H
可选可不选,这个命令是用来判断是否上传隐藏文件的
不要使用以下命令
--trickle
因为对于冷门大文件下载速度会慢很多。在下载时会出现一下满速,一下变为 1 KB/s 的情况
https://discuss.ipfs.io/t/ipfs-file-sharing/11404/11
--inline
https://github.com/filecoin-project/specs-actors/pull/783
第三步:IPFS 增加删除文件
这里建议浏览器打开 http://127.0.0.1:5001/webui 来访问 IPFS,跟https://github.com/ipfs/ipfs-desktop/releases 的界面差不多
打开后会看到如下界面
如果显示已连接到 IPFS,那么恭喜您!你已经可以使用IPFS分享文件了 我们点击来自IPFS路径
导入你生成的 CID。
导入 bafykbzacedje67dgnyrppwisb6bozurqged6bqvh3ztbdmx6hgnniimjh7s7o
然后将文件拖入 bafykbzacedje67dgnyrppwisb6bozurqged6bqvh3ztbdmx6hgnniimjh7s7o 中
发现文件的CID(bafk……jo)变了,但其依然是使用blake2b-256
这样就实现了文件的更新。
如何突破10 GB下载限制
在配置中往下翻,一直翻到 StorageMax 设置为 1000 GB 并保存
如果到这一步成功的话,恭喜你学会了如何使用IPFS 分享超大文件。快去试试分享吧~
进阶IPNS + DNSLink动态更新
可以看这个教程https://www.cnblogs.com/qxxiao/p/15404183.html
说明
【本质也是一个映射关系】DNS链接使用DNS TXT
记录映射域名到一个IPFS地址。因为你可以编辑自己的DNS记录,可以使他们总是指向最新版本的IPFS中的对象。其目的是提供一个阅读记忆友好的名字。
选择一个域名(可以是子域名),添加一个TXT记录,其内容可以为:
dnslink=/ipfs/bafykbzacedje67dgnyrppwisb6bozurqged6bqvh3ztbdmx6hgnniimjh7s7o
或者使用 _dnslink子域名
比如 kungal.com 的子域名 _dnslink.kungal.com 设置 TXT 记录为
dnslink=/ipfs/bafykbzacedje67dgnyrppwisb6bozurqged6bqvh3ztbdmx6hgnniimjh7s7o
那么就可以通过 https://ipfs.joaoleitao.org/ipns/kungal.com 或者 https://dweb.link/ipns/kungal.com 访问这,访问是不需要安装IPFS软件的
DNSLINK 对于没有域名的人来说可能很难理解,我们可以先跳过这部分。使用自带的发布到IPNS就可以实现动态更新了,只不过长度上会有点长,记得每天连接一次确保解析记录有效!
整个教程结束了
练习题
- 导入下面的 IPFS 路径。取名为碧蓝档案音乐合集
bafykbzacecj7yvngd6o2khhec7pwoiukwstht2ecf62kr2s6phudwbcwhp2uk - 利用第一题所给的文件,制作一个 10 TB 的 IPFS 路径。