From be4674ffdc0f02471c960334fa5364fb913374ad Mon Sep 17 00:00:00 2001 From: Adrien Delsalle Date: Fri, 9 Aug 2019 10:53:10 +0200 Subject: [PATCH 1/2] Modify the way to change user uid/gid Workaround of a Docker bad handling of sparse files Fixes #923 --- base-notebook/start.sh | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/base-notebook/start.sh b/base-notebook/start.sh index 1d30ca9e..d81176d0 100755 --- a/base-notebook/start.sh +++ b/base-notebook/start.sh @@ -76,18 +76,12 @@ if [ $(id -u) == 0 ] ; then fi fi - # Change UID of NB_USER to NB_UID if it does not match - if [ "$NB_UID" != $(id -u $NB_USER) ] ; then - echo "Set $NB_USER UID to: $NB_UID" - usermod -u $NB_UID $NB_USER - fi - - # Set NB_USER primary gid to NB_GID (after making the group). Set - # supplementary gids to NB_GID and 100. - if [ "$NB_GID" != $(id -g $NB_USER) ] ; then - echo "Add $NB_USER to group: $NB_GID" + # Change UID:GID of NB_USER to NB_UID:NB_GID if it does not match + if [ "$NB_UID" != $(id -u $NB_USER) ] || [ "$NB_GID" != $(id -g $NB_USER) ] ; then + echo "Set user $NB_USER UID:GID to: $NB_UID:$NB_GID" + userdel $NB_USER groupadd -g $NB_GID -o ${NB_GROUP:-${NB_USER}} - usermod -g $NB_GID -aG 100 $NB_USER + useradd --home /home/$USER -u $NB_UID -g $NB_GID -G 100 -l $NB_USER fi # Enable sudo if requested From d66e26cb21ee602e8c421c318e1c548ad08bacd1 Mon Sep 17 00:00:00 2001 From: Adrien Delsalle Date: Fri, 9 Aug 2019 13:20:16 +0200 Subject: [PATCH 2/2] updates on start.sh file typo correction on env variable: replacing $USER with $NB_USER since $USER is not set test if group exists before trying to add a new group --- base-notebook/start.sh | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/base-notebook/start.sh b/base-notebook/start.sh index d81176d0..ead29d4b 100755 --- a/base-notebook/start.sh +++ b/base-notebook/start.sh @@ -77,11 +77,13 @@ if [ $(id -u) == 0 ] ; then fi # Change UID:GID of NB_USER to NB_UID:NB_GID if it does not match - if [ "$NB_UID" != $(id -u $NB_USER) ] || [ "$NB_GID" != $(id -g $NB_USER) ] ; then + if [ "$NB_UID" != $(id -u $NB_USER) ] || [ "$NB_GID" != $(id -g $NB_USER) ]; then echo "Set user $NB_USER UID:GID to: $NB_UID:$NB_GID" + if [ "$NB_GID" != $(id -g $NB_USER) ]; then + groupadd -g $NB_GID -o ${NB_GROUP:-${NB_USER}} + fi userdel $NB_USER - groupadd -g $NB_GID -o ${NB_GROUP:-${NB_USER}} - useradd --home /home/$USER -u $NB_UID -g $NB_GID -G 100 -l $NB_USER + useradd --home /home/$NB_USER -u $NB_UID -g $NB_GID -G 100 -l $NB_USER fi # Enable sudo if requested