The necessary settings for bitcoin and bitcoincash to work on the same machine are as follows.
Examine all files well grasp the differences between them.
cd /usr/local/bin/
mkdir bitcoin
cd /user
wget https://bitcoincore.org/bin/bitcoin-core-0.20.0/bitcoin-0.20.0-x86_64-linux-gnu.tar.gz
tar -zxvf bitcoin-0.20.0-x86_64-linux-gnu.tar.gz
sudo install -m 0755 -o user -g user -t /usr/local/bin/bitcoin ~/bitcoin-0.20.0/bin/*
rm -rf ~/bitcoin-0.20.0/ bitcoin-0.20.0-x86_64-linux-gnu.tar.gz
cd /usr/local/bin/
mkdir bitcoincash
cd /user
wget https://github.com/Bitcoin-ABC/bitcoin-abc/releases/download/v0.22.3/bitcoin-abc-0.22.3-x86_64-linux-gnu.tar.gz
tar -zxvf bitcoin-abc-0.22.3-x86_64-linux-gnu.tar.gz
sudo install -m 0755 -o user -g user -t /usr/local/bin/bitcoincash ~/bitcoin-abc-0.22.3/bin/*
rm -rf ~/bitcoin-abc-0.22.3/ bitcoin-abc-0.22.3-x86_64-linux-gnu.tar.gz
cd /usr/local/bin/bitcoincash
mv bitcoin-cli bitcoincash-cli
mv bitcoind bitcoincashd
mv bitcoin-qt bitcoincash-qt
mv bitcoin-seeder bitcoincash-seeder
mv bitcoin-tx bitcoincash-tx
mv bitcoin-wallet bitcoincash-wallet
Bitcoin Conf.
cd /user
mkdir .bitcoin
nano bitcoin.conf
copy and paste code.
regtest=1
server=1
txindex=1
daemon=1
debug=0
datadir=/user/bitcoin
rpcuser=hedehude
rpcpassword=hedehude
rpcbind=127.0.0.1
rpcport=28332
rpcallowip=127.0.0.1/16
zmqpubrawblock=tcp://127.0.0.1:38332
zmqpubrawtx=tcp://127.0.0.1:38332
zmqpubhashtx=tcp://127.0.0.1:38332
zmqpubhashblock=tcp://127.0.0.1:38332
deprecatedrpc=accounts
[test]
rpcbind=127.0.0.1
rpcport=28332
rpcallowip=127.0.0.1/16
zmqpubrawblock=tcp://127.0.0.1:38332
zmqpubrawtx=tcp://127.0.0.1:38332
zmqpubhashtx=tcp://127.0.0.1:38332
zmqpubhashblock=tcp://127.0.0.1:38332
[regtest]
rpcbind=127.0.0.1
rpcport=28332
rpcallowip=127.0.0.1/16
zmqpubrawblock=tcp://127.0.0.1:38332
zmqpubrawtx=tcp://127.0.0.1:38332
zmqpubhashtx=tcp://127.0.0.1:38332
zmqpubhashblock=tcp://127.0.0.1:38332
BitcoinCash Conf.
cd /user
mkdir .bitcoincash
nano bitcoincash.conf
copy and paste code.
regtest=1
server=1
txindex=1
daemon=1
debug=0
datadir=/user/bitcoincash
rpcuser=hedehude
rpcpassword=hedehude
rpcbind=127.0.0.1
rpcport=78332
port=7870
rpcallowip=127.0.0.1/16
zmqpubrawblock=tcp://127.0.0.1:88332
zmqpubrawtx=tcp://127.0.0.1:88332
zmqpubhashtx=tcp://127.0.0.1:88332
zmqpubhashblock=tcp://127.0.0.1:88332
deprecatedrpc=accounts
[test]
rpcbind=127.0.0.1
rpcport=78332
rpcallowip=127.0.0.1/16
zmqpubrawblock=tcp://127.0.0.1:88332
zmqpubrawtx=tcp://127.0.0.1:88332
zmqpubhashtx=tcp://127.0.0.1:88332
zmqpubhashblock=tcp://127.0.0.1:88332
[regtest]
rpcbind=127.0.0.1
rpcport=78332
rpcallowip=127.0.0.1/16
zmqpubrawblock=tcp://127.0.0.1:88332
zmqpubrawtx=tcp://127.0.0.1:88332
zmqpubhashtx=tcp://127.0.0.1:88332
zmqpubhashblock=tcp://127.0.0.1:88332
To run nodes...
For Bitcoin Service
cd /etc/systemd/system/
nano bitcoind.service
copy and paste code.
[Unit]
Description=Bitcoin Daemon
After=network.target
[Service]
User=user
Group=user
Type=forking
PIDFile=/user/bitcoin/bitcoind.pid
ExecStart=/usr/local/bin/bitcoin/bitcoind -pid=/user/bitcoin/bitcoind.pid -conf=/user/.bitcoin/bitcoin.conf -datadir=/user/bitcoin
KillMode=process
Restart=always
TimeoutSec=120
RestartSec=30
[Install]
WantedBy=multi-user.target
For BitcoinCash Service
cd /etc/systemd/system/
nano bitcoincashd.service
copy and paste code.
[Unit]
Description=BitcoinCash Daemon
After=network.target
[Service]
User=user
Group=user
Type=forking
PIDFile=/user/bitcoincash/bitcoincashd.pid
ExecStart=/usr/local/bin/bitcoincash/bitcoincashd -pid=/user/bitcoincash/bitcoincashd.pid -conf=/user/.bitcoincash/bitcoincash.conf
KillMode=process
Restart=always
TimeoutSec=120
RestartSec=30
[Install]
WantedBy=multi-user.target
Run services
sudo systemctl start bitcoind.service
sudo systemctl status bitcoind.service
Status is success...
sudo systemctl enable bitcoind.service
sudo systemctl start bitcoincashd.service
sudo systemctl status bitcoincashd.service
Status is success...
sudo systemctl enable bitcoincashd.service
Now, when querying through the terminal,
For Bitcoin
/usr/local/bin/bitcoin/./bitcoin-cli getblockchaininfo
For BitcoinCash
/usr/local/bin/bitcoincash/./bitcoincash-cli -conf=/user/.bitcoincash/bitcoincash.conf getblockchaininfo
When querying rpc with curl,
For Bitcoin
curl -u hedehude:hedehude --data-binary '{"jsonrpc": "1.0", "id": "curltest", "method": "getblockchaininfo", "params": []}' -H 'content-type: text/plain;' http://127.0.0.1:28332/
For BitcoinCash
curl -u hedehude:hedehude --data-binary '{"jsonrpc": "1.0", "id": "curltest", "method": "getblockchaininfo", "params": []}' -H 'content-type: text/plain;' http://127.0.0.1:78332/
It should be running smoothly now ...
Good luck.