目录
环境
- 腾讯云服务器 - linux - ubuntu - 20.04
- 更新系统
- $ apt update && apt upgrade -y
- 更新系统
- 安装geth
- 查看geth版本命令:
- $ geth version
- linux / ubuntu:
- $ add-apt-repository -y ppa:ethereum/ethereum
- $ apt update
- $ apt install ethereum -y
- geth版本:1.10.15-stable
- win :
- 点击下载
- 在链接中点击win版本下载安装即可。
- 查看geth版本命令:
- go (本文暂不需要用到)
- 版本:1.17.5 linux/amd64
- 查看go版本命令:$go version
注:
- 前置"$"的命令表示是在控制台里的命令
- 前置"/>"的命令表示在geth内的命令
私链搭建
- 创建一个geth数据的存放目录
- $ mkdir rungeth
- 进入这个目录
- $ cd rungeth
- 用geth命令创建一个账户
- 在当前目录下创建文件夹data
- $ sudo mkdir data
- 创建账户
- $ sudo geth --datadir ./data account new
- 按照控制台的提示输入两次要给这个账户设置的密码
- 在当前目录下创建文件夹data
- 准备创世块文件 genesis.json 和 启动脚本文件 rungeth.sh
- genesis.json
- $ sudo vi genesis.json
- 然后把下面的内容复制进去
{
"config":{
"chainId":7,
"homesteadBlock":0,
"eip150Block":0,
"eip155Block":0,
"eip158Block":0,
"byzantiumBlock":0,
"constantinopleBlock":0,
"petersburgBlock":0,
"istanbulBlock":0,
"ethhash":{}
},
"alloc":{},
"coinbase":"0x0000000000000000000000000000000000000000",
"difficulty":"0x2",
"extraData":"",
"gasLimit":"0xffffffff",
"nonce":"0x0000000000000042",
"mixhash":"0x0000000000000000000000000000000000000000000000000000000000000000", "parentHash":"0x0000000000000000000000000000000000000000000000000000000000000000",
"timestamp":"0x00"
}
- rungeth.sh
- $ sudo vi rungeth.sh
- 然后把下面的内容复制进去
geth --datadir ./data --networkid 7 --http --http.addr 0.0.0.0 --http.vhosts "*" --http.api "admin,debug,web3,eth,txpool,personal,ethash,miner,net" --http.corsdomain "*" --snapshot --mine --miner.threads 1 --allow-insecure-unlock console 2> 1.log
- 以上两个文件的中的参数说明见
- 初始化
- $ sudo geth --datadir ./data init ./genesis.json
- 执行成功则不会有Fatal报错,例如我的执行成功后只有一个警告
INFO [01-15|10:34:55.186] Maximum peer count ETH=50 LES=0 total=50
INFO [01-15|10:34:55.186] Smartcard socket not found, disabling err="stat /run/pcscd/pcscd.comm: no such file or directory"
WARN [01-15|10:34:55.188] Sanitizing cache to Go's GC limits provided=1024 updated=611
INFO [01-15|10:34:55.188] Set global gas cap cap=50,000,000
INFO [01-15|10:34:55.188] Allocated cache and file handles database=/home/ubuntu/eth/rungeth/data/geth/chaindata cache=16.00MiB handles=16
INFO [01-15|10:34:55.213] Writing custom genesis block
INFO [01-15|10:34:55.217] Persisted trie from memory database nodes=1 size=149.00B time="45.27µs" gcnodes=0 gcsize=0.00B gctime=0s livenodes=1 livesize=0.00B
INFO [01-15|10:34:55.218] Successfully wrote genesis state database=chaindata hash=6ef04e..bd9488
INFO [01-15|10:34:55.218] Allocated cache and file handles database=/home/ubuntu/eth/rungeth/data/geth/lightchaindata cache=16.00MiB handles=16
INFO [01-15|10:34:55.231] Writing custom genesis block
INFO [01-15|10:34:55.232] Persisted trie from memory database nodes=1 size=149.00B time="40.785µs" gcnodes=0 gcsize=0.00B gctime=0s livenodes=1 livesize=0.00B
INFO [01-15|10:34:55.232] Successfully wrote genesis state database=lightchaindata hash=6ef04e..bd9488
- 启动
- $ sudo ./rungeth.sh
- 启动后可以查看日志文件1.log, 或是控制台一直死循环输出"look for..."则说明创世块文件有问题,得重新搞一个。
- 如果创世块文件内的参数和启动命令的参数有一些不兼容也会导致启动失败出现fatal错误提示。
- 初次启动后得等一段时间才会开始挖矿,挖矿后才能部署合约,执行等等的操作。如果账户余额在增加就说明已经在挖矿了。
使用remix远程连接私链并部署合约
- 注意云服务器需要防火墙放行8545端口(远程连接以太坊端口)
- 打开remix网页版(打不开请挂梯子)
- 部署合约
- 选择环境
- 选择web3提供器
- 然后在网址栏输入私链地址http//127.0.0.1:8545
- 私链在本地则输入为127.0.0.1,如果在服务器上,请输入服务器公网ip
- 后面的端口8545是geth的默认连接端口,如果没有修改过则为8545,有的话请看运行geth时的命令参数 --port
- 然后即可想使用测试网络时一样的编译部署即可。
- 选择环境
操作命令
- 列出所有账户
- />eth.accounts
- 解锁账户
- 如果要使用此账户转账或执行合约,则需要先给他解锁
- 语法1:
- />personal.unlockAccount(要解锁的账户, "密码", 解锁时间)
- 示例:
- />personal.unlockAccount(eth.accounts[0], ’123456‘, 100000)
- 语法2:
- />personal.unlockAccount(eth.accounts[0])
- 这时控制台会询问你的密码,这样解锁显然好处是密码不会外显在控制台,但不能指定解锁时间,默认解锁时间为300
- 查看余额
- />eth.getBalance(eth.accounts[0])
- 开始挖矿
- />miner.start()
- geth启动时,会自动启动挖矿,这时执行miner.start()则会返回null。
- 停止挖矿
- />miner.stop()
- 转账
- />eth.sendTransaction({from:user1, to:user2, value:web3.toWei(1, "ether")})
- 设置账户别名,方便命令输入
- />user1 = eth.accounts[0]
- 创建账户
- />personal.newAccount('密码')
- 设置挖矿账户
- />miner.setEtherbase(eth.accounts[0])
- 查看挖矿账户
- />eth.coinbase
- 查看区块高度
- />eth.blockNumber
- geth远程连接私链
- geth attach http://ip:8545
- ip即为私链所在的服务器ip,如果是本地则为localhost
- 本地:http://localhost:8545
- 远程连接(举例ip为:100.10.1.0):http://100.10.1.0:8545
常见问题
- Remix连接不了服务器的geth?
- 检查服务器的防火墙是否放行8545端口。
- 检查浏览器的地址栏Remix是不是用了https,如果是,改成http。
- 运行时错误提示:rpc未定义?
- 目前geth要用http参数代替rpc参数,故请使用前面的rungeth.sh去执行
- Returned error: authentication needed: password or unlock
- 需要先解锁账户
- 解锁命令见"操作命令"中的"解锁账户"
- Status not available at the moment
- 部署合约后,合约的status是上面的信息
- 这是由于创世块文件中没有添加拜占庭和君士坦丁堡硬分叉语句导致的
- 在创世块文件中添加下面两句,或使用"搭建私链"中的genesis.json文件
"byzantiumBlock":0,
"constantinopleBlock":0,
- Returned error: invalid opcode: SHR
- 合约执行时提示错误
- 请查看部署合约时,是否有上一个错误"Status not available at the moment",有则解决上个错误即可。
- Fatal: Failed to write genesis block: database already contains an incompatible genesis block
- 这是因为已经存在数据库了,不要重复去初始化创世块
- 解决方法
- 清空数据库
- $geth removedb
- 然后就可以执行初始化创世块了
- 如果还不行:
- 则进入我们一开始创建的data目录
- 删除里面的geth目录:# rm -rf geth
Привет!
Купить диплом ВУЗа.
xn--80aeahbdc6cr3b7h.xn--p1ai/club/user/8729/blog/193084/
medication from mexico pharmacy medication from mexico pharmacy mexican border pharmacies shipping to usa
purple pharmacy mexico price list medication from mexico pharmacy mexican pharmacy
purple pharmacy mexico price list: mexico drug stores pharmacies – buying from online mexican pharmacy
mexico pharmacy reputable mexican pharmacies online mexican mail order pharmacies
mexican online pharmacies prescription drugs: buying prescription drugs in mexico – pharmacies in mexico that ship to usa
создание сайта разработчики сайта biztest.ru .
Свежие новости https://diesel.kyiv.ua автомобильного рынка, новинки автопрома
The fascinating story of Ja Morant’s https://grizzlies-de-memphis.ja-morant-fr.com meteoric rise, from status from rookie to leader of the Memphis Grizzlies and rising NBA superstar.
Авто статті https://road.kyiv.ua з порадами з ремонту та обслуговування. Авто блог з професійними порадами.
Hello, I am your admin. I would be very happy if you publish this article.
Автомобільні новини https://sedan.kyiv.ua України та світу, тест-драйви автомобілів, автоспорт
http://mexicandeliverypharma.com/# mexican online pharmacies prescription drugs
создание сайтов создание сайтов .
mexican online pharmacies prescription drugs: pharmacies in mexico that ship to usa – buying prescription drugs in mexico online
purple pharmacy mexico price list: mexican online pharmacies prescription drugs – mexico drug stores pharmacies
buying from online mexican pharmacy: mexican border pharmacies shipping to usa – mexican pharmaceuticals online
п»їbest mexican online pharmacies: buying from online mexican pharmacy – mexico pharmacies prescription drugs
п»їbest mexican online pharmacies: buying prescription drugs in mexico – mexican drugstore online
mexico drug stores pharmacies: buying prescription drugs in mexico – buying prescription drugs in mexico online
создание сайтов сочи создание сайтов сочи .
Привет!
Мы изготавливаем дипломы психологов, юристов, экономистов и прочих профессий по выгодным ценам.
mandiplomiks.ru
Привет, друзья!
Мы готовы предложить дипломы любых профессий по невысоким ценам.
mandiplomik.ru
Здравствуйте!
Мы изготавливаем дипломы любой профессии по выгодным тарифам.
diploms-man.ru
Привет!
Купить диплом о высшем образовании.
thesn.eu/blogs/2871/%D0%A6%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5-%D1%81%D0%BE%D0%B2%D0%B5%D1%82%D1%8B-%D0%BF%D0%BE-%D0%BF%D1%80%D0%B8%D0%BE%D0%B1%D1%80%D0%B5%D1%82%D0%B5%D0%BD%D0%B8%D1%8E-%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0-%D0%B2-%D1%81%D0%B5%D1%82%D0%B8-%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82
Привет!
Купить диплом о высшем образовании.
entrastart.com//read-blog/44
Привет, друзья!
Заказать диплом университета.
plplatoon.com/gallery/image/120-%D0%BA%D0%B0%D0%BA%D0%B8%D0%B5-%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82-%D0%BC%D0%B0%D0%B3%D0%B0%D0%B7%D0%B8%D0%BD%D1%8B-%D1%81-%D0%B4%D0%B8%D0%BF%D0%BB%D0%BE%D0%BC%D0%B0%D0%BC%D0%B8-%D0%BD%D0%B0-%D1%81%D0%B5%D0%B3%D0%BE%D0%B4%D0%BD%D1%8F%D1%88%D0%BD%D0%B8%D0%B9-%D0%B4%D0%B5%D0%BD%D1%8C-%D1%81%D1%83%D1%89%D0%B5%D1%81%D1%82%D0%B2%D1%83%D1%8E%D1%82/
PrestigeAvto https://prestige-avto.com.ua України автомобільний журнал
Найбільший автомобільний портал https://mirauto.kyiv.ua України
Щоденні новини https://k-moto.com.ua із автомобільного середовища. Поради автоаматорам. Тест-драйви автомобілів з пробігом та огляди новинок
Undress AI & Bulk Nude AI Generator nudify online. Make AI nudes and bulk generate undress AI photos of any girl for almost free!
DMV Test на русском языке https://papadmv.com тесты с ответами ПДД США 2024. Тренировочные dmv test на русском для сдачи на права, изучите правила дорожного движения США для разных штатов.
Авто статті https://black-star.com.ua з порадами з ремонту та обслуговування
Добрый день!
Мы можем предложить дипломы любых профессий по выгодным ценам. Стоимость зависит от той или иной специальности, года получения и образовательного учреждения. Стараемся поддерживать для клиентов адекватную ценовую политику. Для нас очень важно, чтобы дипломы были доступны для большинства наших граждан.
hubwebsites.com/story18321637/купить-диплом-парикмахера
Spot on with this write-up, I honestly think this amazing site needs far more attention. I’ll probably be returning to read more, thanks for the advice!
Привет!
Пошаговая инструкция по безопасной покупке диплома о высшем образовании
sabordetango.org/portale/modules.php?name=Your_Account&op=userinfo&uname=TomasBisbe
Рады оказаться полезными!.
Привет, друзья!
Легальная покупка диплома ПТУ с сокращенной программой обучения
higherranker.com/купить-диплом-проверенные-способы/
Рады помочь!.
Добрый день!
Приобрести документ о получении высшего образования вы сможете в нашей компании в Москве.
diplomasx.com/kupit-diplom-moskva
Удачи!
Добрый день!
Полезные советы по покупке диплома о высшем образовании без риска
remotebillpay.com/купить-диплом-о-высшем-образовании-ре/
Рады оказаться полезными!.
Привет, друзья!
Купить документ университета можно в нашей компании.
diplomyx.com/kupit-diplom-moskva
Хорошей учебы!
Привет, друзья!
Купить документ университета вы можете у нас. Мы оказываем услуги по продаже документов об окончании любых ВУЗов Российской Федерации. Вы получите диплом по любой специальности, включая документы старого образца. Гарантируем, что в случае проверки документа работодателем, каких-либо подозрений не появится.
Мы предлагаем дипломы любых профессий по приятным тарифам. Стоимость может зависеть от конкретной специальности, года выпуска и университета. Стараемся поддерживать для покупателей адекватную политику тарифов. Важно, чтобы дипломы были доступными для подавляющей массы граждан.
pro100ya.ru/prazdniki/день-единства-германии/
Будем рады вам помочь!
Привет!
Приобрести документ о получении высшего образования можно в нашей компании в Москве.
diplomasx.com/kupit-diplom-krasnoyarsk
Хорошей учебы!
Лучшие промокоды в сети promokodbar.ru .
Эксклюзивные промокоды для Вас! Эксклюзивные промокоды для Вас! .
Автомобільні новини https://avtonews.kyiv.ua України. Все для автовласника.
Вместе с нами вы всегда найдете промокоды Вместе с нами вы всегда найдете промокоды .
Автоновини України https://avtomobilist.kyiv.ua огляди машин та новини для автомобілістів
Автомобільні новини https://autonovosti.kyiv.ua України та світу, тест-драйви нових авто, поради експертів
Авто статті https://bestauto.kyiv.ua з порадами з ремонту та обслуговування, авто блог з професійними порадами, огляди новинок
Все актуальные промокоды в одном месте. Все актуальные промокоды в одном месте. .