我正在构建一个自助服务终端系统,需要在每次登录时为来宾用户提供一个新的临时主目录。我写了一个小 bash 脚本来处理这个问题,但是当它尝试更改用户的主目录时,它会抛出错误“usermod:进程 20465 当前正在使用用户来宾”
脚本本身如下所示:
#!/bin/bash
NEW_RAND =$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 8 | head -n 1)
mkdir /tmp/guest-$NEW_RAND
chown guest:guest /tmp/guest-$NEW_RAND
ln -s /etc/guest /tmp/guest-$NEW_RAND
usermod -d /tmp/guest-$NEW_RAND guest
Run Code Online (Sandbox Code Playgroud)
我将如何强制用户进入那个新的主目录?
此致
编辑:只是为了澄清我通过 .bashrc 在登录时运行脚本。
为什么不按照Byte Commander的建议使用构建访客帐户?您可以通过修改所需的文件来完全控制该过程。help.unbuntu.com上有一个很好的概述。
所以骨架文件进去/etc/guest-session/skel,自定义命令进去/etc/guest-session/prefs.sh。