diff options
Diffstat (limited to 'doc/init.md')
| -rw-r--r-- | doc/init.md | 73 |
1 files changed, 48 insertions, 25 deletions
diff --git a/doc/init.md b/doc/init.md index 32c4e8432..aa7102996 100644 --- a/doc/init.md +++ b/doc/init.md @@ -13,8 +13,9 @@ can be found in the contrib/init folder. 1. Service User --------------------------------- -All three startup configurations assume the existence of a "dogecoin" user +All three Linux startup configurations assume the existence of a "dogecoin" user and group. They must be created before attempting to use these scripts. +The OS X configuration assumes dogecoind will be set up for the current user. 2. Configuration --------------------------------- @@ -29,28 +30,34 @@ file, however it is recommended that a strong and secure password be used as this password is security critical to securing the wallet should the wallet be enabled. -If dogecoind is run with "-daemon" flag, and no rpcpassword is set, it will -print a randomly generated suitable password to stderr. You can also -generate one from the shell yourself like this: +If dogecoind is run with the "-server" flag (set by default), and no rpcpassword is set, +it will use a special cookie file for authentication. The cookie is generated with random +content when the daemon starts, and deleted when it exits. Read access to this file +controls who can access it through RPC. -bash -c 'tr -dc a-zA-Z0-9 < /dev/urandom | head -c32 && echo' +By default the cookie is stored in the data directory, but it's location can be overridden +with the option '-rpccookiefile'. -Once you have a password in hand, set rpcpassword= in /etc/dogecoin/dogecoin.conf +This allows for running dogecoind without having to do any manual configuration. -For an example configuration file that describes the configuration settings, -see contrib/debian/examples/dogecoin.conf. +`conf`, `pid`, and `wallet` accept relative paths which are interpreted as +relative to the data directory. `wallet` *only* supports relative paths. + +For an example configuration file that describes the configuration settings, +see `contrib/debian/examples/dogecoin.conf`. 3. Paths --------------------------------- +3a) Linux + All three configurations assume several paths that might need to be adjusted. -Binary: /usr/bin/dogecoind -Configuration file: /etc/dogecoin/dogecoin.conf -Data directory: /var/lib/dogecoind -PID file: /var/run/dogecoind/dogecoind.pid (OpenRC and Upstart) - /var/lib/dogecoind/dogecoind.pid (systemd) -Lock file: /var/lock/subsys/dogecoind (CentOS) +Binary: `/usr/bin/dogecoind` +Configuration file: `/etc/dogecoin/dogecoin.conf` +Data directory: `/var/lib/dogecoind` +PID file: `/var/run/dogecoind/dogecoind.pid` (OpenRC and Upstart) or `/var/lib/dogecoind/dogecoind.pid` (systemd) +Lock file: `/var/lock/subsys/dogecoind` (CentOS) The configuration file, PID directory (if applicable) and data directory should all be owned by the dogecoin user and group. It is advised for security @@ -58,6 +65,13 @@ reasons to make the configuration file and data directory only readable by the dogecoin user and group. Access to dogecoin-cli and other dogecoind rpc clients can then be controlled by group membership. +3b) Mac OS X + +Binary: `/usr/local/bin/dogecoind` +Configuration file: `~/Library/Application Support/Dogecoin/dogecoin.conf` +Data directory: `~/Library/Application Support/Dogecoin` +Lock file: `~/Library/Application Support/Dogecoin/.lock` + 4. Installing Service Configuration ----------------------------------- @@ -65,21 +79,21 @@ can then be controlled by group membership. Installing this .service file consists of just copying it to /usr/lib/systemd/system directory, followed by the command -"systemctl daemon-reload" in order to update running systemd configuration. +`systemctl daemon-reload` in order to update running systemd configuration. -To test, run "systemctl start dogecoind" and to enable for system startup run -"systemctl enable dogecoind" +To test, run `systemctl start dogecoind` and to enable for system startup run +`systemctl enable dogecoind` 4b) OpenRC Rename dogecoind.openrc to dogecoind and drop it in /etc/init.d. Double check ownership and permissions and make it executable. Test it with -"/etc/init.d/dogecoind start" and configure it to run on startup with -"rc-update add dogecoind" +`/etc/init.d/dogecoind start` and configure it to run on startup with +`rc-update add dogecoind` 4c) Upstart (for Debian/Ubuntu based distributions) -Drop dogecoind.conf in /etc/init. Test by running "service dogecoind start" +Drop dogecoind.conf in /etc/init. Test by running `service dogecoind start` it will automatically start on reboot. NOTE: This script is incompatible with CentOS 5 and Amazon Linux 2014 as they @@ -87,16 +101,25 @@ use old versions of Upstart and do not supply the start-stop-daemon utility. 4d) CentOS -Copy dogecoind.init to /etc/init.d/dogecoind. Test by running "service dogecoind start". +Copy dogecoind.init to /etc/init.d/dogecoind. Test by running `service dogecoind start`. -Using this script, you can adjust the path and flags to the dogecoind program by -setting the BITCOIND and FLAGS environment variables in the file +Using this script, you can adjust the path and flags to the dogecoind program by +setting the DOGECOIND and FLAGS environment variables in the file /etc/sysconfig/dogecoind. You can also use the DAEMONOPTS environment variable here. +4e) Mac OS X + +Copy org.dogecoin.dogecoind.plist into ~/Library/LaunchAgents. Load the launch agent by +running `launchctl load ~/Library/LaunchAgents/org.dogecoin.dogecoind.plist`. + +This Launch Agent will cause dogecoind to start whenever the user logs in. + +NOTE: This approach is intended for those wanting to run dogecoind as the current user. +You will need to modify org.dogecoin.dogecoind.plist if you intend to use it as a +Launch Daemon with a dedicated dogecoin user. + 5. Auto-respawn ----------------------------------- Auto respawning is currently only configured for Upstart and systemd. Reasonable defaults have been chosen but YMMV. - - |