柯摩的BLOG

Forget before get.


  • 首页

  • 人生小记

  • 关于

  • 标签118

  • 分类10

  • 归档32

  • 运动日记

  • 相册

  • 热门

  • 友链

  • 搜索

一文完全解决Ubuntu20.04下源码构建安装IPFS环境

发表于 2020-09-02 分类于 Ubuntu 阅读次数: 阅读次数: | 字数: 1k 评论数:
本文字数: 2k 阅读时长 ≈ 2 分钟

IPFS三部曲,之二。

0⃣ 前言

如果是新装的Ubuntu系统,运行sudo命令输入密码,可能会不成功,所以需要先运行:

1
sudo passwd

重置密码,即可。

1⃣ 安装配置Go语言

1⃣.1⃣ 下载Go

IPFS是基于Go语言的项目,环境要求go version 1.14+。在Go的官方网站下载最新的版本即可https://golang.org/dl/。
可以用以下命令:

1
2
wget https://golang.org/dl/go1.14.6.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.14.6.linux-amd64.tar.gz

Tips:

  • 如果wget失败可以到官网https://golang.org/dl/go1.14.6.linux-amd64.tar.gz下载镜像,然后在那个目录下打开终端执行上面的命令的第二句。
  • 如果虚拟机下载失败,可以在主机中下载完成后,用Xftp连接虚拟机,将文件拖过去,至于如何连接,请看这篇文章保姆级教程——Xshell连接虚拟机中的Ubuntu并通过Xftp传输文件,Xshell和Xftp连接过程相同。

    1⃣.2⃣ 配置Go环境

  • 在进入用户主目录,并新建名为go的文件夹,在go的文件夹中建立三个子目录(名字必须为src、pkg和bin)。创建目录过程如下:
1
2
3
4
5
6
7
8
9
10
cd ~
mkdir go
cd go
sudo mkdir src
sudo mkdir pkg
sudo mkdir bin
sudo chmod 777 src
sudo chmod 777 pkg
sudo chmod 777 bin
ls -l
  • 配置环境变量,首先输入:
1
vi ~/.profile
  • 打开用户的环境变量,在最后添加如下内容:
1
2
3
4
export PATH=$PATH:/usr/local/go/bin 
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$HOME/go/bin

然后按Esc退出,接着输入:wq,然后输入回车就可以保存退出。

  • 激活配置文件,即输入如下命令:
1
source ~/.profile
  • 最后验证一下是否成功,输入如下命令查看结果:
1
2
go version
go env
  • 但是这样关掉终端,配置就会失效,所以在~/.bashrc中也设置一下:
1
gedit ~/.bashrc

然后在最后面添加:

1
2
3
4
export PATH=$PATH:/usr/local/go/bin 
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$HOME/go/bin

最后再:

1
source ~/.bashrc

2⃣ 安装配置IPFS环境

2⃣.1⃣ 更新apt-get 并安装 git

  • 在terminal执行以下语句:
1
2
sudo apt-get update
sudo apt-get install git

2⃣.2⃣ 下载go-ipfs源码

因为go get国内基本上下载不了,加上镜像的话例如:

1
2
3
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
go get -u github.com/ipfs/go-ipfs

虽然可以很快地下载,但却下载到了/go/pkg/mod/的目录下,感觉很难受,所以不推荐这种下载方法。

  • 可以采取直接git clone的方法,但是如果直接clone的是github上的源码还是很慢,所以我采取的方法是,先将源码fork到自己的仓库,然后再导入到码云,然后再从码云上clone下来,速度简直快的飞起,可以直接用我的码云上的源码库,版本为ipfs 0.6.0,操作如下:
1
2
3
4
5
6
7
cd ~
cd go/src
mkdir github.com
cd github.com
mkdir ipfs
cd ipfs
git clone https://gitee.com/ExcaliburAias/go-ipfs.git

当然,也不用非得clone到go/src/github.com/ipfs/go-ipfs下面,直接clone到桌面也可以。

2⃣.3⃣ 编译go-ipfs源码

· 首先安装make工具,然后安装gcc,最后授予文件权限以及更改go get的源,操作如下:

1
2
3
4
5
6
7
8
9
10
cd ~
cd go/src/github.com/ipfs/go-ipfs
sudo apt update
sudo apt install make
sudo apt install build-essential
sudo chmod 777 /usr/local/go/bin
sudo chmod 777 /plugin/loader/preload.go
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
make install

· 测试:

1
ipfs version

在这里插入图片描述

最后建议设置回去,也就是:

1
go env -w GO111MODULE=off
  • 最后,除此之外,也可以不用install,直接build,即生成的ipfs.exe不加入系统环境,而是生成在go/src/github.com/ipfs/go-ipfs/cmd/ipfs/ipfs.exe这里。实现方法就是将最后的:
1
make install

改为

1
make build

3⃣ IPFS的初始化和连接

  • 初始化IPFS节点:
1
ipfs init

在这里插入图片描述

  • 按提示输入
1
ipfs cat /ipfs/QmQPeNsJPyVWPFDVHb77w8G42Fvo15z4bG2X8D2GhfbSXc/readme

查看已经存储的readme文件
在这里插入图片描述

  • 启动守护进程并连接到IPFS网络:ipfs daemon
    在这里插入图片描述
    可以在浏览器中输入:http://127.0.0.1:5001/webui 打开webui界面
    在这里插入图片描述
相关文章推荐
  • 在本地VMware的Ubuntu,腾讯云CVM以及阿里云的ECS中搭建IPFS私有网络
  • 保姆级教程Xshell连接虚拟机中的Ubuntu并通过Xftp传输文件
  • Ubuntu20.04 与 Nvidia显卡 配置Pytorch深度学习环境(Pytorch1.4.0+CUDA10.0+cuDNN7.4) + 远程Jupyter Notebook服务 + 配置Pycharm远程连接服务
  • Ubuntu下Nvidia显卡直通教程
  • VMware中Ubuntu20.04下有显示器手动调节Nvidia显卡风扇转速
喜欢就支持一下吧~
柯摩 微信支付

微信支付

柯摩 支付宝

支付宝

  • 本文作者: 柯摩
  • 本文链接: https://kemo.xyz/一文完全解决Ubuntu20-04下源码构建安装IPFS环境.html
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
Ubuntu Linux Xshell IPFS 虚拟机 Go
Tweet
Share
Link
Plus
Share
Class
Send
Send
Pin
保姆级教程Xshell连接虚拟机中的Ubuntu并通过Xftp传输文件
在本地VMware的Ubuntu,腾讯云CVM以及阿里云的ECS中搭建IPFS私有网络
------------- 本 文 结 束 感 谢 您 的 阅 读 -------------
  • 文章目录
  • 站点概览
柯摩

柯摩

真实自有万钧之力
32 日志
10 分类
118 标签
RSS
GitHub E-Mail Weibo QQ Wechat Twitter Bilibili
Creative Commons
  1. 1. 0⃣ 前言
  2. 2. 1⃣ 安装配置Go语言
    1. 2.1. 1⃣.1⃣ 下载Go
    2. 2.2. 1⃣.2⃣ 配置Go环境
  3. 3. 2⃣ 安装配置IPFS环境
    1. 3.1. 2⃣.1⃣ 更新apt-get 并安装 git
    2. 3.2. 2⃣.2⃣ 下载go-ipfs源码
    3. 3.3. 2⃣.3⃣ 编译go-ipfs源码
  4. 4. 3⃣ IPFS的初始化和连接
0%

Tag Cloud

  • Algorithm1
  • Anaconda31
  • Barrier1
  • BeautifulSoup1
  • BoxPlot1
  • CUDA1
  • CVM1
  • DataMining3
  • Diary5
  • ECS1
  • ESXi3
  • Editor8
  • Go1
  • Hexo1
  • IPFS2
  • IQR1
  • Job1
  • Jupyter3
  • Jupyter Notebook1
  • Lasso正则化1
  • Learning1
  • LightGBM1
  • Linear Regression1
  • Linux8
  • MATLAB1
  • MySQL1
  • Navie Bayes1
  • Next1
  • Nvidia5
  • OJ1
  • Onehot1
  • PaddleOCR1
  • Pandas Head1
  • PySimpleGUI1
  • Pycharm1
  • Python1
  • Pytorch1
  • RTX 2070 Super4
  • Reading1
  • Ridge正则化1
  • SSH1
  • Science Uranology1
  • Searcher1
  • Selenium1
  • Sticker1
  • Study3
  • Thinking2
  • Tianchi3
  • Ubuntu8
  • VMware1
  • X Server1
  • XGBoost1
  • Xftp1
  • Xshell3
  • alive_progress1
  • cross validation1
  • css1
  • cuDNN1
  • custom1
  • distributed system3
  • fan1
  • groupby1
  • matplotlib1
  • multithreading3
  • nvidia-settings1
  • pandas7
  • python9
  • requests1
  • seaborn3
  • set_gpu_fans_public2
  • socket3
  • svm1
  • xorg.conf1
  • 二进制1
  • 五折交叉验证1
  • 内存优化1
  • 决策树1
  • 分布式1
  • 分布式计算2
  • 包裹式(wrapper)1
  • 博客1
  • 反向索引1
  • 回忆1
  • 地铁线路优化1
  • 多层感知机(MLP)1
  • 多线程3
  • 嵌入式(embedding)1
  • 感情1
  • 插值1
  • 数学建模1
  • 日记1
  • 朋友圈1
  • 朴素贝叶斯1
  • 极坐标1
  • 梯度提升树(GBDT)1
  • 正则表达式1
  • 正态分布1
  • 毕业论文1
  • 气象图1
  • 温馨1
  • 热力图1
  • 画图1
  • 目标函数1
  • 真挚1
  • 私有网络1
  • 约束条件1
  • 网格调参1
  • 节点通信3
  • 虚拟机3
  • 调查问卷1
  • 贝叶斯调参1
  • 贪心调参1
  • 过滤式(filter)1
  • 遗传算法1
  • 问卷星1
  • 随机森林1
  • 随笔2
  • 风扇1
© 2015 – 2020 柯摩 | 站点总字数: 162k | 站点阅读时长 ≈ 2:27
全站共 77.3k 字
载入天数...载入时分秒...
皖ICP备 - 19020907 | 苏公网安备 32050802011200号
总访客量 人 | 总访客数 次