Souhaitez-vous apprendre à créer un pool d’exploration minière Bytecoin? Dans ce tutoriel, nous allons vous montrer comment installer un pool de minage Bytecoin en utilisant un ordinateur exécutant Ubuntu Linux.

Liste de Matériel:

La section suivante présente la liste des équipements utilisés pour créer ce tutoriel Bytecoin.

Chaque pièce de matériel ci-dessus peut être trouvée sur le site Web d’Amazon.

Liste de Logiciels:

Voici une liste des logiciels que nous avons utilisés pour créer ce tutoriel d’installation du nœud Bytecoin.

Nous offrons deux façons de télécharger ce logiciel.

Bytecoin Playlist:

Sur cette page, nous vous proposons d’accéder rapidement à une liste de vidéos liées à Bytecoin.

N’oubliez pas de vous abonner à notre chaîne YouTube VirtualCoin.

Didacticiel connexe Bytecoin:

Sur cette page, nous vous proposons un accès rapide à une liste de tutoriels liés à Bytecoin.

Didacticiel – Installation du noeud Bytecoin

Si votre mémoire de swap n’est pas configurée sur Linux, utilisez les commandes suivantes pour créer un fichier d’échange:

# dd if=/dev/zero of=/mnt/linux.swap bs=1M count=32092
# chmod 0600 /mnt/linux.swap
# mkswap /mnt/linux.swap
# swapon /mnt/linux.swap

Dans notre exemple, nous créons un fichier d’échange de 32 Go.

Pour activer le swap, éditez le fichier fstab et ajoutez la ligne suivante.

# vi /etc/fstab

/mnt/linux.swap none swap sw 0 0

Redémarrez l’ordinateur pour activer le swap.

# reboot

Utilisez les commandes suivantes pour installer les packages requis.

# apt-get install build-essential libboost-all-dev git cmake

Téléchargez le paquet d’installation Bytecoin.

# mkdir /bytecoin/node -p
# cd /bytecoin/node
# git clone https://github.com/amjuarez/bytecoin

Compilez et installez le logiciel de noeud Bytecoin.

# cd bytecoin/
# make
# make test-release
# cd build/release/src
# install -sv bytecoind connectivity_tool miner simplewallet walletd /usr/local/bin/

Créez un fichier de configuration Bytecoin.

# mkdir ~/.bytecoin
# vi ~/.bytecoin/bytecoin.conf

log-level=2
no-console=yes
rpc-bind-ip=0.0.0.0
rpc-bind-port=8081
p2p-bind-ip=0.0.0.0
p2p-bind-port=8080
allow-local-ip=yes

Démarrez le noeud Bytecoin à l’aide de la commande suivante:

# bytecoind

Attendez la fin de la synchronisation de la blockchain.

La synchronisation blockchain peut prendre des jours ou des semaines.

Utilisez la commande suivante pour vérifier l’état de la synchronisation blockchain:

# tail -f bytecoind.log

Si le fichier bytecoind.log n’est pas trouvé dans le même répertoire, utilisez les commandes suivantes pour localiser le fichier bytecoind.log.

# updatedb
# locate bytecoind.log

Didacticiel – Service de portefeuille Bytecoin

Après avoir terminé l’installation du noeud Bytecoin, vous devez créer un nouveau portefeuille Bytecoin.

Attendez la fin de la synchronisation du portefeuille de la blockchain et entrez la commande exit.

# mkdir /bytecoin/wallet -p
# cd /bytecoin/wallet
# simplewallet –generate-new-wallet virtualcoin –password kamisama123@

New wallet is generated. Address: 2851jgWSSjTA1SwzbGeXdWE6BND8yh1WQ5KF9rmaboCwSDaK38broEU4r7kfhZ1NoiWdvaVbSYuGhVHnYphfyKgbMqTafTQ

# [wallet 22gnmi]: exit

Dans notre exemple, un portefeuille nommé virtualcoin a été créé et configuré pour utiliser le mot de passe kamisama123 @.

Prenez note de votre adresse Bytecoin.

Maintenant, vous devez démarrer le service de portefeuille.

# simplewallet –wallet /bytecoin/wallet/virtualcoin.wallet –pass kamisama123@ –daemon-host 127.0.0.1 –daemon-port 8081 –rpc-bind-port 8082

Tutoriel – Bassin minier Bytecoin

Après avoir terminé l’installation du nœud Bytecoin et la configuration du service de portefeuille, nous pouvons démarrer l’installation du pool d’exploration minière Bytecoin.

Utilisez la commande suivante pour installer le logiciel requis:

# apt-get install build-essential libtool autotools-dev autoconf pkg-config libssl-dev
# apt-get install libboost-all-dev git npm nodejs nodejs-legacy libminiupnpc-dev redis-server
# apt-get install libdb-dev libdb++-dev libdb5.3
# curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash
# nvm install node
# source ~/.profile

Redémarrez l’ordinateur et redémarrez le nœud Bytecoin et le service de portefeuille.

# reboot
# bytecoind
# simplewallet –wallet /bytecoin/wallet/virtualcoin.wallet –pass kamisama123@ –daemon-host 127.0.0.1 –daemon-port 8081 –rpc-bind-port 8082

Après avoir redémarré l’ordinateur, vous devez terminer l’installation du logiciel.

# nvm install 0.10.25
# nvm alias default 0.10.25
# nvm use default
# mkdir /bytecoin/pool -p
# cd /bytecoin/pool
# git clone https://github.com/forknote/cryptonote-universal-pool.git
# cd cryptonote-universal-pool
# npm update
# vi config.json

Maintenant, créons le fichier de configuration de base.

# vi config.json

Voici le fichier original, avant notre configuration:

{
« coin »: « dashcoin »,
« symbol »: « DSH »,
« coinUnits »: 1000000000000,
« coinDifficultyTarget »: 120,

« logging »: {
« files »: {
« level »: « info »,
« directory »: « logs »,
« flushInterval »: 5
},
« console »: {
« level »: « info »,
« colors »: true
}
},

« poolServer »: {
« enabled »: true,
« clusterForks »: « auto »,
« poolAddress »: « D6WLtrV1SBWV8HWQzQv8uuYuGy3uwZ8ah5iT5HovSqhTKMauquoTsKP8RBJzVqVesX87poYWQgkGWB4NWHJ6Ravv93v4BaE »,
« blockRefreshInterval »: 1000,
« minerTimeout »: 900,
« ports »: [
{
« port »: 3333,
« difficulty »: 100,
« desc »: « Low end hardware »
},
{
« port »: 5555,
« difficulty »: 2000,
« desc »: « Mid range hardware »
},
{
« port »: 7777,
« difficulty »: 10000,
« desc »: « High end hardware »
},
{
« port »: 8888,
« difficulty »: 10000,
« desc »: « Hidden port »,
« hidden »: true
}
],
« varDiff »: {
« minDiff »: 100,
« maxDiff »: 200000,
« targetTime »: 100,
« retargetTime »: 30,
« variancePercent »: 30,
« maxJump »: 100
},
« fixedDiff »: {
« enabled »: true,
« addressSeparator »: « . »
},
« shareTrust »: {
« enabled »: true,
« min »: 10,
« stepDown »: 3,
« threshold »: 10,
« penalty »: 30
},
« banning »: {
« enabled »: true,
« time »: 600,
« invalidPercent »: 25,
« checkThreshold »: 30
},
« slushMining »: {
« enabled »: false,
« weight »: 120,
« lastBlockCheckRate »: 1
}
},

« payments »: {
« enabled »: true,
« interval »: 600,
« maxAddresses »: 50,
« mixin »: 3,
« transferFee »: 50000000,
« minPayment »: 1000000000,
« maxTransactionAmount »: 0,
« denomination »: 1000000000
},

« blockUnlocker »: {
« enabled »: true,
« interval »: 30,
« depth »: 10,
« poolFee »: 2,
« devDonation »: 0.1,
« coreDevDonation »: 0.1,
« extraFeaturesDevDonation »:0.1
},

« api »: {
« enabled »: true,
« hashrateWindow »: 600,
« updateInterval »: 5,
« port »: 8117,
« blocks »: 30,
« payments »: 30,
« password »: « your_password »
},

« daemon »: {
« host »: « 127.0.0.1 »,
« port »: 42081
},

« wallet »: {
« host »: « 127.0.0.1 »,
« port »: 8082
},

« redis »: {
« host »: « 127.0.0.1 »,
« port »: 6379
},

« monitoring »: {
« daemon »: {
« checkInterval »: 60,
« rpcMethod »: « getblockcount »
},
« wallet »: {
« checkInterval »: 60,
« rpcMethod »: « getbalance »
}
},

« charts »: {
« pool »: {
« hashrate »: {
« enabled »: true,
« updateInterval »: 60,
« stepInterval »: 1800,
« maximumPeriod »: 86400
},
« workers »: {
« enabled »: true,
« updateInterval »: 60,
« stepInterval »: 1800,
« maximumPeriod »: 86400
},
« difficulty »: {
« enabled »: true,
« updateInterval »: 1800,
« stepInterval »: 10800,
« maximumPeriod »: 604800
},
« price »: {
« enabled »: true,
« updateInterval »: 1800,
« stepInterval »: 10800,
« maximumPeriod »: 604800
},
« profit »: {
« enabled »: true,
« updateInterval »: 1800,
« stepInterval »: 10800,
« maximumPeriod »: 604800
}
},
« user »: {
« hashrate »: {
« enabled »: true,
« updateInterval »: 180,
« stepInterval »: 1800,
« maximumPeriod »: 86400
},
« payments »: {
« enabled »: true
}
}
}
}

Voici le nouveau fichier avec notre configuration.

Les directives modifiées ont été surlignées en gras.

{
« coin »: « bytecoin »,
« symbol »: « BCN »,
« coinUnits »: 1000000000000,
« coinDifficultyTarget »: 120,

« logging »: {
« files »: {
« level »: « info »,
« directory »: « logs »,
« flushInterval »: 5
},
« console »: {
« level »: « info »,
« colors »: true
}
},

« poolServer »: {
« enabled »: true,
« clusterForks »: « auto »,
« poolAddress »: « 22gAnEFyeKu7CEbc7XVz8meeeTKkMwjXMgCyJQ6i3UpfLp9EaA8ywu1ZGsidvUoyuzK7ZATghbZAaSpT9ZutSahzFZWCpkM »,
« blockRefreshInterval »: 1000,
« minerTimeout »: 900,
« ports »: [
{
« port »: 3333,
« difficulty »: 100,
« desc »: « Low end hardware »
},
{
« port »: 5555,
« difficulty »: 2000,
« desc »: « Mid range hardware »
},
{
« port »: 7777,
« difficulty »: 10000,
« desc »: « High end hardware »
},
{
« port »: 8888,
« difficulty »: 10000,
« desc »: « Hidden port »,
« hidden »: true
}
],
« varDiff »: {
« minDiff »: 100,
« maxDiff »: 200000,
« targetTime »: 100,
« retargetTime »: 30,
« variancePercent »: 30,
« maxJump »: 100
},
« fixedDiff »: {
« enabled »: true,
« addressSeparator »: « . »
},
« shareTrust »: {
« enabled »: true,
« min »: 10,
« stepDown »: 3,
« threshold »: 10,
« penalty »: 30
},
« banning »: {
« enabled »: true,
« time »: 600,
« invalidPercent »: 25,
« checkThreshold »: 30
},
« slushMining »: {
« enabled »: false,
« weight »: 120,
« lastBlockCheckRate »: 1
}
},

« payments »: {
« enabled »: true,
« interval »: 600,
« maxAddresses »: 50,
« mixin »: 3,
« transferFee »: 50000000,
« minPayment »: 1000000000,
« maxTransactionAmount »: 0,
« denomination »: 1000000000
},

« blockUnlocker »: {
« enabled »: true,
« interval »: 30,
« depth »: 10,
« poolFee »: 2,
« devDonation »: 0.1,
« coreDevDonation »: 0.1,
« extraFeaturesDevDonation »:0.1
},

« api »: {
« enabled »: true,
« hashrateWindow »: 600,
« updateInterval »: 5,
« port »: 8117,
« blocks »: 30,
« payments »: 30,
« password »: « your_password »
},

« daemon »: {
« host »: « 127.0.0.1 »,
« port »: 8081
},

« wallet »: {
« host »: « 127.0.0.1 »,
« port »: 8082
},

« redis »: {
« host »: « 127.0.0.1 »,
« port »: 6379
},

« monitoring »: {
« daemon »: {
« checkInterval »: 60,
« rpcMethod »: « getblockcount »
},
« wallet »: {
« checkInterval »: 60,
« rpcMethod »: « getbalance »
}
},

« charts »: {
« pool »: {
« hashrate »: {
« enabled »: true,
« updateInterval »: 60,
« stepInterval »: 1800,
« maximumPeriod »: 86400
},
« workers »: {
« enabled »: true,
« updateInterval »: 60,
« stepInterval »: 1800,
« maximumPeriod »: 86400
},
« difficulty »: {
« enabled »: true,
« updateInterval »: 1800,
« stepInterval »: 10800,
« maximumPeriod »: 604800
},
« price »: {
« enabled »: true,
« updateInterval »: 1800,
« stepInterval »: 10800,
« maximumPeriod »: 604800
},
« profit »: {
« enabled »: true,
« updateInterval »: 1800,
« stepInterval »: 10800,
« maximumPeriod »: 604800
}
},
« user »: {
« hashrate »: {
« enabled »: true,
« updateInterval »: 180,
« stepInterval »: 1800,
« maximumPeriod »: 86400
},
« payments »: {
« enabled »: true
}
}
}
}

Ma configuration est juste basique.

Il est fortement recommandé d’étudier ce fichier de configuration pour améliorer votre configuration.

Utilisez la commande suivante pour démarrer le pool de minage Bytecoin.

# cd /bytecoin/pool/cryptonote-universal-pool
# node init.js

Gardez à l’esprit que le service de pool ne fonctionnera que si le service de noeud Bytecoin est en cours d’exécution et que la chaîne de blocs est synchronisée.

Si tout fonctionnait correctement, vous devriez voir les messages suivants à l’écran:

[master] Pool spawned on 8 thread(s)

[charts] Started

[api] API started & listening on port 8117

[api] Stat collection finished: 20 ms redis, 21 ms daemon

[api] Broadcasting to 0 visitors and 0 address lookups

[payments] Started

[payments] No workers’ balances reached the minimum payment threshold

[unlocker] Started

[unlocker] No blocks candidates in redis

[charts] Started

[chartsDataCollector] Started

[pool] (Thread 2) New block to mine at height 1452666 w/ difficulty of 1227080766

Le système devrait maintenant ouvrir les ports TCP 3333, 5555 et 7777 aux mineurs de Bytecoin.

Utilisez la commande suivante pour vérifier si les ports TCP sont ouverts.

# netstat -nl | grep 3333
tcp 0 0 0.0.0.0:3333 0.0.0.0:* LISTEN
# netstat -nl | grep 5555
tcp 0 0 0.0.0.0:5555 0.0.0.0:* LISTEN
# netstat -nl | grep 7777
tcp 0 0 0.0.0.0:7777 0.0.0.0:* LISTEN

Il est temps de tester notre pool minier.

Allez sur un autre Ubuntu Linux et installez le logiciel CPUMiner-Multi.

Si vous ne savez pas comment installer le mineur processeur Bytecoin, suivez ce lien.

Utilisez la commande suivante pour démarrer l’extraction de Bytecoin sur l’ordinateur mineur.

# minerd -a cryptonight -o stratum+tcp://34.217.47.134:3333 -u 21eD9nZxjv9QxzoDX4NrVMipPCT3tK5ufgAApefcYYnkAbXoTDSjFxiAxDgwhNbv7ELWfo2GSxm96MyGYq1njk9qPps1DgR -p x

Gardez à l’esprit que vous devez modifier l’adresse IP du pool d’exploration minière et l’adresse du portefeuille Bytecoin de l’ordinateur mineur.

Using JSON-RPC 2.0

Starting Stratum on stratum+tcp://34.217.66.94:3333

1 miner threads started, using ‘cryptonight’ algorithm.

Pool set diff to 100

Stratum detected new block

accepted: 1/1 (100.00%), 46.09 H/s at diff 100 (yay!!!)

accepted: 2/2 (100.00%), 45.24 H/s at diff 100 (yay!!!)

Gardez à l’esprit que vous devez modifier l’adresse IP du pool d’exploration minière et l’adresse du portefeuille Bytecoin de l’ordinateur mineur.

Si tout fonctionnait correctement, vous devriez voir des messages de confirmation sur l’écran.