From ec39784e14db7864f782241a2b90039d336eb46a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gardais=20J=C3=A9r=C3=A9my?= Date: Mon, 29 Nov 2021 15:27:47 +0100 Subject: [PATCH] Create home directory for each user --- duplicati/create.homedir.sh | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/duplicati/create.homedir.sh b/duplicati/create.homedir.sh index 2b69d4c..cbb28aa 100755 --- a/duplicati/create.homedir.sh +++ b/duplicati/create.homedir.sh @@ -321,6 +321,26 @@ ${local_similar_file_one} and ${local_similar_file_two} are ${RED}NOT${COLOR_DEB return "${return_is_file_similar}" } # }}} +create_directory() { # {{{ + + local_directory="${1}" + + ## Directory creation fail by default + return_create_directory="1" + + if mkdir --parents -- "${local_directory}" > /dev/null; then + debug_message "create_directory − \ +Successfully create ${RED}${local_directory}${COLOR_DEBUG} directory." + return_create_directory="0" + else + debug_message "create_directory − \ +Error in 'mkdir' command for ${RED}${local_directory}${COLOR_DEBUG} directory." + return_create_directory="1" + fi + + return "${return_create_directory}" +} +# }}} main() { # {{{ ## If ldapsearch command is not available {{{ @@ -366,6 +386,17 @@ main() { # {{{ && exit 0 ## }}} + ## Parse users list {{{ + while IFS= read -r username; do + ### Create user's home directory {{{ + ### OR Exit + create_directory "${home_base}/${username}" \ + || error_message "Can't create home directory (${home_base}/${username}) for ${username} user. Please use --debug option." 5 + ### }}} + + done < "${ldap_user_list_path}" + ## }}} + ## Information message debug_message "Create home directory in ${RED}${home_base}${COLOR_DEBUG}, \ for all members of ${RED}${ldap_group_cn},${ldap_group_base}${COLOR_DEBUG} LDAP group \