mirror of
https://github.com/MacRimi/ProxMenux.git
synced 2025-10-02 08:06:17 +00:00
Update share-common.func
This commit is contained in:
@@ -77,24 +77,37 @@ pmx_choose_or_create_group() {
|
|||||||
|
|
||||||
# Ensure group exists on host and return its GID
|
# Ensure group exists on host and return its GID
|
||||||
pmx_ensure_host_group() {
|
pmx_ensure_host_group() {
|
||||||
# comments in English
|
|
||||||
# IN: group name
|
|
||||||
# OUT: echoes GID to stdout, return 0 on success
|
|
||||||
local group_name="$1"
|
local group_name="$1"
|
||||||
|
local suggested_gid="$2"
|
||||||
|
|
||||||
if ! getent group "$group_name" >/dev/null 2>&1; then
|
if ! getent group "$group_name" >/dev/null 2>&1; then
|
||||||
if groupadd "$group_name" >/dev/null 2>&1; then
|
if [[ -n "$suggested_gid" ]]; then
|
||||||
|
|
||||||
|
if getent group "$suggested_gid" >/dev/null 2>&1; then
|
||||||
|
msg_error "$(translate "GID already in use:") $suggested_gid"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
groupadd -g "$suggested_gid" "$group_name" >/dev/null 2>&1
|
||||||
|
else
|
||||||
|
groupadd "$group_name" >/dev/null 2>&1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ $? -eq 0 ]]; then
|
||||||
msg_ok "$(translate "Group created:") $group_name"
|
msg_ok "$(translate "Group created:") $group_name"
|
||||||
else
|
else
|
||||||
msg_error "$(translate "Failed to create group:") $group_name"
|
msg_error "$(translate "Failed to create group:") $group_name"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
local gid
|
local gid
|
||||||
gid="$(getent group "$group_name" | cut -d: -f3)"
|
gid="$(getent group "$group_name" | cut -d: -f3)"
|
||||||
if [[ -z "$gid" ]]; then
|
if [[ -z "$gid" ]]; then
|
||||||
msg_error "$(translate "Failed to resolve group GID for") $group_name"
|
msg_error "$(translate "Failed to resolve group GID for") $group_name"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "$gid"
|
echo "$gid"
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user