统计
  • 建站日期:2021-03-10
  • 文章总数:291 篇
  • 评论总数:0 条
  • 分类总数:8 个
  • 最后更新:4月25日
文章 节点中心

C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程

蚁巢
首页 节点中心 正文

强烈观看完此教程后再决定怎么做。


节点占用C盘满了怎么办?是否可以把节点数据迁移到D盘呢?很多做节点的朋友安装电脑时分区通常C盘在100G以内,最近节点数据增加C盘已满,导致Docker无法正常工作,下面我来讲一下节点数据是否可以转到D盘。严格来说,节点数据并不是在C盘系统目录下,而是在%appdata%这个环境变量目录下,%appdata%就代表了C:Users用户名AppDataRoaming这个文件夹。

(我这里提供了3种迁移方案,请耐心看完选择一种适合你的)

方案一

打开Docker,看到几个路径都是在此目录下


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第1
张图片


所以只要改变%appdata%的路径,节点数据就能转移到其他盘符,而改变%appdata%的路径是Windows允许的,只需要简单几步操作就能搞定。

(注意:虽然Windows允许变更%appdata%,但并非所有的应用程序都能事后调整,有些可能在安装时就记录了绝对路径,所以最好是刚安装Windows后,就立即变更%appdata% 。 否则在下面的操作步骤之前请先卸载Pi Node与Docker Desktop,然后变更%appdata%,再重新安装Pi Node与Docker Desktop。)


我们可以从运行输入%appdata%打开此目录


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第2
张图片


这个目录属性是隐藏的,无法从路径依次点击进入,也可以从文件夹选项里设置显示隐藏文件,就能看到它了。


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第3
张图片


在打开的此窗口空白处点右键,选择属性


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第4
张图片


点击移动,例如我在D盘下建立目录new_appdata,选择它


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第5
张图片


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第6
张图片


完成后请重启电脑,%appdata%的路径已经改变。

下一步再重新安装Pi Node与Docker Desktop,你会发现他的路径已经改变。

Docker内的路径也会改变。


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第7
张图片



方案二

方法一是通过移动 %appdata% 目录来更改节点文件位置,但如果是一台已经装了许多乱七八糟的软件、 不确定移动 %appdata% 目录是否会有影响其他程序运行呢?

其实还是有办法的,只要手动建立pi-consensus Container就能改位置了。

首先请备份 %appdata%Pi Networkstellar.env,因为等一下它会被删除。


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第8
张图片


stellar.env是一个纯文本文件,是由节点程序在建立pi-consensus Container时产生的PostgreSQL数据库的随机密码。


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第9
张图片


在Pi Node里,点击“Remove all blockchain data",它会删除pi-consensus Container,也会删除stellar.env(所以刚才才说要备份)。


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第10
张图片



检查Docker的pi-consensus Container已经删除。


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第11
张图片



退出节点程序(按了Remove all blockchain data,小红点也会关闭)。


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第12
张图片



在你喜欢的地方建立新文件夹,例如D:Pi Networkdocker_volumes。

将刚才备份的stellar.env也放到你高兴的地方,例如D:Pi Networkstellar.env。 如果忘了备份,就自己用记事本建立一个同名的文本,内容为POSTGRES_PASSWORD=xxxxxxxxxxxxxxxxxxxx(密码随便打)。


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第13
张图片


在命令提示字符(CMD)执行:

docker run -t --env-file="D:Pi Networkstellar.env" -v "D:Pi Networkdocker_volumesstellar:/opt/stellar" -v "D:Pi Networkdocker_volumessupervisor_logs:/var/log/supervisor" -v "D:Pi Networkdocker_volumeshistory:/history" -p 31401:8000 -p 31402:31402 -p 31403:1570 --name pi-consensus -d pinetwork/pi-node-docker:latest --testnet

(彩色的字请改成你自己的路径,其余一字不漏的照抄)


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第14
张图片


检查pi-consensus Container成功执行。


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第15
张图片


检查密码跟Mounts路径也都正确。


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第16
张图片


检查文件都有产生在新的路径底下。


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第17
张图片


启动节点程序,结果发现pi-consensus Container又停止了,这是因为上次结束节点程序时,小红点是关闭的,所以再重新开起来时也是关闭的。 重新开小红点就好了。

或者熟悉user-preferences.json的人,也可以先把“switchStatus”的值改成true,再执行节点程序,小红点就会自动亮了


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第18
张图片



方案三

此方法需要修改user-preferences.json,关于user-preferences.json请参阅https://picn.cc/post/145.html


在Pi Node里,点击“Remove all blockchain data",它会删除pi-consensus Container


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第10
张图片



检查Docker的pi-consensus Container已经删除。


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第11
张图片


退出节点程序(按了Remove all blockchain data,小红点也会关闭)。


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第12
张图片


用记事本打开 %appdata%Pi Networkuser-preferences.json ,在最后一个括弧前加上 

,"dockerContainerVolume":"D:Pi Networkdocker_volumes"

D:Pi Networkdocker_volumes是你指定的新路径,记得是两个斜线。如图所示,格式不能有误


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第22
张图片


然后启动节点程序,重新打开小红点


C盘满了?把Pi节点数据迁移到D盘或者其他盘符操作教程
-蚁巢
-第18
张图片


结论:当然还可以用无损分区软件来解决C盘空间不够的问题,前提是你其他盘符要有足够可转移的空间。至于那些120G固态的可以再加硬盘用上面发方法来处理。


版权说明
文章采用: 《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权。
版权声明:未标注转载均为本站原创,转载时请以链接形式注明文章出处。如有侵权、不妥之处,请联系站长删除。敬请谅解!

-- 展开阅读全文 --
Pi Node节点更新到0.4.9版本,附新版下载地址
« 上一篇
Pi节点的Incoming和Outoging说明
下一篇 »
为了防止灌水评论,登录后即可评论!

HI ! 请登录
注册会员,享受下载全站资源特权。

热门文章

最新评论