Вы здесь

Собираем кошелек EmerCoin v.05 на Raspberry Pi

С момента публикации последней инструкции прошло уже много времени, поэтому часть информации потеряла свою актуальность. Новая инструкция содержит в себе информацию по установке кошелька v.05 без GUI на Raspberry Pi 3.

Собираем кошелек EmerCoin v.05 на Raspberry Pi

Итак, скачиваем последнюю версию raspbian (я тестировал на RASPBIAN JESSIE LITE), записываем на sd-карту и приступаем к установке.

При компиляции кошелька я столкнулся с проблемой нехватки памяти, поэтому желательно заблаговременно создать SWAP:

sudo nano /etc/dphys-swapfile

меняем значение CONF_SWAPSIZE=100 на CONF_SWAPSIZE=1000, сохраняем изменения и запускаем следующие команды:

sudo dphys-swapfile setup
sudo dphys-swapfile swapon

Далее обновляем систему

sudo apt-get update
sudo apt-get upgrade -y

и ставим зависимости:

sudo apt-get install autoconf libtool libssl-dev libboost-all-dev libminiupnpc-dev -y

Далее создадим папку для дополнительного софта:

mkdir ~/bin
cd ~/bin

Устанавливаем BerkeleyDB:

wget http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz
tar -xzvf db-4.8.30.NC.tar.gz
cd db-4.8.30.NC/build_unix/
../dist/configure --enable-cxx
make -j4
sudo make install

И теперь переходим к установке кошелька

cd ~/bin
git clone https://github.com/Emercoin/emercoin
cd emercoin/
./autogen.sh

./configure CPPFLAGS="-I/usr/local/BerkeleyDB.4.8/include -O2" LDFLAGS="-L/usr/local/BerkeleyDB.4.8/lib" --enable-upnp-default

make -j2
sudo make install
cd src
mv emercoind /usr/bin/
mv emercoin-cli /usr/bin/

Теперь создадим пользователя, от которого будем запускать кошелек:

sudo mkdir /home/emc
sudo addgroup --gid 1010 emc
sudo adduser --home /home/emc --shell /bin/false --no-create-home --uid 1010 --gid 1010 emc
sudo adduser emc emc

Создадим скрытый каталог .emercoin и в нём файл конфигурации emercoin.conf:

cd /home/emc
sudo mkdir .emercoin
cd .emercoin
sudo nano emercoin.conf

с такой конфигурацией:

rpcuser=emccoinrpc
rpcpassword=очень_длинный_и_сложный_пароль

listen=1
server=1
rpcallowip=127.0.0.1
rpcport=8775

maxconnections=80
gen=0
reservebalance=5
daemon=1

emcdns=0 # Activate DNS
emcdnsallowed=.coin|.emc|.lib|.bazar # Allowed TLDs
emcdnsverbose=4

chmod 0400 emercoin.conf
chown -R emc:emc /home/emc/

Теперь переходим к настройке демона. Для этого создадим файлик

sudo nano /etc/systemd/system/emercoin.service

с таким содержимым:

[Unit]
Description=EmerCoin daemon service
After=network.target

[Service]
Type=forking
Restart=on-failure

User=emc
Group=emc
ExecStart=/usr/bin/emercoind
ExecReload=/usr/bin/kill -HUP $MAINPID
ExecStop=/usr/bin/emercoind stop

PrivateTmp=true
TimeoutStopSec=20s
TimeoutStartSec=2s
StartLimitInterval=120s
StartLimitBurst=5

[Install]
WantedBy=multi-user.target

systemctl enable emercoin.service

Запускаем кошелек:

service emercoin start

В следующей статье я расскажу как поставить web-интерфейс для управления кошельком.

Категория: 
Tutorial
2
Ваша оценка: Нет Средняя: 1.8 (4 оценок)
72074 / 2
Аватар пользователя admin
Публикацию добавил: admin
Дата публикации: пт, 09/09/2016 - 17:28

Что еще почитать:

Комментарии:

Заранее прошу прощения за возможные ошибки. Инструкцию писал по памяти, рабочего девайса сейчас нет под рукой. В ближайшее время еще раз все перепроверю. Если что - задавайте вопросы в комментариях.

сб, 09/10/2016 - 11:11

Анонимус

Собралось, спасибо. Для свопа рекомендую использовать ZRAM https://gist.github.com/sultanqasim/79799883c6b81c710e36a38008dfa374
Гугл не зря использует это по умолчанию начиная с андроида 4.4

ср, 11/16/2016 - 17:43

Отличная штука, спасибо за совет

чт, 11/17/2016 - 14:28

Анонимус

Для Orange Pi c Armbian есть еще одна зависимость которую нужно установить: pkg-config

вс, 12/04/2016 - 08:47

Анонимус

Спасибо!

сб, 09/10/2016 - 14:05

Victor

Спасибо! А что насчет установки веб интерфейса? где об этом узнать?

пт, 11/04/2016 - 03:23

К сожалению новый интерфейс emcweb 2.0 на малинку не поставить. Сейчас работаем над тем, чтобы улучшить версию emcweb 1.0, добавив некоторые штуки из последней версии.

пт, 11/04/2016 - 22:12

Victor

Здорово, а инструкцию, как накатить emcweb 1.0 не подскажите?

сб, 11/05/2016 - 17:17

До инструкции пока руки не дошли. В понедельник могу выложить образ для малинки с новым кошельком и интерфейсом. Сам интерфейс лежит на гитхабе https://github.com/allwarez/emerRPi

сб, 11/05/2016 - 22:30

Victor

Было бы здорово! буду признателен Вам

вс, 11/06/2016 - 01:05

Сегодня не получилось снять рабочий образ (
Вообще рекомендую немного подождать. Обновленная версия для малинки будет готова через 2 недели. Ставится будет так же как и emcweb для обычных серверов.

пн, 11/07/2016 - 23:49

Victor

Звучит вкусно, но хотелось бы разобраться с вебом отдельно)

вт, 11/08/2016 - 00:48

Там такое дело. Интерфейс emcweb2.0 полностью переписан, он работает немного не так как emcweb1.0 Код во второй версии намного более грамотный. Сегодня общался с разработчиками и было решено не трогать emcweb1, а адаптировать emcweb2 под малинку, выпилив некоторые не критичные функции.

Если сильно хочется разобраться с обеими версиями - то все таки сделаю образ старой системы.

вт, 11/08/2016 - 01:03

Как вариант, можете посмотреть как работает интерфейс на обычном сервере. Установка занимает 15 минут + час на скачивание блокчейна. https://cryptor.net/tutorial/ustanavlivaem-obnovlennyy-emercoin-web-wallet-20-na-server-ubuntu-minimalnoy-konfiguracii
На малинке стоит дебиан, так что почти все настройки и команды совпадают. Ну и самое главное - 2 месяца можно пользоваться сервером бесплатно. Перенести потом данные с сервера на малинку труда не составит. Все делается через сам интерфейс.

вт, 11/08/2016 - 01:12

Victor

Доброго дня, есть новости по обновленной версии?

вт, 11/29/2016 - 19:33

Есть. Портирование на малинку успешно завершено. Поставить можно так:

apt-key adv --keyserver keyserver.ubuntu.com --recv B58C58F4
echo "deb http://download.emercoin.com/debian jessie emercoin" >> /etc/apt/sources.list
apt update && apt -y install emercoin emcssh emcweb redis-server mysql-server
emcweb-setup -G -C -R="YOUR_MYSQL_ROOT_PASSWORD"

Скоро подготовлю готовый img файл.

чт, 12/01/2016 - 11:32

Victor

Проблемы с запуском кошелька
root@raspberrypi:/# systemctl status emercoind.service
● emercoind.service - Emercoin Wallet
Loaded: loaded (/lib/systemd/system/emercoind.service; enabled)
Active: failed (Result: start-limit) since Fri 2016-12-02 12:12:11 UTC; 9s ago
Process: 2090 ExecStart=/usr/bin/emercoind -daemon -datadir=/var/lib/emc/.emercoin -conf=/var/lib/emc/.emercoin/emercoin.conf -pid=/var/lib/emc/.emercoin/emercoind.pid (code=killed, signal=ILL)

Dec 02 12:12:11 raspberrypi systemd[1]: Unit emercoind.service entered failed state.
Dec 02 12:12:11 raspberrypi systemd[1]: emercoind.service holdoff time over, scheduling restart.
Dec 02 12:12:11 raspberrypi systemd[1]: Stopping Emercoin Wallet...
Dec 02 12:12:11 raspberrypi systemd[1]: Starting Emercoin Wallet...
Dec 02 12:12:11 raspberrypi systemd[1]: emercoind.service start request repeated too quickly, refusing to start.
Dec 02 12:12:11 raspberrypi systemd[1]: Failed to start Emercoin Wallet.
Dec 02 12:12:11 raspberrypi systemd[1]: Unit emercoind.service entered failed state.

пт, 12/02/2016 - 14:15

Victor

А обращение к бинарнику даёт следующее:
root@raspberrypi:/# emercoind
Illegal instruction

пт, 12/02/2016 - 15:57

Есть проблема. При синхронизации блокчейна происходит слишком много обращений к sd-карте, из-за этого кошелек отваливается. Попробуйте на чистой системе установить apt-get`ом только emercoin. Затем дождитесь синхронизации и только после этого ставьте остальное.

вс, 12/04/2016 - 23:50

Victor

Взял самостоятельно собранные бинарники emercoind и emercoin-cli. Служба запустилась. У вас на какой платформе сборка производилась?

вт, 12/06/2016 - 10:55

RPi3 / Raspbian lite

ср, 12/07/2016 - 11:51

Victor

Есть еще затык, не могу найти где перечисляются теперь доверенные пользовательские сертификаты для входа в кошелек?

чт, 12/08/2016 - 00:39

NewTe

Где будет лежать созданный wallet.dat или куда класть уже существующий?

ср, 12/07/2016 - 21:41

Victor

~/.emercoin/wallet.dat Пока что везде было так

чт, 12/08/2016 - 00:37

NewTe

Сервис emercoind вылетает после недолгой работы

pi@rpi:~ $ sudo systemctl -l status emercoin.service
● emercoin.service - EmerCoin daemon service
Loaded: loaded (/etc/systemd/system/emercoin.service; enabled)
Active: failed (Result: start-limit) since Fri 2016-12-09 22:22:17 MSK; 3min 57s ago
Process: 1652 ExecStop=/usr/bin/emercoind stop (code=exited, status=1/FAILURE)
Process: 1644 ExecStart=/usr/bin/emercoind (code=exited, status=0/SUCCESS)
Main PID: 1645 (code=killed, signal=ABRT)

Dec 09 22:22:17 rpi systemd[1]: emercoin.service holdoff time over, scheduling restart.
Dec 09 22:22:17 rpi systemd[1]: Stopping EmerCoin daemon service...
Dec 09 22:22:17 rpi systemd[1]: Starting EmerCoin daemon service...
Dec 09 22:22:17 rpi systemd[1]: emercoin.service start request repeated too quickly, refusing to start.
Dec 09 22:22:17 rpi systemd[1]: Failed to start EmerCoin daemon service.
Dec 09 22:22:17 rpi systemd[1]: Unit emercoin.service entered failed state.
Dec 09 22:24:09 rpi systemd[1]: Starting EmerCoin daemon service...
Dec 09 22:24:09 rpi systemd[1]: emercoin.service start request repeated too quickly, refusing to start.
Dec 09 22:24:09 rpi systemd[1]: Failed to start EmerCoin daemon service.

пт, 12/09/2016 - 21:27

NewTe, нужно понимать, что первый запуск кошелька требует огромных ресурсов для скачивания и синхронизации блокчейна. Процессор загружен в это время на 100%, идет огромное количество обращений к SD-карте. Любой чих на этом этапе может привести к сбою. Поэтому универсальное решение проблемы - удалить все файлы кроме emercoin.conf и wallet.dat и снова запустить кошелек.

пн, 12/12/2016 - 10:08

Дмитрий

Сколько будет стоить такая сборка для Карбованца? Я хочу оплатить.

чт, 03/16/2017 - 19:03

Дмитрий

Кто подскажет, у кого заказать такую сборку для карбованца, например?

пт, 03/10/2017 - 02:40

Могу через пару дней собрать и выложить img-файл. Но дело-то в том, что у эмера есть web-интерфейс к кошельку, поэтому им удобно управлять. С остальными криптовалютами придется работать через консоль.

пт, 03/17/2017 - 08:52

Обновите инструкцию, актуальная версия уже 0.6

пт, 04/14/2017 - 19:17