| #! /bin/sh |
| # |
| # Preserve the random seed between reboots. See urandom(4). |
| # |
| # This script can be called multiple times during operation (e.g. with |
| # "reload" argument) to refresh the seed. |
| |
| # The following arguments can be added to SEEDRNG_ARGS in |
| # /etc/default/seedrng: |
| # --seed-dir=/path/to/seed/directory |
| # Path to the directory where the seed and the lock files are stored. |
| # for optimal operation, this should be a persistent, writeable |
| # location. Default is /var/lib/seedrng |
| # |
| # --skip-credit |
| # Set this to true only if you do not want seed files to actually |
| # credit the RNG, for example if you plan to replicate this file |
| # system image and do not have the wherewithal to first delete the |
| # contents of /var/lib/seedrng. |
| # |
| # Example: |
| # SEEDRNG_ARGS="--seed-dir=/data/seedrng --skip-credit" |
| # |
| |
| DAEMON="seedrng" |
| SEEDRNG_ARGS="" |
| |
| # shellcheck source=/dev/null |
| [ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON" |
| |
| case "$1" in |
| start|stop|restart|reload) |
| # Never fail, as this isn't worth making a fuss |
| # over if it doesn't go as planned. |
| # shellcheck disable=SC2086 # we need the word splitting |
| seedrng $SEEDRNG_ARGS || true;; |
| *) |
| echo "Usage: $0 {start|stop|restart|reload}" |
| exit 1 |
| esac |