На работе мы используем VNC для запуска графического сеанса на удаленном сервере Linux с клиентских ноутбуков на базе Windows (вздох). У меня есть ноутбук с гораздо более низким разрешением, чем внешний монитор на моем рабочем столе. Таким образом, я хочу иметь возможность изменять размер экрана VNC-сервера время от времени. К сожалению, сервер VNC, работающий на сервере Linux, достаточно древний, чтобы не поддерживать xrandr.
Мой "хитрый план" состоял в том, чтобы запустить скрипт, который убил работающий сервер VNC и запустил новый с другим разрешением. Конечно, я теряю работающие приложения, но это все равно намного меньше набирает текст, чем SSH каждый раз с putty. Конечно, я не могу просто набрать vncserver -kill ...; vncserver ...
в xterm, так как я буду убивать сеанс, содержащий xterm! Поэтому я решил использовать что-то вроде screen -RS vnc_ctl change_vnc.sh
чтобы обойти эту проблему.
К сожалению, если вы сделаете это и войдете в систему с помощью клиента VNC, вы просто получите пустой черный экран. По общему признанию, у этого есть правильное разрешение, но это не очень помогает! Я предполагаю, что это означает, что скрипт vncserver не находит $ {HOME}/. Vnc /xstartup, но я не могу понять, почему он не работает.
Итак, вопросы (наконец):
Любые идеи о том, почему vncserver не может правильно найти мой xstartup и как это исправить?
Или как бы вы обошли эту ситуацию по-другому?