![如何设置访客登录密码?](https://linux22.com/image/1100936/%E5%A6%82%E4%BD%95%E8%AE%BE%E7%BD%AE%E8%AE%BF%E5%AE%A2%E7%99%BB%E5%BD%95%E5%AF%86%E7%A0%81%EF%BC%9F.png)
我想为访客账户设置密码。我该怎么做?(此问题未在本论坛的类似问题下回答,请参阅下文。)
上次在这个论坛上提出这个问题时,有人建议没有必要为来宾设置密码,因为这相当于设置一个带有密码的新常规帐户。在我看来,这不是一回事。来宾帐户默认是安全的,限制对文件系统的访问,并且具有自我清理功能,而常规帐户则不是。自我清理的意思是它不会留下任何松散的文件、没有互联网历史记录、没有潜在的病毒(我知道,Linux 没有病毒)等,因为这一切都发生在临时空间中。
在某些情况下,保护访客帐户也是不错的选择。例如,如果您住在集体宿舍,有一台公用电脑,您可能想与认识的人自由共享,但又要限制昂贵的互联网访问。并不是每个人都有同样的情况。
上次的一个建议是“打开一个终端...然后输入 passwd 和用户名。所以应该是 passwd guest” 这在我手里不起作用,即使使用 sudo 也是如此。Linux 回复“用户‘guest’不存在” 我做错了什么吗?
如果 Ubuntu 的设计不允许在访客帐户上输入密码,那么本着 Linux 的精神,如果您认为这样做是合理的话,那么让我们寻找一种解决方法。
任何人?
(我是新手,所以请告诉我我哪里幼稚了。)
答案1
来宾帐户是一种创建后注销时销毁的帐户,其功能有限,无需密码即可使用。这就是“来宾帐户”的目的 - 访问受限,注销时自动销毁。它不是设计为使用密码运行的。
您可以创建一个“来宾”帐户,通过创建名为“来宾”的用户并为其设置密码,您可以将其保留为普通用户(而不是来宾用户),然后可能限制他们的访问权限。然后您可以禁用普通的“来宾帐户”。(但是,来宾帐户系统永远不会有密码。)
答案2
上次的一个建议是“打开一个终端...然后输入 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
上面的代码片段表明,在脚本设置来宾环境之前,它会检查是否存在名为客人在系统中。如果发现这样的用户,它会检查该用户是否具有锁定帐户。如果没有锁定帐户,则脚本会出错退出,访客登录会失败。因此,即使您决定创建永久访客用户并为其设置密码,您也会失败,因为没有锁定帐户。
你可以做的是调查脚本以了解在设置和清理中执行的操作。使用密码将访客用户添加到您的系统。编写一个以您喜欢的方式模仿访客帐户脚本的脚本。然后只需使用 /etc/lightdm/lightdm.conf 文件的 session-startup-script 和 session-cleanup-script 部分将您新编写的脚本指定为应为该访客用户运行的脚本。(有关 lightdm.conf 文件的说明,请查看这里)。但请注意,lightdm 有一个错误 (?),因此当您直接从帐户关闭时,会话清理脚本无法运行,因此访客应始终在关闭前注销。