क्या आप बाइटकोइन खनन पूल कैसे बनाना सीखना चाहते हैं? इस ट्यूटोरियल में, हम आपको दिखाएंगे कि उबंटू लिनक्स चलाने वाले कंप्यूटर का उपयोग करके बाइटकोइन खनन पूल कैसे स्थापित करें।

हार्डवेयर सूची:

निम्नलिखित खंड इस बाइटकोइन ट्यूटोरियल को बनाने के लिए उपयोग किए जाने वाले उपकरणों की सूची प्रस्तुत करता है।

ऊपर सूचीबद्ध हार्डवेयर का हर टुकड़ा अमेज़ॅन वेबसाइट पर पाया जा सकता है।

सॉफ्टवेयर सूची:

यहां सॉफ़्टवेयर की एक सूची दी गई है जिसे हम इस बाइटकोइन नोड स्थापना ट्यूटोरियल बनाने के लिए उपयोग करते थे।

हम इस सॉफ्टवेयर को डाउनलोड करने के दो तरीके प्रदान करते हैं।

Bytecoin Playlist:

इस पृष्ठ पर, हम बाइटकोइन से संबंधित वीडियो की एक सूची तक त्वरित पहुंच प्रदान करते हैं।

नामित हमारे यूट्यूब चैनल की सदस्यता लेने के लिए मत भूलना VirtualCoin.

बाइटकोइन संबंधित ट्यूटोरियल:

इस पृष्ठ पर, हम बाइटकोइन से संबंधित ट्यूटोरियल्स की सूची में त्वरित पहुंच प्रदान करते हैं।

ट्यूटोरियल - बाइटकोइन नोड स्थापना

यदि आपके लिनक्स में स्वैप मेमोरी कॉन्फ़िगर नहीं है, तो स्वैप फ़ाइल बनाने के लिए निम्न आदेशों का उपयोग करें:

# 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

हमारे उदाहरण में, हम एक 32 जीबी स्वैप फ़ाइल बनाते हैं।

स्वैप को सक्षम करने के लिए, fstab फ़ाइल संपादित करें और निम्न पंक्ति जोड़ें।

# vi /etc/fstab

/mnt/linux.swap none swap sw 0 0

स्वैप को सक्षम करने के लिए कंप्यूटर को रीबूट करें।

# reboot

आवश्यक संकुल को स्थापित करने के लिए निम्न आदेशों का प्रयोग करें।

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

बाइटकोइन स्थापना पैकेज डाउनलोड करें।

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

बाइटकोइन नोड सॉफ़्टवेयर संकलित करें और इंस्टॉल करें।

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

बाइटकोइन कॉन्फ़िगरेशन फ़ाइल बनाएं।

# 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

निम्न आदेश का उपयोग कर बाइटकोइन नोड प्रारंभ करें:

# bytecoind

ब्लॉकचेन के सिंक्रनाइज़ेशन को समाप्त करने के लिए प्रतीक्षा करें।

ब्लॉकचेन सिंक्रनाइज़ेशन में दिन या सप्ताह लग सकते हैं।

ब्लॉकचेन सिंक्रनाइज़ेशन की स्थिति को सत्यापित करने के लिए निम्न आदेश का उपयोग करें:

# tail -f bytecoind.log

यदि bytecoind.log फ़ाइल एक ही निर्देशिका में नहीं मिली है, तो bytecoind.log फ़ाइल का पता लगाने के लिए निम्न आदेशों का उपयोग करें।

# updatedb
# locate bytecoind.log

ट्यूटोरियल - बाइटकोइन वॉलेट सेवा

बाइटकोइन नोड स्थापना को खत्म करने के बाद, आपको एक नया बाइटकोइन वॉलेट बनाना होगा।

ब्लॉकचेन के वॉलेट सिंक्रनाइज़ेशन को समाप्त करने के लिए प्रतीक्षा करें और निकास कमांड दर्ज करें।

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

New wallet is generated. Address: 2851jgWSSjTA1SwzbGeXdWE6BND8yh1WQ5KF9rmaboCwSDaK38broEU4r7kfhZ1NoiWdvaVbSYuGhVHnYphfyKgbMqTafTQ

# [wallet 22gnmi]: exit

हमारे उदाहरण में, वर्चुअलकोइन नामक वॉलेट बनाया गया था और पासवर्ड kamisama123 @ पासवर्ड का उपयोग करने के लिए कॉन्फ़िगर किया गया था।

अपने बाइटकोइन पते पर ध्यान दें।

अब, आपको वॉलेट सेवा शुरू करने की जरूरत है।

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

ट्यूटोरियल - बाइटकोइन खनन पूल

बाइटकोइन नोड स्थापना और वॉलेट सेवा कॉन्फ़िगरेशन को समाप्त करने के बाद, हम बाइटकोइन खनन पूल स्थापना शुरू कर सकते हैं।

Use the following command to install the required software:

# 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

कंप्यूटर को रीबूट करें और बाइटकोइन नोड और वॉलेट सेवा को पुनरारंभ करें।

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

कंप्यूटर को रिबूट करने के बाद, आपको सॉफ़्टवेयर स्थापना को समाप्त करने की आवश्यकता है।

# 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

अब, बुनियादी विन्यास फाइल बनाते हैं।

# vi config.json

हमारी कॉन्फ़िगरेशन से पहले मूल फ़ाइल यहां दी गई है:

{
"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
}
}
}
}

हमारी कॉन्फ़िगरेशन के साथ नई फाइल यहां दी गई है।

बदले गए निर्देश बोल्ड में हाइलाइट किए गए थे।

{
"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
}
}
}
}

मेरी विन्यास सिर्फ बुनियादी है।

यह अत्यधिक अनुशंसा की जाती है कि आप अपनी कॉन्फ़िगरेशन को बेहतर बनाने के लिए इस कॉन्फ़िगरेशन फ़ाइल का अध्ययन करें।

बाइटकोइन खनन पूल शुरू करने के लिए निम्न आदेश का प्रयोग करें।

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

ध्यान रखें कि पूल सेवा तभी काम करेगी जब बाइटकोइन नोड सेवा चल रही हो और ब्लॉकचेन सिंक्रनाइज़ हो।

अगर सब कुछ सही तरीके से काम करता है, तो आपको स्क्रीन पर निम्नलिखित संदेश देखना चाहिए:

[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

सिस्टम अब बाइटकोइन खनिकों को टीसीपी बंदरगाह 3333, 5555 और 7777 खोलना चाहिए।

टीसीपी पोर्ट खुले हैं या नहीं, यह जांचने के लिए निम्न आदेश का प्रयोग करें।

# 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

हमारे खनन पूल का परीक्षण करने का समय।

एक और उबंटू लिनक्स पर जाएं और सीपीयूमिनर-मल्टी सॉफ्टवेयर स्थापित करें।

यदि आप नहीं जानते कि बाइटकोइन सीपीयू खनिक कैसे स्थापित करें, तो इस लिंक का पालन करें।

खनिक कंप्यूटर पर बाइटकोइन खनन शुरू करने के लिए निम्न आदेश का उपयोग करें।

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

ध्यान रखें कि आपको खनन पूल के आईपी पते और खनिक कंप्यूटर के बाइटकोइन वॉलेट पते को बदलने की जरूरत है।

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!!!)

ध्यान रखें कि आपको खनन पूल के आईपी पते और खनिक कंप्यूटर के बाइटकोइन वॉलेट पते को बदलने की जरूरत है।

अगर सब कुछ सही तरीके से काम करता है, तो आपको स्क्रीन पर पुष्टिकरण संदेश देखना चाहिए।