EOS 操作小波折

EOS 操作小波折

这是发生在前两天的事情啦,挺有意思的,一直想记录一下,但是整天胡乱忙碌就推迟到今天了。


(图源 :pixabay)

话说一天我一个朋友微信上和我说:“O哥,我从不良商家那买了个EOS账户,结果奸商没给代理CPU和NET,导致这个号啥也干不了。你能否用你的EOS代理点嘛?”

话说作为初学者,我根本不懂什么代理CPU和NET是咋回事,并且我的号也是找不良商家朋友注册的,不过我的朋友嗷嗷够意思,给我代理了足够的CPU和NET,然而他帮我弄完号码,我还一下没用过呢。

于是我告诉这个微信上的朋友,你把代理CPU和NET的指令给我,我先去创建钱包,导入私钥,然后再帮他代理带宽和CPU。

因为我在一台VPS上搞了好几组节点测试,乱七八糟的,于是我把其它的节点都干掉,然后弄了一个崭新的账户跑节点,然后启动keosd,然后创建钱包,然后导入我自己EOS账户的私钥,嗯,一切正常。

再和朋友确认了一下指令无误,我就开始执行指令啦

cleos system delegatebw my_account friends_account "0.01 EOS" "0.01 EOS"

按说这简单的操作应该不会有啥问题啊,结果打出一大堆错误信息,主要信息如下:

Error 3090003: provided keys, permissions, and delays do not satisfy declared authorizations
Ensure that you have the related private keys inside your wallet and your wallet is unlocked.

看字面意思是我没有足够权限,让检查我有没有将私钥导入到钱包并且解锁钱包。

不过按说我导入的姿势也没错啊,既然让检查就各种检查吧。

列一下钱包中的公钥,发现显示的公钥和我EOS账户的公钥没区别,说明我导入的还是正常的

cleos wallet keys

再试着解锁一下钱包

cleos wallet unlock -n mywallet

提示我如下信息,也就是说,钱包已然解锁

Error 3120007: Already unlocked

我和朋友绞尽脑汁地想也没想明白问题可能在哪里,朋友让我试试自己代理给自己,也是不行,这就奇了怪哉啊。

等等,我似乎忘记了什么事情,于是我执行了一下如下:

cleos get info


我的EOS同步到85万块,而彼时EOS的最新块为1811145块。

我忘记了我清空了我的一堆测试节点,当前再跑的节点是从头开始同步的,也就是说我EOS还没有同步完,这时候我本地EOS还没有我的账户信息之类的乱七八糟的东西,我发指令让它去代理CPU和NET给别人,我的EOS节点当然很懵啊。

想明白这个问题就好办了,一种方法是等我节点同步完成,这个好像需要一点点时间,我怕我的朋友等着着急。另外一种方法就是用第三方节点啦。随便找了个可以的公开节点,运行如下指令:

cleos -u https://api.mainnet.eospace.io system delegatebw my_account friends_account "0.01 EOS" "0.01 EOS"


尽管我不明白这乱七八糟显示的都是啥意思,但是无疑是搞定了。


在节点尚未同步完成的时候进行操作除了我也没谁了吧,EOS提示信息也不够友好(EOS表示我也很无奈啊)。不过好在最终借助第三方公开节点完成了操作,否则朋友开口求助却我却因为笨无法帮忙,就尴尬了。

把这事记录下来,我们从中可以汲取的教训和经验就是:

  • 不要在节点尚未同步完成时进行操作
  • 除了本地节点我们可以用-u 指定其它API节点
  • 从奸商那买号记得让送点CPU和NET啥的(还有内存)

This page is synchronized from the post: EOS 操作小波折

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×