我正在运行 Mac OS X 10.7.5。在以前的 MacOS X 版本中,当访客想要使用计算机时,会有一个从模板创建的访客帐户,然后在注销时文件会被销毁。如果我没记错的话,用户也被沙盒化,因此他们无法访问任何其他文件(这可能是错误的)。
无论如何,我在 MacBook Air 上使用 FileVault2。我仍然想让访客访问我们的计算机,但当前的访客模式在以下方面存在不足:
它不以原始分辨率运行。它不是以 1920x1080 运行,而是以更低的分辨率运行。
它不会自动连接到我的 wifi 网络。这意味着我的客人每次登录时都必须重新输入凭据。
它会重新启动然后登录。我意识到这是一种安全措施,以防计算机被盗。
我的第一个问题是:有没有办法修改默认访客体验,以原生视频分辨率运行并记住 Wi-Fi 连接的网络?我对命令行相当熟悉。我过去常常在“/System/Library/User Template/”中编辑模板,以在默认客户机中实现我想要的效果。
如果没有,我的下一个选择是创建自己的“访客”用户。我想使用注销钩子(我在谷歌上搜索到了)。关于如何配置此“访客”帐户有什么建议吗?我有一个问题,那就是哪个组适合分配给这个临时用户。我还想在登录和注销时调用类似的模板行为。是否可以按每个用户调用登录/注销脚本?或者脚本本身是否需要包含此逻辑?(即我需要if [-user 'temp'] blah blah
)。
答案1
尝试一下:创建一个用户 TestGuest。按您想要的方式配置它。创建一个用户访问者。
在您自己的终端窗口中输入“id 访问者”
您将获得类似这样的回报:
uid=504(访客)gid=20(工作人员)groups=20(工作人员)、404(com.apple.sharepoint.group.3)、402(com.apple.sharepoint.group.1)、12(所有人)、61(本地帐户)、403(com.apple.sharepoint.group.2)、405(com.apple.sharepoint.group.4)
您可能需要将其与来宾帐户进行比较,以了解与访客相比,来宾通常缺少哪些组。
检查常规来宾帐户中所有文件的所有者和组。查看这些文件是否属于来宾以外的任何文件以及来宾所属的组。
作为管理员,您可以更改 TestGuest 和 Visitor 所属的组。
创建脚本。此脚本检查访问者是否已登录,如果没有登录,则执行以下操作:
答:TestGuest 和访问者之间进行 rsync。
B:更改访问者的所有权和群组以匹配真实访问者。
C:放置一个标志文件,指示新访客安装
一旦您满意地运行此脚本,请添加测试以查看访问者是否已登录。如果访问者已登录,它会检查是否存在标志文件。如果该文件存在,则将其删除,然后脚本退出。如果访问者未登录,它会检查标志文件,如果执行 rsync,则添加标志文件,然后退出。如果标志文件存在,则退出。
全新创建访客帐户 全新标记到位 访客登录 全新标记移除 访客注销 无标记,因此重新创建访客帐户。
这个想法是,标志会告诉脚本自访问者上次登录或退出以来它是否已经运行过。
您可以使用“last | grep console”检查登录情况,它将显示所有登录的窗口用户。查找“仍然登录”
您可以通过启用多个登录来进行测试。
在访问者登录和退出后手动运行脚本后,创建一个以 root 身份运行的 cron 作业,每 2 分钟运行一次。