Мне не нужно было переустанавливать XQuartz, но, основываясь на ответе Мэтта Виджаи, я придумал уточнение.
sudo vi /etc/ssh/ssh_config
(Это конфигурация клиента ssh, а не sshd_config) Host *
добавьте (или добавьте, где это необходимо для каждого хоста) XAuthLocation /usr/X11/bin/xauth
(Местоположение xauth изменилось в Сьерре) li> ServerAliveInterval 60
(Пингует сервер каждые 60 секунд, чтобы поддерживать соединение ssh) li> ForwardX11Timeout 596h
( Разрешает ненадежные соединения X11 за пределами 20-минутного значения по умолчанию) li> ul> Нет необходимости перезапускать ssh, кроме, конечно, существующих клиентских соединений ssh.
Похоже, что -Y (доверенный X11) предпочтительнее, чем ненадежный. Если вы переключитесь на доверенный, строку ForwardX11Timeout, вероятно, можно удалить.
Строка ServerAliveInterval также является необязательным предпочтением.
Также возможно внести эти изменения в ~/.ssh/config
(файл конфигурации пользователя), но разрешения должны быть правильными.
РЕДАКТИРОВАТЬ: я удалил ForwardX11 и ForwardX11Trusted. Они не нужны, и ForwardX11 менее безопасен и вызывает проблемы для git (или других инструментов, использующих ssh).
Вы найдете довольно приличный ответ здесь . Правила для списков применимы и к наборам.
Ох, я должен был это сделать.
@CollectionOfElements(targetElement = String.class)