同时运行IPFS Desktop与CLI:Ubuntu 20.04下访问同一节点的方法
嘿,我之前也碰到过一模一样的问题!用Ubuntu软件中心通过Snap安装的IPFS Desktop,它自带的CLI工具并没有被自动添加到系统的环境变量里,所以终端才会提示command not found。不用单独安装IPFS CLI(那样确实会启动独立节点),只要做个简单的配置就能复用Desktop正在运行的节点了,步骤很简单:
第一步:验证IPFS Desktop的CLI路径
首先确认Snap版IPFS Desktop的CLI工具位置,默认是/snap/ipfs-desktop/current/bin/ipfs。你可以先在终端运行这个完整路径的命令测试一下:/snap/ipfs-desktop/current/bin/ipfs id如果能返回你的节点ID、地址等信息,说明这个路径是正确的,而且确实连接到了Desktop运行的节点。
第二步:将CLI路径添加到环境变量
为了让终端能直接识别ipfs命令,我们需要把这个路径加到系统的PATH里。根据你使用的shell(默认是bash),编辑对应的配置文件:- 如果你用bash,编辑
~/.bashrc:nano ~/.bashrc - 如果你用zsh,编辑
~/.zshrc:nano ~/.zshrc
在文件的末尾添加一行:
export PATH="$PATH:/snap/ipfs-desktop/current/bin"按下
Ctrl+O保存,Ctrl+X退出编辑器。- 如果你用bash,编辑
第三步:让配置生效
运行以下命令让新的环境变量立即生效:- bash用户:
source ~/.bashrc - zsh用户:
source ~/.zshrc
- bash用户:
第四步:测试命令
现在在终端输入ipfs id,应该就能看到和之前用完整路径运行时一样的节点信息了,这说明你已经成功通过CLI连接到IPFS Desktop的节点啦!
补充说明一下:Snap包是沙箱化的应用,它的二进制文件不会自动加入系统默认的PATH,所以需要我们手动配置。这样设置后,所有的ipfs命令都会复用IPFS Desktop的节点数据,不会再启动新的独立节点了。
内容的提问来源于stack exchange,提问作者nbz

