1、go-ipfs安装

参考:

https://mp.weixin.qq.com/s?__biz=MzUwOTE3NjY3Mw==&mid=2247483734&idx=1&sn=ef73c1d7b796ccfc2dae19be25ee04d6&chksm=f9177f58ce60f64edb3ea928d3a9984e1caf22b67143bab56c400e353a16e44c2de08ff78ce6&scene=21#wechat_redirect

https://dist.ipfs.io/#go-ipfs(需FQ)下载IPFS的go语言版本实现,或者https://pan.baidu.com/s/1XivzokWIMIy9MwAUUpOBQg(32位)https://pan.baidu.com/s/1H9DRYZLKmGvdEzP0-DzjJA(64位)下载镜像文件,文件下载完成后解压即可。

将解压缩后的文件夹路径设置到windows环境变量PATH中,即可在命令行中使用ipfs命令,或者cd到该文件夹后执行ipfs命令。

运行命令:ipfs init

初始化配置ipfs,得到本机的ipfs节点id,也就是一串哈希字符串;

运行命令:ipfs cat /ipfs/节点id/readme

下载readme文件,并在命令提示符窗口显示其内容

运行命令:ipfs daemon

启动节点,命令提示符窗口被锁定

Ipfs除了命令行交互方式,还提供了webUI交互方式,可以在浏览器里面输入http://localhost:5001/webui,就可以看到本机节点及状态了。Firefox浏览器中访问正常;chrome浏览器中需要安装ipfs companion(ipfs伴侣)插件,才能正常查看,在chrome浏览器的扩展程序页面点击左上角“扩展程序”菜单中最下面的的chrome网上应用店,搜索ipfs companion进行安装。

2、ipfs常用命令

文件上传:ipfs add

上传文件ipfs add example.jpg

上传文件夹ipfs add –r dirpath

发布网页路径到IPNS

若我们上传一个网站根目录(文件夹)到ipfs站点,由于由于ipfs的hash对应着一个不可变的内容,每次更新网站之后,website的hash都会变,旧的link不能访问到新的内容。

ipfs提供了ipns来解决更新的问题。ipfs允许用户使用一个私有密钥来对哈希附加一个引用,使用一个公共密钥哈希(简称pubkeyhash)表示你的网站的最新版本。

ipfs name publish 网站根目录HASH

通过上述方式,就完成了网站根目录和一个固定的link的绑定,也就是ipfs的节点id。

绑定验证:ipfs name resolve 节点id

输出/ipfs/网站根目录HASH

IPNS访问固定节点Hash:

https://ipfs.io/ipns/节点id

说明:虽然ipfs设计的可以通过访问其他节点获取发布的数据,但目前的版本中若其他节点不主动通过文件HASH下载或浏览该文件,文件是不会自动缓存到其他节点,本节点关闭后将无法检索到该数据;仍然要启动本地节点或已经缓存了全部文件的其他节点,才能在公网上获取文件。

文件下载:ipfs cat

ipfs cat /ipfs/QmdDTor6dWzknFJPJuhJgrUYqd56WkFXYAxyxpEY7kUrEb > init.jpg

增加输出(> init.jpg),将文件保存到指定地方,否则会在命令提示符窗口输出显示

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.5pt;
mso-bidi-font-size:11.0pt;
font-family:"Calibri","sans-serif";
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-font-kerning:1.0pt;}

文件删除:

在其他节点存储本地节点文件之前可以通过以下命令删除文件:

(1)    删除缓存

命令:ipfs pin rm HASH

该HASH可以是文件或目录对应的HASH

(2)    删除二进制块

命令:ipfs block rm HASH

执行以上两步之后,重启ipfs站点后,便无法访问HASH对应的文件或目录了;若其他节点上存储了该相同文件,则无法删除,如空文件夹。

批量清理本地节点内容:ipfs repo gc

该命令用来清理本地节点缓存的未创建缓存(pin)的文件或文件夹,存在缓存(pin)的文件或文件夹无法通过该命令清理。

缓存(pin)操作:

添加pin:ipfs pin add ipfs/HASH

删除pin:ipfs pin rm ipfs/HASH

查看pin信息:ipfs pin ls ipfs/HASH

若不带路径(ipfs/HASH)参数,则会列出本地节点的所有pin信息

最新文章

  1. Unity4.0的使用
  2. Linq To Nhibernate 性能优化(入门级)
  3. BZOJ-1207 打鼹鼠 DP(LIS)
  4. Table Properties [AX 2012]
  5. SVG格式
  6. Union-SQL Server学习笔记
  7. mysqlpump 原理
  8. BestCoder Round #51 (div.2)
  9. Shell中逻辑判断
  10. Hadoop Spark 集群简便安装总结
  11. spider随机请求头和ip
  12. select count(*) 底层究竟做了什么?
  13. 添加浏览器back操作时的响应事件
  14. ubuntu 18.04 使用 nvm 安装 nodejs
  15. windwos7 vnc连接centos6.6
  16. python-selenium 并发执行用例的问题
  17. JSP基本_JSTL
  18. 数据结构习题Pop Sequence的理解----小白笔记^_^
  19. 【Linux】svn添加用户
  20. easyui动态生成双列头

热门文章

  1. Gunner II--hdu5233(map&vector/二分)
  2. git 常用文件目录介绍
  3. Python下的正则表达式原理和优化笔记
  4. python学习笔记——字符串
  5. python常见模块之os模块
  6. (3.14) set statistics io/time/profile /SET SHOWPLAN_ALL ON详解统计信息与执行计划
  7. jquery Chosen使用
  8. spring 启动过程
  9. maven仓库配置
  10. 机器学习第7周-炼数成金-支持向量机SVM