diff options
author | Ravi Teja <raviteja28031990@gmail.com> | 2023-08-03 20:03:17 +0300 |
---|---|---|
committer | Ravi Teja <raviteja28031990@gmail.com> | 2023-08-05 17:20:13 +0300 |
commit | c76c5586b85737bb20ec385826a3c2007e42a9ea (patch) | |
tree | ecc0db9178ccbf4ebacfce72bbc536520007f88e /meta-ibm | |
parent | e68201747a13d8f6906596bd79751e8638c81bda (diff) | |
download | openbmc-c76c5586b85737bb20ec385826a3c2007e42a9ea.tar.xz |
meta-ibm: update admin user home directory
currently admin user created with home directory '/' and there is an
error while deleting admin user.
this commit updates admin user home directory to /home/admin.
Tested by: Notice admin home directory and Delete admin user
Change-Id: I32210435ac0a94555d2f369e226df7e04f49d88c
Signed-off-by: Ravi Teja <raviteja28031990@gmail.com>
Diffstat (limited to 'meta-ibm')
4 files changed, 47 insertions, 1 deletions
diff --git a/meta-ibm/recipes-phosphor/images/obmc-phosphor-image.bbappend b/meta-ibm/recipes-phosphor/images/obmc-phosphor-image.bbappend index 92fa44a76f..a82f62c55d 100644 --- a/meta-ibm/recipes-phosphor/images/obmc-phosphor-image.bbappend +++ b/meta-ibm/recipes-phosphor/images/obmc-phosphor-image.bbappend @@ -52,7 +52,7 @@ IBM_EXTRA_USERS_PARAMS += " \ # Add the "admin" account. IBM_EXTRA_USERS_PARAMS += " \ - useradd -M -d / --groups priv-admin,redfish,web -s /sbin/nologin admin; \ + useradd --groups priv-admin,redfish,web -s /sbin/nologin admin; \ usermod -p ${DEFAULT_OPENBMC_PASSWORD} admin; \ " diff --git a/meta-ibm/recipes-phosphor/user/phosphor-user-manager_%.bbappend b/meta-ibm/recipes-phosphor/user/phosphor-user-manager_%.bbappend new file mode 100644 index 0000000000..8667e285a3 --- /dev/null +++ b/meta-ibm/recipes-phosphor/user/phosphor-user-manager_%.bbappend @@ -0,0 +1,15 @@ +FILESEXTRAPATHS:prepend := "${THISDIR}/user:" + +inherit obmc-phosphor-systemd + +RDEPENDS:${PN} += "bash" + + +SRC_URI += " file://update_admin_account.sh" +SYSTEMD_SERVICE:${PN}:append = " update_admin_account.service" + +do_install:append() { + install -m 0755 ${WORKDIR}/update_admin_account.sh ${D}${bindir}/update_admin_account.sh +} + + diff --git a/meta-ibm/recipes-phosphor/user/user/update_admin_account.service b/meta-ibm/recipes-phosphor/user/user/update_admin_account.service new file mode 100644 index 0000000000..a43ff3491a --- /dev/null +++ b/meta-ibm/recipes-phosphor/user/user/update_admin_account.service @@ -0,0 +1,11 @@ +[Unit] +Description=Update admin user home directory +Before=xyz.openbmc_project.User.Manager.service + +[Service] +ExecStart={bindir}/update_admin_account.sh +Type=oneshot +RemainAfterExit=yes + +[Install] +RequiredBy=xyz.openbmc_project.User.Manager.service diff --git a/meta-ibm/recipes-phosphor/user/user/update_admin_account.sh b/meta-ibm/recipes-phosphor/user/user/update_admin_account.sh new file mode 100644 index 0000000000..91b1f612ed --- /dev/null +++ b/meta-ibm/recipes-phosphor/user/user/update_admin_account.sh @@ -0,0 +1,20 @@ +#!/bin/sh +# Purpose: creates /home/admin directory and updates admin user +# home directory to /home/admin + +# Update admin user home directory +if id -u "admin" >/dev/null 2>&1; then + # admin user exists + homedir=$(grep '^admin:' /etc/passwd | cut -d: -f6) + if test "${homedir}" = "/"; then + echo "Changing admin user home directory" + mkdir -p /home/admin + chmod 0755 /home/admin + chown --recursive admin:admin /home/admin + usermod --home /home/admin admin + else + echo "admin user home directory is okay" + fi +else + echo "admin user account is not present" +fi |