Sophie Alpert Asked: 2009-05-01 13:44:36 +0800 CST2009-05-01 13:44:36 +0800 CST 2009-05-01 13:44:36 +0800 CST Mac OS X:如何在无头机器上运行 GUI 应用程序 772 没有直接登录到计算机时,有没有办法运行 GUI 应用程序,如 iTunes?因此,我希望能够启动一个程序,然后注销,或者(最好)在没有用户登录到控制台本身时直接从 SSH 会话运行 GUI 程序。 (请注意,我不是特别在寻找音乐播放器,而是在寻找运行 GUI 程序的一般方法。) mac-osx mac ssh headless 6 个回答 Voted setatakahashi 2009-05-01T16:40:14+08:002009-05-01T16:40:14+08:00 您需要设置VNC 服务器并使用客户端连接或购买Apple Remote Desktop。 Clint 2009-05-01T13:56:30+08:002009-05-01T13:56:30+08:00 这不适用于 GUI 应用程序。有一些命令行应用程序可以播放音乐等,但不是 iTunes。 如果您有一台无头机器并且您可以使用 VNC 或屏幕共享来登录它,那么您可以使用 open /Applications/iTunes.app 在当前用户 GUI 中从 ssh 启动应用程序,而无需登录到 GUI . 但是,您需要正确的权限。 Bahi 2009-05-11T22:01:55+08:002009-05-11T22:01:55+08:00 您可以将上述 setatakahashi 的答案与 OS X 的快速用户切换结合起来,因为您提到您已准备好首先登录您想要控制的机器。 登录到您要控制的机器。启动像OSXVNC这样的 VNC 服务器并将端口设置为 5902 或您选择的端口,而不是所有 Leopard Mac 中包含的 VNC 服务器使用的默认 5900。(并且可以由任何管理员用户启用:共享首选项窗格=>屏幕共享=>允许 VNC 客户端连接。)设置密码。 启用快速用户切换(Accounts pref pane=> Login options),然后从菜单栏中的 FUS 图标中选择“Login Window”。然后计算机将显示 Mac OS X 的登录窗口,并允许其他人正常登录和退出,而不会中断您的会话。(如果机器的首选项设置为显示空的名称和密码字段,那么在有人登录并单击 FUS 图标之前,您的活动、隐藏会话可能不会被注意到。)您的控制台会话保持活动状态,您的 VNC 服务器也是如此。您现在可以使用指向远程计算机上正确端口的常规 VNC 客户端来控制该会话。如果您的控制器也是 Mac,JollysFastVNC是一个不错的快速选择。 有许多安全注意事项,首先是强烈建议使用 SSH 隧道。远程机器上的每个帐户都需要一个密码来阻止用户随意切换,用户可以通过关闭、睡眠等方式终止您的会话。依赖无线网络可能会终止您的连接,具体取决于设置方式。其他东西可能不在这个问题的范围内。:) Chealion 2009-05-01T15:23:26+08:002009-05-01T15:23:26+08:00 计算机是真正无头运行的(因为在 WindowServer 中从未启动 - 通常是 Xserves)还是只是一台没有用户登录的计算机? 最简洁的答案是不。Mac OS X 10.5 将特别禁止应用程序在登录窗口之上打开和运行。(当安装人员咳嗽时,这是一个相当烦人的安全漏洞Flash咳嗽会在登录窗口上打开一个 Finder 窗口,让任何人通过 root 访问) Ivan 2009-05-01T14:01:28+08:002009-05-01T14:01:28+08:00 当然: $ ssh -X myuser@mypc $ run_something 我不知道这是否适用于 OS X,因为我是 Linux 用户,但试一试。此外,如果您要在 LAN(快速连接)之外执行此操作,请尝试NoMachine。 恐怕这个问题会被关闭,因为它不是真正的系统管理员相关......希望不是。 哦,我敢肯定有几个适用于 Mac 的优秀 VNC 应用程序,所以这是另一种选择。 此外,如果您有动态 IP 并需要通过 Internet 访问,请查看DynDNS 。 Steven Behnke 2009-05-01T14:54:42+08:002009-05-01T14:54:42+08:00 您也许可以使用 open 命令行命令打开应用程序。 打开 /Applications/iTunes.app 您可能还想研究 Automater 或 AppleScript 来执行这些操作。
您需要设置VNC 服务器并使用客户端连接或购买Apple Remote Desktop。
这不适用于 GUI 应用程序。有一些命令行应用程序可以播放音乐等,但不是 iTunes。
如果您有一台无头机器并且您可以使用 VNC 或屏幕共享来登录它,那么您可以使用 open /Applications/iTunes.app 在当前用户 GUI 中从 ssh 启动应用程序,而无需登录到 GUI . 但是,您需要正确的权限。
您可以将上述 setatakahashi 的答案与 OS X 的快速用户切换结合起来,因为您提到您已准备好首先登录您想要控制的机器。
登录到您要控制的机器。启动像OSXVNC这样的 VNC 服务器并将端口设置为 5902 或您选择的端口,而不是所有 Leopard Mac 中包含的 VNC 服务器使用的默认 5900。(并且可以由任何管理员用户启用:共享首选项窗格=>屏幕共享=>允许 VNC 客户端连接。)设置密码。
启用快速用户切换(Accounts pref pane=> Login options),然后从菜单栏中的 FUS 图标中选择“Login Window”。然后计算机将显示 Mac OS X 的登录窗口,并允许其他人正常登录和退出,而不会中断您的会话。(如果机器的首选项设置为显示空的名称和密码字段,那么在有人登录并单击 FUS 图标之前,您的活动、隐藏会话可能不会被注意到。)您的控制台会话保持活动状态,您的 VNC 服务器也是如此。您现在可以使用指向远程计算机上正确端口的常规 VNC 客户端来控制该会话。如果您的控制器也是 Mac,JollysFastVNC是一个不错的快速选择。
有许多安全注意事项,首先是强烈建议使用 SSH 隧道。远程机器上的每个帐户都需要一个密码来阻止用户随意切换,用户可以通过关闭、睡眠等方式终止您的会话。依赖无线网络可能会终止您的连接,具体取决于设置方式。其他东西可能不在这个问题的范围内。:)
计算机是真正无头运行的(因为在 WindowServer 中从未启动 - 通常是 Xserves)还是只是一台没有用户登录的计算机?
最简洁的答案是不。Mac OS X 10.5 将特别禁止应用程序在登录窗口之上打开和运行。(当安装人员咳嗽时,这是一个相当烦人的安全漏洞Flash咳嗽会在登录窗口上打开一个 Finder 窗口,让任何人通过 root 访问)
当然:
我不知道这是否适用于 OS X,因为我是 Linux 用户,但试一试。此外,如果您要在 LAN(快速连接)之外执行此操作,请尝试NoMachine。
恐怕这个问题会被关闭,因为它不是真正的系统管理员相关......希望不是。
哦,我敢肯定有几个适用于 Mac 的优秀 VNC 应用程序,所以这是另一种选择。
此外,如果您有动态 IP 并需要通过 Internet 访问,请查看DynDNS 。
您也许可以使用 open 命令行命令打开应用程序。
打开 /Applications/iTunes.app
您可能还想研究 Automater 或 AppleScript 来执行这些操作。