
我正在研究使用 Ansible 自動安裝 macOS 應用程式。我透過將 .app 資料夾從 .dmg 映像複製到 /Applications/ 目錄來安裝該應用程式。
完成此操作後,我嘗試使用以下命令透過 SSH 啟動應用程式:
sudo -u buildworker open -a /Applications/Name.app
但是,我收到以下錯誤訊息:
由於意外原因,應用程式 /Applications/Name.app 無法打開,錯誤=錯誤域=RBSRequestErrorDomain 代碼=5“啟動失敗。”
奇怪的是,如果我登入機器的 GUI 並手動啟動該應用程式一次,隨後嘗試透過 SSH 啟動它就可以完美地工作。
以前有人遇到類似的問題嗎?有沒有辦法「預初始化」應用程序,以便可以透過 SSH 啟動它,而無需手動首次啟動 GUI?
作業系統:macOS 蒙特利 (12.6.7)
- 該應用程式不在 com.apple.quarantine 中
- 我禁用了網守應用程式
- 該應用程式已針對 macOS 進行完全簽名
答案1
您是否嘗試使用 X11 轉送透過 SSH 以「buildworker」使用者身分直接登入?
您需要在兩台伺服器上啟用 X11 轉送(https://manpages.debian.org/bullseye/openssh-server/sshd_config.5.en.html#X11Forwarding~2)和客戶端(“-X”cli 選項)。