summaryrefslogtreecommitdiffstats
path: root/roles/ands_scripts/templates/all/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'roles/ands_scripts/templates/all/scripts')
-rw-r--r--roles/ands_scripts/templates/all/scripts/subids.sh19
1 files changed, 19 insertions, 0 deletions
diff --git a/roles/ands_scripts/templates/all/scripts/subids.sh b/roles/ands_scripts/templates/all/scripts/subids.sh
new file mode 100644
index 0000000..a83baa0
--- /dev/null
+++ b/roles/ands_scripts/templates/all/scripts/subids.sh
@@ -0,0 +1,19 @@
+#! /bin/bash
+
+[ -f /etc/subuid ] || exit
+[ -f /etc/subgid ] || exit
+
+users=$(getent group ipeusers | awk 'BEGIN { FS=":" } { print $4 }' | sed -e 's/,/\n/')
+subuid=$(cat /etc/subuid | awk 'BEGIN { FS=":" } { print $1 }')
+subgid=$(cat /etc/subgid | awk 'BEGIN { FS=":" } { print $1 }')
+
+subuid=$(echo -e "$users\n$subuid\n$subuid" | sort | uniq -u)
+subgid=$(echo -e "$users\n$subgid\n$subgid" | sort | uniq -u)
+
+for user in $subuid; do
+ grep -qxF "$user" /etc/subuid || sed -i'' -e "\$a$user:100000:65536" /etc/subuid
+done
+
+for user in $subgid; do
+ grep -qxF "$user" /etc/subgid || sed -i'' -e "\$a$user:100000:65536" /etc/subgid
+done