summaryrefslogtreecommitdiff
path: root/meta-ibm
diff options
context:
space:
mode:
authorRavi Teja <raviteja28031990@gmail.com>2023-08-03 20:03:17 +0300
committerRavi Teja <raviteja28031990@gmail.com>2023-08-05 17:20:13 +0300
commitc76c5586b85737bb20ec385826a3c2007e42a9ea (patch)
treeecc0db9178ccbf4ebacfce72bbc536520007f88e /meta-ibm
parente68201747a13d8f6906596bd79751e8638c81bda (diff)
downloadopenbmc-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')
-rw-r--r--meta-ibm/recipes-phosphor/images/obmc-phosphor-image.bbappend2
-rw-r--r--meta-ibm/recipes-phosphor/user/phosphor-user-manager_%.bbappend15
-rw-r--r--meta-ibm/recipes-phosphor/user/user/update_admin_account.service11
-rw-r--r--meta-ibm/recipes-phosphor/user/user/update_admin_account.sh20
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