如何为访客登录设置密码?

我想为来宾帐户设置密码。 我怎样才能做到这一点? (这个问题在本论坛的类似问题中没有得到解答,见下文。)

最后一次在此论坛上询问时,建议没有理由在guest上设置密码,因为它相当于设置一个带密码的新常规帐户。 在我看来,这不是一回事。 默认情况下,来宾帐户是安全的,限制对文件系统的访问,并且是自我清理的,而常规帐户则不是。 通过自我清理,我的意思是它不会留下任何松散的文件,没有互联网历史,没有潜在的病毒(我知道,Linux没有),等等,因为它都发生在临时空间。

在某些情况下,也可以保护访客帐户。 例如,如果您住在一个团体住宅并拥有一台普通计算机,您可能希望与您认识的人自由分享,但限制昂贵的互联网访问。 不是每个人都有同样的情况。

上次提出的一个建议是“打开一个终端……然后键入passwd和用户名。所以它应该是passwd guest”这在我手中无效,即使是sudo也是如此。 Linux回复“用户’访客’不存在”我做错了什么?

如果Ubuntu不是设计为允许访客帐户上的密码那么,在Linux的精神,如果你认为这是一个合理的事情,让我们寻找一个解决方法。

任何人?

(我是新手,所以让我知道我天真的地方。)

来宾帐户作为已创建然后销毁的注销帐户存在,该帐户受限于其可以执行和存在而没有密码。 这就是“访客帐户”的目的 – 有限访问,自动销毁注销。 它不是为密码运行而设计的。

您可以创建一个“访客”帐户,通过使用户名为“guest”并在其上设置密码,然后可能限制其访问权限,您可以将其保留为普通用户(而不是访客用户)。 然后,您可以禁用正常的“来宾帐户”。 (但是,来宾帐户系统永远不会有密码。)

上次提出的一个建议是“打开一个终端……然后键入passwd和用户名。所以它应该是passwd guest”这在我手中无效,即使是sudo也是如此。 Linux回复“用户’访客’不存在”我做错了什么?

这是因为访客用户仅在使用访客帐户时才出现。 它以guest身份登录时创建,并在您注销时被删除。

正如其他人所说,访客帐户不能轻易地受密码保护。 要查看原因,只需打开/usr/sbin/guest-account脚本即可。 这是用于在登录/注销时设置或删除来宾帐户的脚本。 它包含以下代码:

 if PWSTAT=`passwd -S "$USER"` 2>/dev/null; then if [ "`echo \"$PWSTAT\" | cut -f2 -d\ `" != "L" ]; then echo "User account $USER already exists and is not locked" exit 1 fi 

上面的代码段显示在脚本设置guest虚拟机环境之前,它会检查系统中是否有名为guest的用户。 如果找到这样的用户,则检查它是否具有锁定的帐户。 如果它没有锁定帐户,则脚本将退出并显示错误,并且访客登录将失败。 因此,即使您决定建立永久访客用户并为他设置密码,您也会失败,因为它没有锁定的帐户。

您可以做的是调查脚本以了解在设置和清理中完成的操作。 使用密码将guest用户添加到系统。 编写一个脚本,以您喜欢的方式模仿来宾帐户脚本。 然后使用/etc/lightdm/lightdm.conf文件的session-startup-script和session-cleanup-script部分将新编写的脚本指定为应该为此guest用户运行的脚本。 (有关lightdm.conf文件的说明,请参阅此处 )。 但请注意,lightdm有一个错误(?),因此当您从帐户直接关闭时,会话清理脚本无法运行,因此guest虚拟机应始终在关闭之前注销。