raspiblitz/home.admin/config.scripts/bitcoin.testnet.sh

80 lines
No EOL
2.7 KiB
Bash
Executable file

#!/bin/bash
# command info
if [ $# -eq 0 ] || [ "$1" = "-h" ] || [ "$1" = "-help" ]; then
echo "# Switches on bitcoind mainnet behind the scenes to testnet."
echo "# !!! JUST USE FOR DEVELOPEMNT - NOT FOR PRODUCTION !!!"
echo "# "
echo "# bitcoin.testnet.sh [activate|revert]"
echo
exit 1
fi
# make sure user is root
if [ $UID -ne 0 ]; then
echo "error='run this script with sudo'"
exit 1
fi
echo "# Running: bitcoin.testnet.sh $*"
if [ "$1" == "activate" ]; then
# check if bitcoin testnet is already activated
testnetSet=$(cat /mnt/hdd/bitcoin/bitcoin.conf | grep -c "^testnet=1")
if [ $testnetSet -gt 0 ]; then
echo "error='testnet is already activated'"
exit 1
fi
echo "# SWITCHING TO TESTNET .."
# make changes to bitcoin.conf
sed -i 's|^testnet=0|testnet=1|' /mnt/hdd/bitcoin/bitcoin.conf
sed -i 's/^\(main.debuglogfile=.*\)/#\1/' /mnt/hdd/bitcoin/bitcoin.conf
sed -i 's|^test.debuglogfile=/mnt/hdd/bitcoin/testnet3/debug.log|test.debuglogfile=/mnt/hdd/bitcoin/debug.log|' /mnt/hdd/bitcoin/bitcoin.conf
sed -i 's/^\(main.rpcbind=.*\)/#\1/' /mnt/hdd/bitcoin/bitcoin.conf
sed -i 's|^test.rpcbind=127.0.0.1:18332|test.rpcbind=127.0.0.1:8332|' /mnt/hdd/bitcoin/bitcoin.conf
# restart bitcoind service
systemctl restart bitcoind.service
echo "# OK bitcoind should now run testnet on mainnet ports"
echo "# If you want to save space you can delete old mainnet blockchain with:"
echo "# rm -rf /mnt/hdd/bitcoin/blocks"
echo "# rm -rf /mnt/hdd/bitcoin/chainstate"
exit 0
fi
if [ "$1" == "revert" ]; then
# check if bitcoin testnet is already activated
testnetSet=$(cat /mnt/hdd/bitcoin/bitcoin.conf | grep -c "^testnet=1")
if [ $testnetSet -eq 0 ]; then
echo "error='testnet is not activated'"
exit 1
fi
echo "# SWITCHING BACK TO MAINNET .."
# make changes to bitcoin.conf
sed -i 's|^testnet=1|testnet=0|' /mnt/hdd/bitcoin/bitcoin.conf
sed -i 's|^#main.debuglogfile=.*|main.debuglogfile=/mnt/hdd/bitcoin/debug.log|' /mnt/hdd/bitcoin/bitcoin.conf
sed -i 's|^test.debuglogfile=/mnt/hdd/bitcoin/debug.log|test.debuglogfile=/mnt/hdd/bitcoin/testnet3/debug.log|' /mnt/hdd/bitcoin/bitcoin.conf
sed -i 's|^#main.rpcbind=.*|main.rpcbind=127.0.0.1:8332|' /mnt/hdd/bitcoin/bitcoin.conf
sed -i 's|^test.rpcbind=127.0.0.1:8332|test.rpcbind=127.0.0.1:18332|' /mnt/hdd/bitcoin/bitcoin.conf
# restart bitcoind service
systemctl restart bitcoind.service
echo "# OK bitcoind should now run normal mainnet again"
echo "# If you want to save space you can delete old testnet blockchain with:"
echo "# rm -rf /mnt/hdd/bitcoin/testnet3/blocks"
echo "# rm -rf /mnt/hdd/bitcoin/testnet3/chainstate"
exit 0
fi
echo "error='unkown parameter'"
exit 1