Mac OS X:如何在无头机器上运行 GUI 应用程序

Mac OS X:如何在无头机器上运行 GUI 应用程序

有没有办法在未直接登录计算机时运行 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 隧道。远程计算机上的每个帐户都需要一个密码,以阻止用户随意切换,用户可以通过关机、休眠等方式终止您的会话。依赖无线网络可能会终止您的连接,具体取决于设置方式。其他内容可能超出了这个问题的范围。:)

答案4

当然:

$ ssh -X myuser@mypc
$ run_something

我不知道这在 OS X 上是否可行,因为我是 Linux 用户,但可以尝试一下。另外,如果你要在 LAN(快速连接)之外执行此操作,请尝试无机器

鉴于这个问题实际上与系统管理员无关,我担心这个问题将被关闭......但愿不会。

哦,我相信 Mac 上有几款不错的 VNC 应用程序,所以这是另一种选择。

另外,看看动态域名系统如果您有一个动态 IP 并需要通过互联网访问。

相关内容