国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

IPFS安裝與概覽

leanxi / 1784人閱讀

摘要:安裝與概覽由于我使用的實現為,所以首先要安裝配置環境。六安裝輔助工具和,前者是一個桌面客戶端,后者是一個瀏覽器插件,可以在及等瀏覽器上安裝。你可以新開一個終端使用下等功能好了,本次對的安裝配置到此結束,后續會更新更多內容。

IPFS安裝與概覽

由于我使用的IPFS實現為go-ipfs,所以首先要安裝配置Golang環境。

我使用的系統為Ubuntu18.04,后面所有操作均在此系統下完成,下面的教程改自學長給的文檔。

本文允許轉載,轉載前請私信我,并且轉載發布要附帶源地址以及我的ID。

如你發現本文有錯誤,可評論私信告知。

一、安裝Go

下載最新的Go語言版本,目前我用的版本為1.11.1,從官網下載時可能需要掛梯子,官網下載地址為golang下載。

下好linux版本的二進制文件后,將其解壓至/usr/local目錄下(你也可以解壓到其他地方,只要把path設置好)

sudo tar xf go1.11.1.linux-amd64.tar.gz -C /usr/local

在/home目錄,創建一個go目錄,用做gopath

mkdir ~/go

配置好路徑和環境,對/etc/profile和~/.zshrc(如果你用bash就是~/.bashrc)進行操作

$sudo vim /etc/profile
export    GOROOT=/usr/local/go
export    GOPATH=/HOMEPATH/go    
export    PATH=$PATH:$GOROOT/bin:$GOPATH/bin
$source /etc/profile
$vim ~/.zshrc
export  GOROOT=/usr/local/go                                                
export  GOPATH=/home/xcshuan/go                                             
export  PATH=$PATH:$GOROOT/bin:$GOPATH/bin
$source ~/.zshrc

看go語言是否安裝成功

$go version
go version go1.11.1 linux/amd64

二、安裝IPFS

下載IPFS的go實現源碼

go get -u github.com/ipfs/go-ipfs

進入源碼目錄編譯安裝

cd ~/go/src/github.com/ipfs/go-ipfs
make install

Note1:若是?直處于下載gx,連接ipfs.io,可以架梯子,或者在/etc/hosts中添加

209.94.78.78 ipfs.io

Note2: 編譯的過程會在~/go/src/gx/ipfs?錄下,下載很多包,所以第?次編譯過程?較?

Note3: 遇到golang.org/x/yyyy包下載超時,可以在github.com/golang下載相應的包后放在~/go/src/golang.org/x/下?

查看IPFS是否安裝成功,在終端輸入即可看到幫助信息

$ipfs
USAGE
  ipfs - Global p2p merkle-dag filesystem.

  ipfs [--config= | -c] [--debug= | -D] [--help=] [-h=] [--local= | -L] [--api=]  ...

SUBCOMMANDS
  BASIC COMMANDS
    init          Initialize ipfs local configuration
    add     Add a file to IPFS
    cat      Show IPFS object data
    get      Download IPFS objects
    ls       List links from an object
    refs     List hashes of links from an object
  
  DATA STRUCTURE COMMANDS
    block         Interact with raw blocks in the datastore
    object        Interact with raw dag nodes
    files         Interact with objects as if they were a unix filesystem
    dag           Interact with IPLD documents (experimental)
  
  ADVANCED COMMANDS
    daemon        Start a long-running daemon process
    mount         Mount an IPFS read-only mountpoint
    resolve       Resolve any type of name
    name          Publish and resolve IPNS names
    key           Create and list IPNS name keypairs
    dns           Resolve DNS links
    pin           Pin objects to local storage
    repo          Manipulate the IPFS repository
    stats         Various operational stats
    p2p           Libp2p stream mounting
    filestore     Manage the filestore (experimental)
  
  NETWORK COMMANDS
    id            Show info about IPFS peers
    bootstrap     Add or remove bootstrap peers
    swarm         Manage connections to the p2p network
    dht           Query the DHT for values or peers
    ping          Measure the latency of a connection
    diag          Print diagnostics
  
  TOOL COMMANDS
    config        Manage configuration
    version       Show ipfs version information
    update        Download and apply go-ipfs updates
    commands      List all available commands
    cid           Convert and discover properties of CIDs
  
  Use "ipfs  --help" to learn more about each command.
  
  ipfs uses a repository in the local file system. By default, the repo is
  located at ~/.ipfs. To change the repo location, set the $IPFS_PATH
  environment variable:
  
    export IPFS_PATH=/path/to/ipfsrepo
  
  EXIT STATUS
  
  The CLI will exit with one of the following values:
  
  0     Successful execution.
  1     Failed executions.
$ipfs version
ipfs version 0.4.18-dev

可見目前ipfs還不是正式版

三、安裝zsh

zsh是比bash要好用許多的,用OhMyZsh來傻瓜式安裝,在命令行下輸入以下語句然后輸入密碼即可。

$sudo apt install zsh
$sh -c "$(wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"

然后安裝一些插件,

 $vim ~/.zshrc
 //找到下面這一句
 plugins=(
    git
)
//將其修改為
plugins=(
 git extract last-working-dir zsh-autosuggestions
 wd zsh-syntax-highlighting
 )

安裝autojump,這是一個十分強大的目錄跳轉插件,建議安裝,安裝流程如下

$sudo apt-get install autojump
$cd
$git clone https://github.com/joelthelion/autojump.git
$cd autojump
$python ./install.py 
//最后會有一個提示,讓你把那句話復制到~/.zshrc里去,每個人都不一樣
vim ~/zshrc
復制剛剛那段到最后
source ~/.zshrc
四、編程環境

編輯器 or IDE

可以使用微軟的VScode或者jetbrain的Goland來編輯源碼,我使用的是VScode

在VScode里安裝Go插件,打開一個.go文件VScode會提示你安裝一些Go的插件,這些插件有助于源碼閱讀編輯,建議安裝,但是其中有幾個會安裝失敗,此時需要架梯子進行,如果依然失敗,在架梯子的前提下,將VScode里的安裝命令復制到終端執行,即可成功安裝,失敗可多次嘗試。

安裝zsh,zsh比自帶的bash要好用好看很多,有很多插件,建議用OhMyZsh安裝,教程自查,Github上有一個zsh的ipfs補全插件,可以選擇安裝,如果用bash的話,可以在~/go/src/github.com/ipfs/go-ipfs/misc/completion目錄下找到ipfs-completion.bash,把這個文件復制到~/.ipfs,然后在home目錄新建.bash_completion文件,在文件里加上source ~/.ipfs/ipfs-completion.bash這句,即可在終端補全IPFS指令。

五、簡化代碼

安裝完IPFS后,我們可以看到在$GOPATH/src下面有兩個文件夾和ipfs有關,分別是~/go/src/github.com/ipfs和~/go/src/gx/ipfs,第一個為主ipfs文件夾,后一個是由許多包組成的文件夾,后一個為前一個提供底層支持,諸如文件倉庫的管理,網絡協議之類的都在后一個文件夾,而命令行界面在第一個文件夾。

進入~/go/src/gx/ipfs文件夾,我們發現里面都是Qm開頭編碼命名的文件夾,再點進去才能看到如go-libp2p-nat的正常文件夾名,Qm編碼文件夾很影響代碼閱讀,我們可以刪去它。

在前面make install成功以后,首先終端進入go/src/gx/ipfs和go/src/github.com/ipfs/go-ipfs兩個文件夾中運?

git init 
git add. 
git commit -m "begin" --allow-empty

這樣能保證出問題還可以git reset --hard回滾回去。

go/src/gx/ipfs?目錄下,將Qmxxx目錄中的內容移動出來

cd go/src/gx/ipfs
cp -r */* . 
mkdir -p ../bak
mv Qm../bak 

使用通配符,用VScode全局替換所有代碼中的“gx/ipfs/Qmxxx/yy”為“gx/ipfs/yy”(否則go-ipfs找不到修改后的package了),包括go/src/gx/ipfs和go/src/github.com/ipfs/go-ipfs在vscode中使用replace功能,這兩個文件夾下的所有文件都得替換。

"gx/ipfs/Qm.*?/
替換為
"gx/ipfs/ 

注意1,VScode默認未開啟全局搜索功能,請百度開啟方法。

注意2,請使用正則模式查找替換

注意3,此次替換設計幾千次正則查找,速度非常慢,請耐心等待。

修改go/src/github.com/ipfs/go-ipfs?目錄下的Rules.mk,注釋掉下?面三?

#include mk/gx.mk
...
#deps: gx-deps
#.PHONY: deps

在go/src/github.com/ipfs/go-ipfs目錄下make install編譯通過

此時新建一個工作區,講gx/ipfs和go-ipfs兩個文件夾都放入工作區中,方便代碼閱讀編輯。

六、安裝輔助工具

ipfs-desktop和IPFS-companion,前者是一個桌面客戶端,后者是一個瀏覽器插件,可以在firefox、Chrome及Safari等瀏覽器上安裝。

七、使用測試

首先終端運行ipfs init

$ipfs init

ipfs就會默認新建一個~/.ipfs文件夾,里面會存一些信息,代表你這個節點已初始化成功

$cd ~/.ipfs
$tree
├── api
├── blocks(文件夾)
├── config
├── datastore(文件夾)
├── datastore_spec
├── ipfs-completion.bash
├── keystore(文件夾)
└── version

然后運行ipfs daemon即可啟動ipfs的駐留程序

在瀏覽器打開http://localhost:5001/webui或者使用ipfs companion可以查看一些內容,如下圖所示

可以開一個終端執行ipfs id查看自己節點的信息。

$ipfs id
{
    "ID": "Qme**Fp",
    "PublicKey": "CAASpgI**AAE=",
    "Addresses": [
        "/ip4/127.0.0.1/tcp/4001/ipfs/Qme**5hKrFp",
        "/ip4/192.168.1.125/tcp/4001/ipfs/Qme**T5hKrFp",
        "/ip6/::1/tcp/4001/ipfs/Qme**T5hKrFp",
        "/ip4/222.20.72.127/tcp/4001/ipfs/Qme**qKT5hKrFp"
    ],
    "AgentVersion": "go-ipfs/0.4.18-dev/29**961",
    "ProtocolVersion": "ipfs/0.1.0"
}

你可以新開一個終端使用下ipfs add、ipfs get、ipfs cat、ipfs block put、ipfs block get等功能

好了,本次對ipfs的安裝配置到此結束,后續會更新更多內容。

IPFS官方文檔
go-ipfs實現

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/24377.html

相關文章

  • 基于以太坊的視頻直播平臺 Livepeer白皮書中文概覽

    摘要:說明的視頻片段分發現在沒做出什么成果作者還提了一句,協議有望成為直播內容的傳播協議。仿佛也沒能掩飾住不知道怎么分發視頻片段的尷尬說了這么多,看了代碼發現視頻片段還是通過分發總結最終將建立一個可擴展的,即用即付的直播網絡 Background Livepeer旨在構建帶有激勵機制的視頻直播分布式網絡 Blockchain 以太坊 智能合約和交易基于Ethereum以太坊網絡 DP...

    Eric 評論0 收藏0
  • 沙利文發布首個2021去中心化云計算市場趨勢概覽 安邁云布局切中未來趨勢_云資訊

    摘要:針對這一新的技術趨勢,會上來自弗若斯特沙利文高級分析師頭豹研究院副理事賈雁發布了行業首個去中心化云計算市場趨勢全面分析了當前去中心化市場的規模和走勢。基礎架構作為整個環境的底層,通過去中心化能夠更好的保護每個人的隱私安全和數據安全。 在剛剛結束的萬物新生 云生多態 2021Web 3.0云響力峰會上分布式計算、分布式存儲以及去中心化技術成為了整場關注的焦...

    ACb0y 評論0 收藏0
  • IPFS 使用全記錄

    摘要:通常的做法是分享者將文件用接收者的公鑰加密,接收者從網絡下載后用私鑰解密。而在命令的完整形式是注意其中的,如果不帶這個參數,那么久表示使用默認的也就是節點。 IPFS是什么 IPFS(InterPlanetary File System)是一個內容尋址、版本化、點對點的分布式文件系統。 內容尋址 - 文件不是以URL尋址,而是根據文件內容的Hash值尋址,一旦內容確定,文件地址也就確...

    yagami 評論0 收藏0
  • 【董天一】如何在IPFS里面上傳一張圖片

    摘要:之前有好幾人問過小編,想在里面上傳一張圖片。如何做今天小編就講一下如何在里面上傳下載文件。這個時候你可以在瀏覽器里面輸入你的哈希值就可以看到你的文件了,比如,這個小編剛才上傳的文件。 作者簡介:董天一 ,IPFS/Filecoin中國區技術布道人 ,《IPFS指南》作者。畢業于北京大學軟件與微電子學院曾擔任甲骨文亞洲研發中心(中國)數據庫開發工程師。資深區塊鏈技術開發者,現致力于IPF...

    awesome23 評論0 收藏0

發表評論

0條評論

leanxi

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<