X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=filesystem%2Fetc%2Fsystemd%2Fsystem%2Fbitcoind.service;h=1c3377f3e1c13009303db8e73548d0fc2b9a59e3;hb=7ed3b98c4d3678d982c33741f1f42727144e66ce;hp=669793380ed6e4a83c3a92a2ee5aa925a1052d93;hpb=d6def754cd241538c61456536b52ee51cbd85b42;p=distro-setup diff --git a/filesystem/etc/systemd/system/bitcoind.service b/filesystem/etc/systemd/system/bitcoind.service index 6697933..1c3377f 100644 --- a/filesystem/etc/systemd/system/bitcoind.service +++ b/filesystem/etc/systemd/system/bitcoind.service @@ -1,5 +1,5 @@ # iank: copied from /a/opt/bitcoin/contrib/init/bitcoind.service -# for sources as of 2022-11-14 +# for sources as of 2024-04-22 # It is not recommended to modify this file in-place, because it will # be overwritten during package upgrades. If you want to add further @@ -21,10 +21,15 @@ After=network-online.target Wants=network-online.target [Service] -ExecStart=/usr/bin/bitcoind -daemonwait \ - -pid=/run/bitcoind/bitcoind.pid \ +# iank: on a laptop, when it is doing its catchup, it tends to jump +# between 100% and 180% cpu and makes the fan spin annoyingly. +# 50% still had annoying fan spin. trying out 20% +CPUQuota=20% +ExecStart=/usr/bin/bitcoind -pid=/run/bitcoind/bitcoind.pid \ -conf=/etc/bitcoin/bitcoin.conf \ - -datadir=/var/lib/bitcoind + -datadir=/var/lib/bitcoind \ + -startupnotify='systemd-notify --ready' \ + -shutdownnotify='systemd-notify --stopping' # Make sure the config directory is readable by the service user PermissionsStartOnly=true @@ -33,8 +38,10 @@ ExecStartPre=/bin/chgrp bitcoin /etc/bitcoin # Process management #################### -Type=forking +Type=notify +NotifyAccess=all PIDFile=/run/bitcoind/bitcoind.pid + Restart=on-failure TimeoutStartSec=infinity TimeoutStopSec=600 @@ -81,5 +88,8 @@ PrivateDevices=true # Deny the creation of writable and executable memory mappings. MemoryDenyWriteExecute=true +# Restrict ABIs to help ensure MemoryDenyWriteExecute is enforced +SystemCallArchitectures=native + [Install] WantedBy=multi-user.target