summarylogtreecommitdiffstats
path: root/kvmd.install
diff options
context:
space:
mode:
Diffstat (limited to 'kvmd.install')
-rw-r--r--kvmd.install37
1 files changed, 27 insertions, 10 deletions
diff --git a/kvmd.install b/kvmd.install
index 3e504d4852ed..42e9645dda39 100644
--- a/kvmd.install
+++ b/kvmd.install
@@ -8,19 +8,36 @@ post_install() {
post_upgrade() {
echo "==> Configuring KVMD users and groups ..."
- id kvmd &>/dev/null || useradd -r -c "The main Pi-KVM daemon" -s /sbin/nologin kvmd
- for group in gpio uucp systemd-journal; do
- (groupmems -l -g "$group" | grep kvmd >/dev/null) || groupmems -g "$group" -a kvmd
- done
+ _create_user kvmd "Pi-KVM - The main daemon"
+ _add_user_to_group kvmd gpio
+ _add_user_to_group kvmd uucp
+ _add_user_to_group kvmd systemd-journal
- id kvmd-nginx &>/dev/null || useradd -r -c "Pi-KVM Nginx Server" -s /sbin/nologin kvmd-nginx
- (groupmems -l -g kvmd | grep kvmd-nginx >/dev/null) || groupmems -g kvmd -a kvmd-nginx
+ _create_user kvmd-ipmi "Pi-KVM - IPMI to KVMD proxy"
+ _add_user_to_group kvmd-ipmi kvmd
- chown root:kvmd \
- /usr/share/kvmd/configs.default/kvmd/*passwd \
- /etc/kvmd/*passwd
+ _create_user kvmd-nginx "Pi-KVM - HTTP entrypoint"
+ _add_user_to_group kvmd-nginx kvmd
+
+ chown kvmd:kvmd /etc/kvmd/htpasswd
+ chown kvmd-ipmi:kvmd-ipmi /etc/kvmd/ipmipasswd
+ chmod 600 /etc/kvmd/*passwd
}
post_remove() {
- userdel kvmd &>/dev/null
+ _delete_user kvmd-nginx
+ _delete_user kvmd-ipmi
+ _delete_user kvmd
+}
+
+_create_user() {
+ id "$1" &>/dev/null || useradd -r -c "$2" -s /sbin/nologin "$1"
+}
+
+_delete_user() {
+ userdel "$1" &>/dev/null
+}
+
+_add_user_to_group() {
+ (groupmems -l -g "$2" | grep "$1" >/dev/null) || groupmems -g "$2" -a "$1"
}