从 Ubuntu 17.10 开始,我们如何在 gdm3 下创建 kiosk 模式访客会话?
答案1
现在,Ubuntu 17.10 及更高版本将默认使用 Gnome,而对于我们这些已经习惯了 lightdm unity-greeter 中的访客会话功能的人来说,这是一个解决方案,如下所述:
https://unix.stackexchange.com/questions/258544/create-guest-account-in-gnome-3-x-on-arch-linux
注意:在 U&L 的 terdon 的原始帖子的代码中将 gdm 更改为 gdm3。
三个步骤:
/tmp 下、gdm3 下的客户文件夹不允许无密码登录,因此请创建一个长度大于 5 个字符的密码。
sudo useradd -d /tmp/guestx -p XXXXX guestx
在 /etc/gdm3 中创建和编辑一些 PostLogin 和 PostSession bash 脚本
(a)PostLogin 脚本
创建/编辑
sudo nano /etc/gdm3/PostLogin/Default
并添加
#!/bin/sh
guestuser="guestx" ## Next set up guest user session files/folders
if [[ "$USER" = "$guestuser" ]]; then
mkdir /tmp/"$guestuser"
cp /etc/skel/* /tmp/"$guestuser"
chown -R "$guestuser":"$guestuser" /tmp/"$guestuser"
fi
exit 0
(b)PostSession 脚本
创建/编辑
sudo nano /etc/gdm3/PostSession/Default
并添加
#!/bin/sh
guestuser="guestx" ## Next clear the guest user session files/folders
if [[ "$USER" = "$guestuser" ]]; then
rm -rf /tmp/"$guestuser"
fi
exit 0
使上述脚本可执行:
sudo chmod 755 /etc/gdm3/PostLogin/Default /etc/gdm3/PostSession/Default
gdm3 不允许无密码登录,因此请为这个新的访客用户帐户设置密码。对于那些不知道如何操作的人,请看这里:
https://people.gnome.org/~shaunm/mobile-mallard/gnome-help/user-addguest.html
注意:我建议不要选中“登录时不询问密码”,否则您将始终启动到访客会话,哈哈:)
编辑说明:将临时访客用户名从“guest”编辑为“guestx”,以免与默认的 ubuntu 访客用户名混淆。
###################### 更新由于某种原因,在安装/升级到 Ubuntu 17.10 时,tmpfs 未被删除。预会话似乎有效,建议将以下内容添加到/etc/gdm3/PreSession/Default
文件夹:
sudo nano /etc/gdm3/PreSession/Default
在最后一行之后添加以下行:
guestuser="guestx"
if [[ "$USER" = "$guestuser" ]]; then
rm -rf /tmp/"$guestuser"
fi