Skip to content

Instantly share code, notes, and snippets.

@ameeuw23
Last active February 23, 2018 23:10
Show Gist options
  • Save ameeuw23/7ce512dfc9f0034ce929783e29d5476c to your computer and use it in GitHub Desktop.
Save ameeuw23/7ce512dfc9f0034ce929783e29d5476c to your computer and use it in GitHub Desktop.

Revisions

  1. ameeuw23 revised this gist Feb 23, 2018. 2 changed files with 153 additions and 0 deletions.
    150 changes: 150 additions & 0 deletions bitcoind
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,150 @@
    #! /bin/sh
    ### BEGIN INIT INFO
    # Provides: bitcoind
    # Required-Start: $remote_fs
    # Required-Stop: $remote_fs
    # Default-Start: 2 3 4 5
    # Default-Stop: 0 1 6
    # Short-Description: bitcoind daemon startup script
    # Description: bitcoind daemon startup script
    ### END INIT INFO

    # Author: Pavel A. Karoukin

    # Do NOT "set -e"

    # PATH should only include /usr/* if it runs after the mountnfs.sh script
    PATH=/sbin:/usr/sbin:/bin:/usr/bin
    DESC="BitCoin Daemon"
    NAME=bitcoind
    DAEMON=/usr/bin/$NAME
    DAEMON_ARGS="-daemon"
    PIDFILE=/var/run/$NAME.pid
    SCRIPTNAME=/etc/init.d/$NAME
    CHUID=bitcoind:bitcoind

    # Exit if the package is not installed
    [ -x "$DAEMON" ] || exit 0

    # Read configuration variable file if it is present
    [ -r /etc/default/$NAME ] && . /etc/default/$NAME

    # Load the VERBOSE setting and other rcS variables
    . /lib/init/vars.sh

    # Define LSB log_* functions.
    # Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
    . /lib/lsb/init-functions

    #
    # Function that starts the daemon/service
    #
    do_start()
    {
    # Return
    # 0 if daemon has been started
    # 1 if daemon was already running
    # 2 if daemon could not be started
    start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \
    || return 1
    start-stop-daemon --start --quiet --chuid $CHUID --pidfile $PIDFILE --exec $DAEMON -- \
    $DAEMON_ARGS \
    || return 2
    }

    #
    # Function that stops the daemon/serv
    do_stop()
    {
    # Return
    # 0 if daemon has been stopped
    # 1 if daemon was already stopped
    # 2 if daemon could not be stopped
    # other if a failure occurred
    $DAEMON stop
    start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME

    RETVAL="$?"
    [ "$RETVAL" = 2 ] && return 2
    # Wait for children to finish too if this is a daemon that forks
    # and if the daemon is only ever run from this initscript.
    # If the above conditions are not satisfied then add some other code
    # that waits for the process to drop all resources that could be
    # needed by services started subsequently. A last resort is to
    # sleep for some time.
    start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
    [ "$?" = 2 ] && return 2
    # Many daemons don't delete their pidfiles when they exit.
    rm -f $PIDFILE
    return "$RETVAL"
    }

    #
    # Function that sends a SIGHUP to the daemon/service
    #
    do_reload() {
    #
    # If the daemon can reload its configuration without
    # restarting (for example, when it is sent a SIGHUP),
    # then implement that here.
    #
    start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME
    return 0
    }

    case "$1" in
    start)
    [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
    do_start
    case "$?" in
    0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
    2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
    esac
    ;;
    stop)
    [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
    do_stop
    case "$?" in
    0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
    2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
    esac
    ;;
    #reload|force-reload)
    #
    # If do_reload() is not implemented then leave this commented out
    # and leave 'force-reload' as an alias for 'restart'.
    #
    #log_daemon_msg "Reloading $DESC" "$NAME"
    #do_reload
    #log_end_msg $?
    #;;
    restart|force-reload)
    #
    # If the "reload" option is implemented then remove the
    # 'force-reload' alias
    #
    log_daemon_msg "Restarting $DESC" "$NAME"
    do_stop
    case "$?" in
    0|1)
    do_start
    case "$?" in
    0) log_end_msg 0 ;;
    1) log_end_msg 1 ;; # Old process is still running
    *) log_end_msg 1 ;; # Failed to start
    esac
    ;;
    *)
    # Failed to stop
    log_end_msg 1
    ;;
    esac
    ;;
    *)
    #echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
    echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
    exit 3
    ;;
    esac

    :
    3 changes: 3 additions & 0 deletions bitcoind-ubuntu-install
    Original file line number Diff line number Diff line change
    @@ -7,6 +7,9 @@ sudo apt-get install libboost-all-dev
    sudo add-apt-repository ppa:bitcoin/bitcoin
    sudo apt-get update
    sudo apt-get install bitcoind

    sudo useradd bitcoind -c "Bitcoin Daemon" -d /home/bitcoind -m -s /bin/bash -r

    mkdir ~/.bitcoin/ && cd ~/.bitcoin/
    nano bitcoind.conf

  2. @rjmacarthy rjmacarthy revised this gist May 27, 2015. 1 changed file with 4 additions and 0 deletions.
    4 changes: 4 additions & 0 deletions bitcoind-ubuntu-install
    Original file line number Diff line number Diff line change
    @@ -33,3 +33,7 @@ ps -e | grep bitcoin // returns pid
    kill -9 <pid>
    bitcoind &

    ** Test bitcoind is running and working **

    bitcoin-cli getinfo

  3. @rjmacarthy rjmacarthy revised this gist May 20, 2015. 1 changed file with 1 addition and 0 deletions.
    1 change: 1 addition & 0 deletions bitcoind-ubuntu-install
    Original file line number Diff line number Diff line change
    @@ -21,6 +21,7 @@ rpcallowip=127.0.0.1
    rpcallowip=195.154.11.93
    server=1


    ** Start bitcoind **

    bitcoind &
  4. @rjmacarthy rjmacarthy revised this gist May 20, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion bitcoind-ubuntu-install
    Original file line number Diff line number Diff line change
    @@ -11,7 +11,7 @@ mkdir ~/.bitcoin/ && cd ~/.bitcoin/
    nano bitcoind.conf


    ** Put the following code into the file **
    ** Add config to bitcoin.conf file **

    rpcuser=username
    rpcpassword=password
  5. @rjmacarthy rjmacarthy revised this gist May 20, 2015. 1 changed file with 8 additions and 11 deletions.
    19 changes: 8 additions & 11 deletions bitcoind-ubuntu-install
    Original file line number Diff line number Diff line change
    @@ -1,4 +1,5 @@
    `
    ** Add repository and install bitcoind **

    sudo apt-get install build-essential
    sudo apt-get install libtool autotools-dev autoconf
    sudo apt-get install libssl-dev
    @@ -8,30 +9,26 @@ sudo apt-get update
    sudo apt-get install bitcoind
    mkdir ~/.bitcoin/ && cd ~/.bitcoin/
    nano bitcoind.conf
    `

    Put the following code into the file:

    `
    ** Put the following code into the file **

    rpcuser=username
    rpcpassword=password
    testnet=1
    rpcport=8332
    rpcallowip=127.0.0.1
    rpcallowip=195.154.11.93
    server=1
    `

    Start bitcoind
    ** Start bitcoind **

    `
    bitcoind &
    `

    If bitcoind is already started

    `
    ** If bitcoind is already started **

    ps -e | grep bitcoin // returns pid
    kill -9 <pid>
    bitcoind &
    `

  6. @rjmacarthy rjmacarthy revised this gist May 20, 2015. 1 changed file with 21 additions and 3 deletions.
    24 changes: 21 additions & 3 deletions bitcoind-ubuntu-install
    Original file line number Diff line number Diff line change
    @@ -1,3 +1,4 @@
    `
    sudo apt-get install build-essential
    sudo apt-get install libtool autotools-dev autoconf
    sudo apt-get install libssl-dev
    @@ -7,13 +8,30 @@ sudo apt-get update
    sudo apt-get install bitcoind
    mkdir ~/.bitcoin/ && cd ~/.bitcoin/
    nano bitcoind.conf

    `

    Put the following code into the file:


    `
    rpcuser=username
    rpcpassword=password
    testnet=1
    rpcport=8332
    rpcallowip=127.0.0.1
    rpcallowip=195.154.11.93
    server=1
    server=1
    `

    Start bitcoind

    `
    bitcoind &
    `

    If bitcoind is already started

    `
    ps -e | grep bitcoin // returns pid
    kill -9 <pid>
    bitcoind &
    `
  7. @rjmacarthy rjmacarthy renamed this gist May 20, 2015. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  8. @rjmacarthy rjmacarthy created this gist May 20, 2015.
    19 changes: 19 additions & 0 deletions bitcoind-ubunti-install
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,19 @@
    sudo apt-get install build-essential
    sudo apt-get install libtool autotools-dev autoconf
    sudo apt-get install libssl-dev
    sudo apt-get install libboost-all-dev
    sudo add-apt-repository ppa:bitcoin/bitcoin
    sudo apt-get update
    sudo apt-get install bitcoind
    mkdir ~/.bitcoin/ && cd ~/.bitcoin/
    nano bitcoind.conf

    Put the following code into the file:

    rpcuser=username
    rpcpassword=password
    testnet=1
    rpcport=8332
    rpcallowip=127.0.0.1
    rpcallowip=195.154.11.93
    server=1