#!/usr/bin/env bash# To use this script, you'll want to put this in your systemd service:# rm /etc/gshadow# systemd-sysusers# (run this script)# systemd-tmpfiles --create --remove --boot --exclude-prefix=/dev# This will populate /etc/group successfully, and then populate /etc/gshadow# with any missing groups that we nuked when we removed /etc/gshadowGSHADOW_FILE="/etc/gshadow"GROUP_FILE="/etc/group"for f in $(cat $GROUP_FILE); docut -f1 -d':' <(echo $f) | xargs -I{} grep ^"{}" $GSHADOW_FILE &>/dev/null || \echo $(cut -f1 -d':' <(echo $f)):'!*::' >> $GSHADOW_FILEdone