Sous Jessie, Bitcoin qt et bitcoind n'étaient pas disponibles. J'ai donc pris l'habitude de compiler bitcoind pour mettre en place des nodes serveurs.
Pour commencer, nous installons les paquets nécessaires :
sudo aptitude install git build-essential libtool autotools-dev autoconf libssl-dev libboost-all-dev pkg-config checkinstall
Pour voir quelle est la dernière version disponible : https://github.com/bitcoin/bitcoin/branches La dernière version au moment de l'écriture de cet howto est la 0.14.2, nous allons donc utiliser celle-ci.
Ensuite nous créons le répertoire de travail et nous nous positionnons dedans :
mkdir src cd src
et nous récupérons les sources (ici la version 0.14.2) :
git clone -b 0.14.2 https://github.com/bitcoin/bitcoin.git
Nous nous plaçons dans le répertoire de travail et configurons le système pour la compilation :
cd bitcoin/ ./autogen.sh
Nous lançons la configuration :
./configure --enable-hardening --disable-wallet --without-gui --without-miniupnpc
<note>Il est conseillé d'activer “hardening” pour plus de sécurité</note>
Si vous avez ce genre d'erreur :
configure: error: libevent not found.
Vous devez installer libevent-dev :
sudo aptitude install libevent-dev
Les NOUVEAUX paquets suivants vont être installés : libevent-core-2.0-5{a} libevent-dev libevent-extra-2.0-5{a} libevent-openssl-2.0-5{a} libevent-pthreads-2.0-5{a} 0 paquets mis à jour, 5 nouvellement installés, 0 à enlever et 0 non mis à jour. Il est nécessaire de télécharger 540 ko d'archives. Après dépaquetage, 1 942 ko seront utilisés.
On lance la compilation :
make
Et enfin on utilise “CheckInstall” pour l'installation. Contrairement à la commande “make install” qui ne fait que l'installation, Checkinstall construira un paquet sous forme de fichier .deb et l'installera automatiquement.
sudo checkinstall --pkgname=bitcoin --pkgversion=“5:$(date +%Y%m%d%H%M)-git” --backup=no --deldoc=yes --fstrans=no -default
Si vous voulez désinstaller bitcoin, il vous suffira de désinstaller le paquet :
sudo dpkg -r bitcoin
Pour lancer bitcoind en démon :
bitcoind -daemon
Pour avoir des informations sur la blockchain :
bitcoin-cli getblockchaininfo
Pour voir si votre instance est synchronisée :
echo `bitcoin-cli getblockcount 2>&1`/`wget -O - http://blockchain.info/q/getblockcount 2>/dev/null`
Pour ajouter la gestion du démarrage et de l'arrêt de bitcoind au boot par systemd :
sudo nano /etc/systemd/bitcoind.service
Et ajouter ce contenu (adaptez le nom de l'utilisateur) :
[Unit] Description=Bitcoin daemon service After=network.target [Service] Type=simple User=bitcoin ExecStart=/usr/local/bin/bitcoind -daemon ExecStop=/usr/local/bin/bitcoin-cli stop [Install] WantedBy=multi-user.target
Enfin, démarrez et activez le service
sudo systemctl start bitcoind.service; systemctl enable bitcoind.service