Нам требуется установить на виртуальной машине Ubuntu кошелек zcash из репозитория github, всю настройку и установку будем делать в CLI консоли linux.
Программные требования к host системе для виртуальной машины ubuntu будет Windows 7 x64 bit гипервизор VMware Workstation Player или VBOX (не реклама используем бесплатную версию). Аппаратные требования CPU с поддержкой виртуализации (VT-x/AMD-v), 4 Гб оперативной памяти (1 Гб оперативной памяти в виртуальной машине минимум), 30 Гб дискового пространства, интернет безлимитный 1 мб/сек (требуется скачать 8 гб данных примерно), доступ к поисковой машине google.ru и умение производить поиск информации.
1) Скачать установочную программу VMware Workstation Player и установить.
2) Найти и скачать мини образ диска системы Ubuntu для сетевой установки (ввести в google запрос "Ubuntu 14.04 netinstall iso")
3) Установить систему Ubuntu - минимальная конфигурация в VMware Workstation Player (ввести в google запрос "Установка Linux на VMware" и "Установка Ubuntu Server 14.04.1 в VirtualBox 4.3.20")
4) Скачать и сохранить на Рабочий стол программу PuTTY (ввести в google запрос "Как подключиться по SSH из Windows")
Выполнив вышеописанные четыре шага у вас должна быть установленная система Ubuntu 14.04.5 LTS в минимальной конфигурации далее для удобства настройки нам нужно выяснить IP адрес вашей системы на виртуальной машине если вы выполните команду sudo ifconfig -a то увидите примерно следующее:
root@srv:~$ sudo ifconfig -a
[sudo] password for root:
eth0 Link encap:Ethernet HWaddr 00:00:00:00:00:00
inet addr:192.168.1.3 Bcast:192.168.1.255 Mask:255.255.255.0
RX bytes:117671796 (117.6 MB) TX bytes:21829578 (21.8 MB)
нас интересует строчка inet addr:192.168.1.3 это ip v4 адрес нашей виртуальной машины
Подключитесь по данному ip адресу 192.168.1.3 на вашу виртуальную машину с помощью PuTTY (не забудьте в настройках PuTTY указать кодировку Translation - UTF-8).
Теперь приступим к непосредственной установке всего необходимого ПО.
1) sudo -i #введите ваш пароль (данная команда переводит текущего пользователя в режим суперпользователя мы новички это нужно нам для удобства)
2) sudo apt-get install mc screen htop git apt-transport-https
3) sudo apt-get install build-essential pkg-config libc6-dev m4 g++-multilib autoconf libtool ncurses-dev unzip git python python-zmq zlib1g-dev wget bsdmainutils automake
4) sudo apt-get install cmake libssl-dev libpcre3-dev libleveldb-dev libboost-all-dev libgmp-dev libprotobuf-dev protobuf-compiler libjansson-dev screen build-essential pkg-config libc6-dev m4 g++-multilib autoconf libtool ncurses-dev unzip git python zlib1g-dev wget bsdmainutils automake libsodium-dev #(данный пакет libsodium-dev можно удалить из данной строчки)
5) Если у Вас не устанавливается пакет библиотеки libsodium-dev его можно установить отдельно выполните следующие шаги:
#!/bin/bash
sudo add-apt-repository ppa:chris-lea/libsodium;
sudo echo "deb http://ppa.launchpad.net/chris-lea/libsodium/ubuntu trusty main" >> /etc/apt/sources.list;
sudo echo "deb-src http://ppa.launchpad.net/chris-lea/libsodium/ubuntu trusty main" >> /etc/apt/sources.list;
sudo apt-get update && sudo apt-get install libsodium-dev;
6) Установите пакет g++-4.9 выполнив следующие шаги
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install g++-4.9
Теперь установка самого кошелька:
7) wget -qO - https://apt.z.cash/zcash.asc | sudo apt-key add -
8) git clone https://github.com/zcash/zcash.git
9) cd zcash/
10) ./zcutil/fetch-params.sh #(требуется скачать ~/.zcash-params/sprout-proving.key и sprout-verifing.key суммарно примерно 900 Мб)
11) ./zcutil/build.sh --disable-rust -j$(nproc) #(данная команда выполняет компиляцию ПО)
12) После того как компиляция ПО будет выполнена скопируйте из папки /root/zcash/src/ файлы zcash-cli, zcash-gtest, zcash-tx, zcashd в каталог /usr/bin
root@srv01:~# whereis zcashd
zcashd: /usr/bin/zcashd
root@srv01:~#
13) mkdir -p ~/.zcash
14) echo "addnode=mainnet.z.cash" >~/.zcash/zcash.conf
15) echo "rpcuser=username" >>~/.zcash/zcash.conf
16) echo "rpcpassword=`head -c 32 /dev/urandom | base64`" >>~/.zcash/zcash.conf
17) echo 'gen=1' >> ~/.zcash/zcash.conf
18) echo "genproclimit=-1" >> ~/.zcash/zcash.conf
19) echo 'equihashsolver=tromp' >> ~/.zcash/zcash.conf
20) zcashd --daemon #(данной командой вы запускаете демон кошелька который скачает блокчейн zcash примерно более 8 Гб)
Командой zcash-cli getinfo вы можете посмотреть какой блок скачивается на данный момент
root@srv01:~# zcash-cli getinfo
{
"version": 1001051,
"protocolversion": 170002,
"walletversion": 60000,
"balance": 0.00000000,
"blocks": 151896,
"timeoffset": 0,
"connections": 8,
"proxy": "",
"difficulty": 3624573.972023114,
"testnet": false,
"keypoololdest": 1499938782,
"keypoolsize": 103,
"paytxfee": 0.00000000,
"relayfee": 0.00000100,
"errors": ""
}
21) zcash-cli getaddressesbyaccount "" #узнать адрес вашего zcash кошелька
root@srv01:~# zcash-cli getaddressesbyaccount ""
[
"t1KstPVzcNEK4ZeauQ6cogoqxQBMDSiRnGr"
]
22) zcash-cli getbalance "" #узнать баланс вашего кошелька
23) zcash-cli dumpprivkey t1KstPVzcNEK4ZeauQ6cogoqxQBMDSiRnGr
root@srv01:~# zcash-cli dumpprivkey t1KstPVzcNEK4ZeauQ6cogoqxQBMDSiRnGr
L4VC44urpiCZyP87PS6b7kXAuBkV3voVZtsp4mCtoDKQCoDqSqMV
#(данной командой вы делаете дамп приватного ключа вашего аккаунта эти данные желательно распечатать и хранить вечно в вашем секретном месте не доступном для косарей и яжматерей)...
24) crontab -e #(добавить в автозапуск демона zcash)
ввести строчку @reboot sleep 60 && zcashd --daemon
root@srv01:~# crontab -e
GNU nano 2.2.6 File: /tmp/crontab.4bB4S8/crontab
# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h dom mon dow command
@reboot sleep 60 && zcashd --daemon
[ Read 23 lines ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Page ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where Is ^V Next Page ^U UnCut Text ^T To Spell
Нажать Ctrl+O что-бы сохранить изменения и Ctrl+X что-бы выйти из текстового редактора nano.
PS: вопросы, исправления, дополнения в комментариях...
PSS: в данной инструкции для экономии времени многие аспекты установки не разъяснены я заранее извиняюсь за это... если исправлять 1 числовой символ в приватном ключе можно получить бесплатный бонус... могу позднее описать более подробно те места где у вас возникнут затруднения...
PSS: Если хейтеры не утопят пост в минусах могу описать установку и настройку pool на ARM одноплатном компьютере и много еще чего интересного ....
Всем спасибо за внимание...