Скрипт не переключается с рута на обычного пользователя автоматически - PullRequest
0 голосов
/ 14 октября 2018

Я вошел в систему как пользователь root, чем я запускаю скрипт с содержанием ниже

#! /bin/bash
id studentapp if [ $? -eq 0 ]; 
then  echo " SKIPPING user creation" 
else useradd studentapp 
echo " User created" 
fi 
cd /home/studentapp

Любая идея ...

1 Ответ

0 голосов
/ 14 октября 2018

Может быть, вам нужно su studentapp в блоке else, если пользователь был создан.cd меняет рабочий каталог.Если пользователь не был создан - возможно, такого каталога нет.

su man page

cd man page

Такжеэто может быть полезно для вас:

проверить, существует ли пользователь

проверить, существует ли директория

Обновить

#! /bin/bash
id studentapp
if [ $? -eq 0 ];
then
    echo "user exists" 
else
    useradd studentapp --create-home
    passwd studentapp
    echo "user created" 
fi
su studentapp
cd /home/studentapp
...