Updated scripts/update-base.sh (synchronized from/with qqcs-lxc).
authorZoltán Felleg <zoltan.felleg@userrendszerhaz.hu>
Sun, 9 Nov 2025 10:18:18 +0000 (11:18 +0100)
committerZoltán Felleg <zoltan.felleg@userrendszerhaz.hu>
Sun, 9 Nov 2025 10:18:18 +0000 (11:18 +0100)
scripts/update-base.sh

index a663cf477073c08b2c988bdf20f26ee3675eca97..ca08f98ea79753bd51e3791d03fa93b2e402d4d7 100755 (executable)
@@ -17,18 +17,9 @@ fi
 
 mount_dev_proc_sys()
 {
-    if [ ! -d $CONTAINER_PATH/rootfs/dev ]
-    then
-        mkdir $CONTAINER_PATH/rootfs/dev
-    fi
-    if [ ! -d $CONTAINER_PATH/rootfs/proc ]
-    then
-        mkdir $CONTAINER_PATH/rootfs/proc
-    fi
-    if [ ! -d $CONTAINER_PATH/rootfs/sys ]
-    then
-        mkdir $CONTAINER_PATH/rootfs/sys
-    fi
+    mkdir $CONTAINER_PATH/rootfs/dev
+    mkdir $CONTAINER_PATH/rootfs/proc
+    mkdir $CONTAINER_PATH/rootfs/sys
     mount -o bind /dev $CONTAINER_PATH/rootfs/dev
     mount -t proc proc $CONTAINER_PATH/rootfs/proc
     mount -t sysfs sysfs $CONTAINER_PATH/rootfs/sys
@@ -54,7 +45,12 @@ unprivilege()
     PRIV_UID_COUNT=$(find $CONTAINER_PATH/rootfs -uid $PRIV_UID | wc -l)
     if [ $PRIV_UID_COUNT -gt 0 ]
     then
-        echo "root user files: $PRIV_UID_COUNT"
+        if [ $PRIV_UID_COUNT -lt 10 ]
+        then
+            find $CONTAINER_PATH/rootfs -uid $PRIV_UID -print0 | xargs -0 ls --directory -l
+        else
+            echo "root user files: $PRIV_UID_COUNT"
+        fi
         UNPRIV_UID=$(( $PRIV_UID + 100000 ))
         find $CONTAINER_PATH/rootfs -uid $PRIV_UID -print0 | xargs -0 chown --no-dereference $UNPRIV_UID
     fi
@@ -63,7 +59,12 @@ unprivilege()
     PRIV_GID_COUNT=$(find $CONTAINER_PATH/rootfs -gid $PRIV_GID | wc -l)
     if [ $PRIV_GID_COUNT -gt 0 ]
     then
-        echo "root group files: $PRIV_GID_COUNT"
+        if [ $PRIV_GID_COUNT -lt 10 ]
+        then
+            find $CONTAINER_PATH/rootfs -gid $PRIV_GID -print0 | xargs -0 ls --directory -l
+        else
+            echo "root group files: $PRIV_GID_COUNT"
+        fi
         UNPRIV_GID=$(( $PRIV_GID + 100000 ))
         find $CONTAINER_PATH/rootfs -gid $PRIV_GID -print0 | xargs -0 chgrp --no-dereference $UNPRIV_GID
     fi
@@ -103,7 +104,7 @@ update_packages()
 {
     case "$DISTRIBUTION" in
         "CentOS")
-            YUM_CONFIG=$SCRIPT_PATH/yum.conf.centos
+            YUM_CONFIG=$SCRIPT_PATH/yum.conf.centos.$SHORT_HOSTNAME
             YUM_RELEASEVER=$DISTRIBUTION_VERSION
             yum --assumeyes \
                 --config=$YUM_CONFIG \
@@ -121,7 +122,7 @@ update_packages()
                 clean all
             ;;
         "Fedora")
-            DNF_CONFIG=$SCRIPT_PATH/dnf.conf.fedora
+            DNF_CONFIG=$SCRIPT_PATH/dnf.conf.fedora.$SHORT_HOSTNAME
             DNF_RELEASEVER=$DISTRIBUTION_VERSION
             dnf --assumeyes \
                 --config=$DNF_CONFIG \
@@ -140,7 +141,7 @@ update_packages()
             rm --force $CONTAINER_PATH/rootfs/var/log/*.log
             ;;
         "Rocky")
-            YUM_CONFIG=$SCRIPT_PATH/yum.conf.rocky
+            YUM_CONFIG=$SCRIPT_PATH/yum.conf.rocky.$SHORT_HOSTNAME
             YUM_RELEASEVER=$DISTRIBUTION_VERSION
             yum --assumeyes \
                 --config=$YUM_CONFIG \
@@ -162,7 +163,8 @@ update_packages()
 
 set_variables()
 {
-    CONTAINER_OS_PARAMETER=$1
+    CONTAINER_OS_PARAMETER=$(echo $1 | cut -f 2 -d '.')
+    CONTAINER_OS_PARAMETER=$(basename $CONTAINER_OS_PARAMETER)
 
 
     echo "Setting variables."
@@ -175,6 +177,7 @@ set_variables()
 
     SCRIPT_PATH=$(dirname $(realpath $0))
     BASE_PATH=$(dirname $SCRIPT_PATH)
+    SHORT_HOSTNAME=$(hostname --short)
     SOURCES_PATH=$BASE_PATH/sources
 
     CONTAINER_SOURCE_PATH=$SOURCES_PATH/$CONTAINER_NAME_PARAMETER