I noticed that cleos system newaccount
requires these arguments to be set --stake-net --stake-cpu --buy-ram-kbytes
. Does this mean that users would have to create accounts using the system contracts instead of the create account
command?
2 Answers
cleos create account
is for boot purpose, several accounts MUST created first before deploy eosio.system contract. See more.
eosio.bpay
eosio.msig
eosio.names
eosio.ram
eosio.ramfee
eosio.saving
eosio.stake
eosio.token
eosio.vpay
And cleos system newaccount
is a normal way to create account, it is call 'action' (same like function) of eosio.system
contract.
And if you looking into eosio.system
contract, you will find that newaccount
is same as create account
.
And just like Todd said, after your deploy eosio.system
contract, it is not allowed to create account using cleos create account
.
If the system contract isn't running, then accounts don't need to buy ram or stake resources. cleos create account
works in this mode.
If the system contract is running, then accounts need enough ram to hold the account information. They also need staked resources to cover any transactions they sign. cleos system newaccount
takes care of these issues.