如何添加一个无需密码的访客账户?

有时候我家里有朋友想要使用我的电脑。他们如何能够使用一个访客账户而不需要输入密码呢?

答案已经过时了。 - Caleb Stanford
5个回答

方法一

user@ubuntu:~$ sudo adduser guest
user@ubuntu:~$ sudo passwd -d guest

这将添加一个名为“guest”的用户,然后删除她的密码。您可以通过标准的getty登录提示和图形化登录管理器(如GDM)进行登录。在Ubuntu 10.10上对我有效。
然而,显然这对一些使用Ubuntu的人不起作用。因此:
方法2
  1. 创建一个用户。
  2. 打开 /etc/shadow 文件:gksudo gedit /etc/shadow
  3. 找到以刚刚创建的用户开头的那一行。注意该行有多个由冒号分隔的字段。
  4. 将第二个字段更改为:U6aMy0wojraho。在我的情况下:
  5. guest:$6$m4CpcgBw$i9XLGaUNToClOJ1X5Grug/COUjlkhoPv1:15048:0:99999:7:::

    变成:

     guest:U6aMy0wojraho:15048:0:99999:7:::
    
  6. 保存文件,退出登录,并尝试使用您的新无密码账户。
这种方法的起源是来自Ubuntu livecd。默认用户(ubuntu)不需要登录密码。如果你查看livecd上的/etc/shadow,U6aMy0wojraho是使用的魔法密码的加密形式。我解释这一点是为了强调这不是一个通用的Linux解决方案,而是特定于Ubuntu的东西。

1这可以通过一个简单的命令完成:useradd -m -p U6aMy0wojraho guest - STX_user3581226
...或者对于已有用户,使用echo test-user-0:U6aMy0wojraho | sudo chpasswd -e命令进行修改 来源 - Frank N


1过时的日期为18.04。 - Caleb Stanford

创建一个新用户,没有管理员权限,然后点击: "登录时无需密码"。 这可能解决你的问题,但你可以登录,在你的名字(右上方)选择“访客会话”。

这是我如何使用tmpfs(将RAM用作磁盘空间)创建无密码的访客账户。
# Run these as root or prefix sudo
useradd -c "Guest [click here]" guest    ; # add a user named
passwd guest     ; # just give any password
passwd -d guest  ; # delete the password to make password less login
UserID=$(id -u guest) ; # to set ownership of /home/guest directory
GroupIP=$(id -g guest); # get the group id for home directory permission
usermod -aG audio,plugdev,video,netdev,bluetooth guest ; # give device access (this is for debian)
rm -rf /home/guest    ; # in case there are files/directories
mkdir -pv /home/guest ; # should mount if non empty but make sure it is empty 
echo "tmpfs /home/guest tmpfs rw,size=1024M,nosuid,uid=$UserID,gid=$GroupID 0 0" >> \
/etc/fstab
mount /home/guest

现在您可以每次都使用guest登录而无需密码,并且数据将存储在RAM中,最多可达1GB,在系统关闭时将被删除!

我刚刚找到了this指南(追溯到2010年),该指南使用了guest-session而不是创建一个用户。默认情况下,guest-session具有更高的安全设置,不允许在nautilus上访问文件系统文件,并且所有文件在注销后都会被删除,因为它们存储在/tmp上。

这是上述链接的内容,最初由@Kainalu创建:

版主们 - 我不知道我是在哪里学会的这个,也找不到它,所以我决定在这里发帖。如果这是一个重复的帖子,或者不适合在这里发布,请相应地进行调整。
我是在互联网上学会的。这个教程将帮助您在登录界面上创建一个帐户,该帐户将登录用户菜单中看到的相同的访客会话。这样做的好处是,它将是一个易于访问的访客帐户,同时在注销时不保留任何文件或更改,并提供了更高的安全模型。已确认在10.04-10.10上可以使用,但本指南适用于10.10版本。
1. 在现有管理员帐户下,转到菜单项“系统”->“管理”->“用户和组”。
2. 点击“添加”。此时可能需要提供密码。给您的新用户取任何您喜欢的名称,除了guest之外。帐户不能被称为guest,但visitor很好。不需要对该帐户进行加密。此帐户将成为访客会话的“增强”帐户。
3. 在下一个屏幕上,输入密码,并确保选中“登录时不要求输入密码”的复选框。点击“确定”完成设置。
4. 作为额外的预防措施,在“用户和组”屏幕上,点击“高级设置”,然后在“用户权限”选项卡上取消选中“监视系统日志”。
5. 退出“用户和组”菜单,然后注销并登录到您的新帐户。
6. 在那里,创建一个名为GuestManager的文件夹,在该文件夹中创建一个名为Guestmanager.sh的纯文本文件,并将以下代码放入其中:
代码:
#!/bin/bash

# Launches the guest session
/usr/share/gdm/guest-session/guest-session-launch
# Logs the user when done
/usr/bin/gnome-session-save --logout

7. 保存该文件,然后右键点击它,选择属性,再选择权限选项卡。在该选项卡中,点击“允许将文件作为程序执行”,然后关闭该窗口。
8. 打开菜单项“系统 --> 首选项 --> 启动应用程序”,一旦进入该界面,关闭所有启动应用程序,然后点击添加。填写名称和注释为GustManager,命令输入/home/visitor/GuestManager/GuestManager.sh,其中visitor是您在第2步中选择的账户名称。点击添加,然后关闭。
9. 删除所有小程序和额外的工具栏(可能保留主要的GNOME菜单),并将背景设置为黑色或其他单调的颜色,然后退出登录。由于这个账户只是一个“增强器”,不需要这些工具栏等,因此删除它们可以节省内存和加载时间。
10. 尽情享受吧!

1强制性的“鼓励在回答正文中发布链接内容,以至少防止潜在和不可避免的链接失效”评论。 :) - ThorSummoner
@ThorSummoner 只是为了记录,"必要的"评论在Stack Overflow中更或多少是真实的,那里的惯例是,如果回答中有链接到没有嵌入代码的代码,则会被删除。有人向我解释说,这是因为担心这些代码可能是知识产权。然而,Ubuntu论坛帖子的链接是永久的,内容不会很快消失,所以似乎没有理由因为担心链接的内容会消失而删除这些帖子。我也不会对这样的帖子进行负面评价。如果我不喜欢这个帖子,我会投票删除它。 - karel