有没有办法在未直接登录计算机时运行 GUI 应用程序(如 iTunes)?因此,我希望能够在没有用户登录到控制台本身时启动程序,然后注销,或者(最好)直接从 SSH 会话运行 GUI 程序。
(请注意,我并不是在寻找特定的音乐播放器,而是在寻找运行 GUI 程序的通用方法。)
答案1
您需要设置一个VNC 服务器并使用客户端连接或购买Apple 远程桌面。
答案2
这不适用于 GUI 应用程序。有些命令行应用程序可以播放音乐等,但 iTunes 不行。
如果您有一台无头的机器,并且可以使用 VNC 或屏幕共享登录,那么您可以使用 open /Applications/iTunes.app 从当前用户 GUI 中的 ssh 启动应用程序,而无需登录 GUI。但是您需要正确的权限。
答案3
您可以将上述 setatakahashi 的回答与 OS X 的快速用户切换结合起来,因为您提到您准备首先登录到您想要控制的机器。
登录到您想要控制的机器。启动 VNC 服务器,例如OSXVNC并将端口设置为 5902 或您选择的其他端口,而不是所有 Leopard Mac 中包含的 VNC 服务器使用的默认端口 5900。(任何管理员用户都可以启用该端口:共享首选项窗格 => 屏幕共享 => 允许 VNC 客户端连接。)设置密码。
启用快速用户切换(帐户首选项窗格 => 登录选项),然后从菜单栏中的 FUS 图标中选择“登录窗口”。然后,计算机将显示 Mac OS X 的登录窗口,并允许其他人正常登录和退出,而不会中断您的会话。(如果计算机的首选项设置为显示空的名称和密码字段,您的活动隐藏会话可能会被忽视,直到有人登录并单击 FUS 图标。)您的控制台会话保持活动状态,您的 VNC 服务器也是如此。现在,您可以使用指向远程计算机上正确端口的常规 VNC 客户端来控制该会话。JollysFastVNC如果您的控制器也是 Mac,那么这是一个不错的、快速的选择。
有许多安全注意事项,首先强烈建议使用 SSH 隧道。远程计算机上的每个帐户都需要一个密码,以阻止用户随意切换,用户可以通过关机、休眠等方式终止您的会话。依赖无线网络可能会终止您的连接,具体取决于设置方式。其他内容可能超出了这个问题的范围。:)