如何在linux正确的进行配置?

配置环境:

ubuntu18.04

ubuntu 20.04

下载对应的go-ipfs压缩包:

go-ipfs_v0.9.1_linux-amd64.tar.gz

压缩包地址:https://docs.ipfs.io/install/recent-releases/(需要翻墙)或者 https://github.com/ipfs/go-ipfs/releases

源码:https://github.com/ipfs/go-ipfs

官网:https://docs.ipfs.io/install/(需要翻墙)

1.解压并执行脚本文件

tar zxvf go-ipfs_v0.9.1_linux-amd64.tar.gz -C ../
cd ../go-ipfs
./install.sh

输出如下:

2.ipfs 初始化以及查看相关id命令

ipfs init
ipfs cat /ipfs/QmQPeNsJPyVWPFDVHb77w8G42Fvo15z4bG2X8D2GhfbSXc/readme   //根据init而来
ipfs id

输出如下:

最终的.ipfs文件夹存放在/root/下面(通过ipfs init可得),路径可根据当前ubuntu 用户而定,此处我用的root权限。

cd /root/.ipfs/

文件夹如下:

.ipfs为节点的存储目录,里面存在6个文件(文件夹)内容:

blocks:文件块内容

conifg:配置文件

datastore_spec:存储本地数据

keystore:存储公私钥对

version:版本信息

3.修改配置文件config

把配置文件中的Address下的API 和 Gatway 的IP地址改为自己的本地地址

4.开启节点

ipfs daemon

输出如下:

其中有一个failed:  未能充分增加接收缓冲区大小,具体怎么解决还在查找中

failed to sufficiently increase receive buffer size (was: 208 kiB, wanted: 2048 kiB, got: 416 kiB). See https://github.com/lucas-clemente/quic-go/wiki/UDP-Receive-Buffer-Size for details.

此处节点就正常开启了。

在浏览器中输入图中的WebUI:http://192.168.12.177:5001/webui,就会弹出:

此处显示“Could  not connect to the IPFS API”,遇到不要慌,此时根据下面的3点进行相关查找问题,如果是本地进行文件交互存储,可以不用管此警告,能正常使用,反之则进行2的配置。

5.ipfs命令 测试

命令详解参考:http://cw.hubwiz.com/card/c/ipfs/1/8/8/

对文件的测试操作如下:

ipfs pin ls  //查看当前的已有的
ipfs add filename

当上传重复的文件时,所产生的hash 是相同的,这也是ipfs的原理机制中的。

具体请查看ipfs的原理如下:

参考:https://www.pseudoyu.com/zh/2021/03/25/blockchain_ipfs_structure/

删除文件

ipfs pin rm hash

添加引导节点

ipfs bootstrap add /ip4/192.168.12.177/tcp/4001/p2p/12D3KooWCNbt2BqDenD7wpJjTjCm6QBSWmN2MDcQxy1zwpb9ig89
ipfs bootstrap list
ipfs bootstrap rm
ipfs bootstrap rm --all 移除默认的boostrap节点

add后就可以通过ipfs bootstrap list 进行查看,/ip4/..... 这一部分可以根据ipfs id命令得到相应的数据。

这个时候就可以进行交互了,本机尝试的为同一电脑两个虚拟机进行交互。

后续会补上不同电脑间的交互。

参考:

http://cw.hubwiz.com/card/c/ipfs/1/8/8/

https://blog.csdn.net/shuang_1998/article/details/108727235?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-0.control&spm=1001.2101.3001.4242

https://www.pseudoyu.com/zh/2021/03/25/blockchain_ipfs_structure/

https://blog.csdn.net/u010953692/article/details/100745048

IPFS 在linux 进行环境配置相关推荐

  1. Linux 实用指令 -- 网络配置(查看网络IP和网关、 ping 测试主机之间网络连通、Linux网络环境配置(指定固定ip))

    文章目录 1. 网络配置 1.1 查看网络IP和网关 1.1.1 查看虚拟网络编辑器 1.1.2 这里可以修改ip地址(修改虚拟网络的ip) 1.1.3 这里可以修改网关(虚拟网络的网关) 1.1.4 ...

  2. Linux网络环境配置 虚拟机网络环境配置

    Linux网络环境配置 问题 安装一个Centos 7虚拟机,发现网络无法联通,并且没有IP地址. 发现无法访问外网,并且无法与宿主机相同 使用ifconfig命令查看IP信息,发现没有IP地址 使用 ...

  3. Linux+javaEE学习笔记之Linux网络环境配置

    Linux+javaEE学习笔记之Linux网络环境配置 网络知识简单介绍: Ip地址是:IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物 ...

  4. 沁恒CH32F103C8T6(二): Linux PlatformIO环境配置, 示例运行和烧录

    目录 沁恒CH32F103C8T6(一): Keil5环境配置,示例运行和烧录 沁恒CH32F103C8T6(二): Linux PlatformIO环境配置, 示例运行和烧录 沁恒CH32F103C ...

  5. Linux开发环境配置--正点原子阿尔法开发板

    Linux开发环境配置–正点原子阿尔法开发板 文章目录 Linux开发环境配置--正点原子阿尔法开发板 1.网络环境设置 1.1添加网络适配器 1.2虚拟网络编辑器设置 1.3Ubuntu和Windo ...

  6. Linux 开发环境配置(框架)

    Linux 开发环境配置(框架): 一.安装linux 二.配置网络: 1.virtualbox网络配置为桥接模式 2.ifconfig -a 命令 查看网卡的信息 3.配置CentOS网卡 vi / ...

  7. linux iis 环境配置教程,Linux系统Java环境配置教程

    1.卸载Linux系统自带的JDK 我们要删除掉自带的JDK环境 再次查询是否已经删除 2.安装自己下载的JDK 2.1 下载JDK,地址: http://www.oracle.com/technet ...

  8. 《从零开始搭建游戏服务器》Linux开发环境配置

    前言: 之前的开发工作一直是在Windows开发环境下进行的,但是正真发布和外网运营势必要发布到Linux环境下,而且有很多服务端的工具对于Windows系统的兼容性并不是非常完善,就像常用的Dock ...

  9. Linux chisel环境配置

    环境要求 CentOS7安装JDK1.8 Linux 安装sbt Chisel项目和Java这种类似,一般是有标准的目录结构的,对于Chisel而言,使用Scala项目构建工具sbt会很方便,所以环境 ...

最新文章

  1. java基础:任意进制到十进制的转换
  2. 【Linux系统编程】线程栈大小
  3. ElasticSearch知识点整理,值得收藏!
  4. java 在已有的so基础上封装jni_[干货]再见,Android JNI 封装
  5. 火爆全网的《李焕英》通过 AI 还原“复活”了
  6. 浅谈HTTP中Get与Post的区别_转
  7. 精通数据科学_10篇文章变得更加精通数据科学
  8. 1.45亿元!甲骨文中标中国邮政储蓄银行数据库项目
  9. 计算机组成原理讲义 微盘,计算机组成原理课件.pdf
  10. 桥接模式---汽车导航
  11. centOS 手动部署 wekan
  12. 江苏工匠杯_easyphp_wp
  13. python爬虫笔记五:汽车之家贴吧信息(字体反爬-动态映射)
  14. python学习之手把手教你将图片变成黑白或彩色字符画(骚操作)
  15. 自动驾驶轨迹预测论文阅读(一)Deep Learning-based Vehicle Behaviour Prediction For Autonomous Driving Applications
  16. centos7.9-kvm-ESXi相关操作
  17. 所谓框架到底是什么?
  18. 我终于有了GMAIL帐号了
  19. 网站上做企业微信扫码授权登录怎么做?(超详细教程)
  20. 【一个小功能】从js判断ie版本,浅谈navigator对象的appName属性

热门文章

  1. 解锁新姿势:FairyGUI在Unity中遇见的问题-第二弹
  2. 一度智信:如何提高电商店铺的销量
  3. Python实现excel统计排序输出,生成统计分布直方图
  4. 单片机c语言 音阶,单片机C语言程序设计:演奏音阶 (1)
  5. uniapp小程序实现录音 uniapp小程序长按录音 点击播放等功能(CSS实现语音音阶动画效果)
  6. 三子棋的升华———多子棋的代码实现
  7. 计算机科技专业简历,计算机科技专业类简历范文
  8. 浏览器对象模型 (BOM)
  9. 机器学习从理论到实践(常见算法)
  10. C# in a Nutshell 系列(2)C#和.Net 框架介绍