Есть ли способ запустить приложение с графическим интерфейсом, такое как iTunes, без прямого входа в систему на компьютере? Таким образом, я хотел бы иметь возможность запускать программу, а затем выходить из нее или (предпочтительно) запускать программу с графическим интерфейсом непосредственно из сеанса SSH, когда ни один пользователь не вошел в саму консоль.
(Обратите внимание, что я ищу не музыкальный проигрыватель в частности, а общий метод запуска программ с графическим интерфейсом.)
Вам необходимо настроить VNC сервер и подключитесь с помощью клиента или купите Удаленный рабочий стол Apple.
Вы можете объединить приведенный выше ответ setatakahashi с быстрым переключением пользователей OS X, поскольку вы упомянули, что были готовы сначала войти в систему, которой хотите управлять.
Войдите в систему, которой хотите управлять. Запустите сервер VNC, например OSXVNC и установите для порта значение 5902 или другое значение по вашему выбору, отличное от 5900 по умолчанию, используемого сервером VNC, включенным во все компьютеры Mac Leopard. (И который может быть включен любым пользователем с правами администратора: Pref pane Sharing => Screen Sharing => Allow VNC client to connect.) Установите пароль.
Включите быстрое переключение пользователей (панель «Учетные записи» => Параметры входа), а затем с помощью значка FUS в строке меню выберите «Окно входа». Затем компьютер представит окно входа в Mac OS X и позволит другим пользователям входить и выходить в обычном режиме, не прерывая ваш сеанс. (Если в настройках машины задано отображение пустых полей имени и пароля, ваш активный скрытый сеанс, скорее всего, останется незамеченным, пока кто-нибудь не войдет в систему и не щелкнет значок FUS.) Сеанс консоли остается активным, как и ваш VNC-сервер. Теперь вы можете управлять этим сеансом, используя обычный клиент VNC, указывающий на правильный порт на удаленном компьютере. JollysFastVNC - хороший и быстрый выбор, если ваш контроллер тоже Mac.
Существует множество соображений безопасности, начиная с настоятельной рекомендации использовать туннель SSH. Каждой учетной записи на удаленной машине нужен пароль, чтобы пользователи не могли переключаться по своей воле, пользователи могут убить ваш сеанс, выключив, спящий и т. Д. Использование беспроводной сети может убить ваше соединение, в зависимости от того, как все настроено. Остальное, вероятно, выходит за рамки этого вопроса. :)
Это не работает для приложений с графическим интерфейсом. Есть некоторые приложения командной строки, которые воспроизводят музыку и т. Д., Но не iTunes.
Если у вас есть безголовый компьютер, и вы можете нажать на него с помощью VNC или Screen Sharing для входа в систему, тогда вы можете использовать open /Applications/iTunes.app для запуска приложения из ssh в текущем пользовательском графическом интерфейсе без входа в графический интерфейс. . Однако вам нужны правильные разрешения.
Действительно ли компьютер работает без головы (поскольку WindowServer никогда не запускается - обычно Xserve) или это просто компьютер, в который не вошел пользователь?
Краткий ответ: нет. Mac OS X 10.5 специально запрещает приложениям открываться и работать поверх окна входа в систему. (Что было довольно неприятной дырой в безопасности, когда установщики кашель вспышка кашель откроет окно Finder над окном входа в систему, предоставив любому, кто идет с root-доступом)
Конечно:
$ ssh -X myuser@mypc
$ run_something
Я не знаю, работает ли это на OS X, поскольку я пользователь Linux, но попробуйте. Кроме того, если вы собираетесь сделать это за пределами локальной сети (быстрое соединение), попробуйте NoMachine.
Боюсь, этот вопрос будет закрыт, учитывая, что это не совсем связано с системным администратором ... будем надеяться, что нет.
О, и я уверен, что есть несколько хороших приложений VNC для Mac, так что это еще один вариант.
Также взгляните на DynDNS на случай, если у вас динамический IP и вам нужен доступ через Интернет.
Возможно, вы сможете открыть приложение с помощью команды командной строки open.
откройте /Applications/iTunes.app
Вы также можете изучить Automater или AppleScript, чтобы выполнять такие действия.