| 1 | #!/bin/sh |
| 2 | |
| 3 | set -e |
| 4 | |
| 5 | case "${1}" in |
| 6 | configure|reconfigure) |
| 7 | if command -v systemd-sysusers >/dev/null 2>&1; then |
| 8 | systemd-sysusers /usr/lib/sysusers.d/netdata.conf |
| 9 | else |
| 10 | if ! getent group netdata > /dev/null; then |
| 11 | addgroup --quiet --system netdata |
| 12 | fi |
| 13 | |
| 14 | if ! getent passwd netdata > /dev/null; then |
| 15 | adduser --quiet --system --ingroup netdata --home /var/lib/netdata --no-create-home netdata |
| 16 | fi |
| 17 | fi |
| 18 | |
| 19 | groups="docker ceph I2C" |
| 20 | |
| 21 | if [ -d "/etc/pve" ]; then |
| 22 | groups="${groups} www-data" |
| 23 | fi |
| 24 | if [ -e "/dev/nvidiactl" ]; then |
| 25 | groups="${groups} video" |
| 26 | fi |
| 27 | |
| 28 | for item in ${groups}; do |
| 29 | if getent group "${item}" > /dev/null 2>&1; then |
| 30 | usermod -a -G "${item}" netdata |
| 31 | fi |
| 32 | done |
| 33 | ;; |
| 34 | esac |