0️⃣ 前言
如果是新装的Ubuntu系统,运行sudo
命令输入密码,可能会不成功,所以需要先运行:
sudo passwd
重置密码,即可。
1️⃣ 安装配置Go
语言
1️⃣.1️⃣ 下载Go
IPFS
是基于Go
语言的项目,环境要求go version 1.14+。在Go
的官方网站下载最新的版本即可https://golang.org/dl/。
可以用以下命令:
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
)。创建目录过程如下:
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
- 配置环境变量,首先输入:
vi ~/.profile
- 打开用户的环境变量,在最后添加如下内容:
export PATH=$PATH:/usr/local/go/bin
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$HOME/go/bin
然后按Esc
退出,接着输入:wq
,然后输入回车就可以保存退出。
- 激活配置文件,即输入如下命令:
source ~/.profile
- 最后验证一下是否成功,输入如下命令查看结果:
go version
go env
- 但是这样关掉终端,配置就会失效,所以在
~/.bashrc
中也设置一下:
gedit ~/.bashrc
然后在最后面添加:
export PATH=$PATH:/usr/local/go/bin
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$HOME/go/bin
最后再:
source ~/.bashrc
2️⃣ 安装配置IPFS环境
2️⃣.1️⃣ 更新apt-get
并安装 git
- 在
terminal
执行以下语句:
sudo apt-get update
sudo apt-get install git
2️⃣.2️⃣ 下载go-ipfs
源码
因为
go get
国内基本上下载不了,加上镜像的话例如:
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
,操作如下:
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
的源,操作如下:
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
· 测试:
ipfs version
最后建议设置回去,也就是:
go env -w GO111MODULE=off
- 最后,除此之外,也可以不用
install
,直接build
,即生成的ipfs.exe
不加入系统环境,而是生成在go/src/github.com/ipfs/go-ipfs/cmd/ipfs/ipfs.exe
这里。实现方法就是将最后的:
make install
改为
make build
3️⃣ IPFS
的初始化和连接
- 初始化
IPFS
节点:
ipfs init
- 按提示输入
ipfs cat /ipfs/QmQPeNsJPyVWPFDVHb77w8G42Fvo15z4bG2X8D2GhfbSXc/readme
查看已经存储的readme文件
- 启动守护进程并连接到IPFS网络:
ipfs daemon
可以在浏览器中输入:http://127.0.0.1:5001/webui 打开webui界面
评论区