INSTALL - Fix rdc groups and lock file check

This fixes issues like:

1.

  /run/lock/rdcd.lock: Bad file descriptor
  Failed to determine owner of lock file.: Numerical result out of range

2.

  rdc.service: Failed to determine group credentials: No such process
  rdc.service: Failed at step GROUP spawning rdcd: No such process

Change-Id: I0ef5eb6ab72d036a3ea8dcb81f7a9108d279f7d6
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
Cette révision appartient à :
Galantsev, Dmitrii
2024-08-12 18:42:50 -05:00
Parent c22a737ce7
révision c015f0fcaa
2 fichiers modifiés avec 32 ajouts et 12 suppressions
+19 -9
Voir le fichier
@@ -56,15 +56,25 @@ do_update_alternatives(){
# it already exists
# https://www.debian.org/doc/debian-policy/ch-opersys.html#users-and-groups
do_create_rdc_user() {
adduser \
--system \
--quiet \
--home /nonexistent \
--no-create-home \
--disabled-password \
rdc
# create rdc group
if ! getent group rdc > /dev/null 2>&1 ; then
addgroup --system rdc
fi
# create rdc user
if ! getent passwd rdc > /dev/null 2>&1 ; then
adduser \
--system \
--quiet \
--home /nonexistent \
--no-create-home \
--disabled-password \
--ingroup rdc \
rdc
fi
# only add render if it exists
if [ $(getent group render) ]; then
if getent group render > /dev/null 2>&1 ; then
usermod -a -G render rdc
fi
@@ -78,7 +88,7 @@ do_create_rdc_user() {
create_rdc_service() {
#Symlink RDC Service
if [ -d /run/systemd/system ]; then
ln -s -f -r /@CPACK_PACKAGING_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBEXECDIR@/rdc/rdc.service /lib/systemd/system/rdc.service
ln -s -f -r @CPACK_PACKAGING_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBEXECDIR@/rdc/rdc.service /lib/systemd/system/rdc.service
fi
}
+13 -3
Voir le fichier
@@ -53,9 +53,19 @@ do_update_alternatives(){
# https://fedoraproject.org/wiki/Packaging%3aUsersAndGroups
do_create_rdc_user() {
useradd -r -s /sbin/nologin rdc
# create rdc group
if ! getent group rdc > /dev/null 2>&1 ; then
groupadd --system rdc
fi
# create rdc user
if ! getent passwd rdc > /dev/null 2>&1 ; then
useradd -r -g rdc -s /sbin/nologin rdc
fi
# only add render if it exists
if [ $(getent group render) ]; then
if getent group render > /dev/null 2>&1 ; then
usermod -a -G render rdc
fi
@@ -68,7 +78,7 @@ do_create_rdc_user() {
create_rdc_service() {
if [ -d /run/systemd/system ]; then
ln -s -f -r /@CPACK_PACKAGING_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBEXECDIR@/rdc/rdc.service @DISTRO_ROOT@/rdc.service
ln -s -f -r @CPACK_PACKAGING_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBEXECDIR@/rdc/rdc.service @DISTRO_ROOT@/rdc.service
fi
}