Эй, я создал загрузочный скрипт для Ubuntu / Debian и хочу поделиться им здесь
Обновите этот код правильный путь к bitcoind исполняемым в NAME и правильного пользователя и группы в CHUID
Сохраните этот код /etc/init.d/bitcoind
Затем выполните следующие команды:
$ Суда CHMOD + х /etc/init.d/bitcoind
$ Sudo обновление-rc.d bitcoind по умолчанию
Вот и все. Теперь он начнет с началом сервера.
#! / Бен / ш
### НАЧАТЬ INIT INFO
# Обеспечивает: bitcoind
# Обязательный-Start: $ remote_fs
# Обязательный-Stop: $ remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Короткое описание: bitcoind скрипт запуска демона
# Описание: bitcoind скрипт запуска демона
### END INIT INFO
# Автор: Pavel A. Karoukin <pavel@yepcorp.com>
#
# Не "набор -e"
# PATH следует только включать / USR / * если он запускается после сценария mountnfs.sh
PATH = / SBIN: / USR / SBIN: / бен: / USR / бен
DESC ="Bitcoin Daemon"
NAME = / USR / местные / бен / bitcoind
DAEMON = $ NAME
PIDFILE = / вар / запустить / $ NAME.pid
SCRIPTNAME = / и т.д. / init.d / $ NAME
CHUID = USER: GROUP
# Выходит, если пакет не установлен
[ -Икс "$ DAEMON" ] || выход 0
Конфигурация # Чтения переменного файл, если он присутствует
[-r / и т.д. / по умолчанию / $ NAME] && , / И т.д. / по умолчанию / $ NAME
# Загрузите VERBOSE настройки и другие переменные RCS
. /lib/init/vars.sh
# Определяет LSB log_ * функцию.
# В зависимости от LSB-базы (>= 3.0-6), чтобы убедиться, что этот файл присутствует.
. / Библиотека / LSB / инициализации-функции
#
# Функция, которая запускает демон / услугу
#
do_start ()
вернуться 2
#
# Функция, которая останавливает демон / услугу
#
do_stop ()
{
# Вернуть
# 0, если демон был остановлен
# 1, если демон уже был остановлен
# 2, если демон не может быть остановлен
# Другой, если произошел сбой
старт-стоп-демон --stop --quiet --retry = СРОК / 30 / УБИТЬ / 5 --pidfile $ PIDFILE --name $ NAME
RETVAL ="$?"
[ "$ RETVAL" = 2] && вернуться 2
# Подождите детей, чтобы закончить тоже, если это демон, который разветвляется
# И если демон только когда-либо бежать из этого сценария, запускающего.
# Если вышеуказанные условия не выполняются, то добавьте немного другой код
# Что ждет процесса бросить все ресурсы, которые могли бы быть
# Нужны услуги стали впоследствии. В крайнем случае это
# Сон в течение некоторого времени.
старт-стоп-демон --stop --quiet --oknodo --retry = 0/30 / KILL / 5 --exec $ ДЕМОН
[ "$?" = 2] && вернуться 2
# Многие демоны не удалять их pidfiles, когда они выходят.
гт -f $ PIDFILE
вернуть "$ RETVAL"
}
#
# Функция, которая посылает SIGHUP демону / услуги
#
do_reload () {
#
# Если демон может перезагрузить его конфигурацию без
# Перезапуск (например, когда он послал SIGHUP),
# Затем осуществить это здесь.
#
старт-стоп-демона --stop --signal 1 --quiet --pidfile $ PIDFILE --name $ NAME
вернуться 0
}
дело "$ 1" в
Начало)
[ "$ VERBOSE" ! = Нет] && log_daemon_msg "Начиная с $ DESC" "$ NAME"
do_start
дело "$?" в
0 | 1) [ "$ VERBOSE" ! = Нет] && log_end_msg 0 ;;
2) [ "$ VERBOSE" ! = Нет] && log_end_msg 1 ;;
ESAC
;;
стоп)
[ "$ VERBOSE" ! = Нет] && log_daemon_msg "Остановка $ DESC" "$ NAME"
do_stop
дело "$?" в
0 | 1) [ "$ VERBOSE" ! = Нет] && log_end_msg 0 ;;
2) [ "$ VERBOSE" ! = Нет] && log_end_msg 1 ;;
ESAC
;;
#reload | сила-перезарядка)
#
# Если do_reload () не выполняется, то оставьте это закомментировано
# И оставить «форс-перезагрузки» в качестве псевдонима для «перезагрузки».
#
#log_daemon_msg "Перегрузочный $ DESC" "$ NAME"
#do_reload
#log_end_msg $?
# ;;
перезапуск | форс-перезарядка)
#
# Если "перезагружать" опция реализована затем удалить
# «сила-перезарядка» псевдоним
#
log_daemon_msg "Перезапуск $ DESC" "$ NAME"
do_stop
дело "$?" в
0 | 1)
do_start
дело "$?" в
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Старый процесс все еще работает
*) Log_end_msg 1 ;; # Не смог начать
ESAC
;;
*)
# Не удалось остановить
log_end_msg 1
;;
ESAC
;;
*)
#echo "Использование: $ SCRIPTNAME сила-перезарядка" >&2
эхо "Использование: $ старт SCRIPTNAME" >&2
выход 3
;;
ESAC
: