Введение
Зависание графической оболочки, сбои дисплейного менеджера или необходимость выполнения изолированных сервисных процедур в чистой текстовой среде — стандартные ситуации в практике системного инженера. В подобных случаях ключевым инструментом восстановления контроля над хостом становится прямое переключение между виртуальными консолями (Virtual Terminal). В данном руководстве подробно разобрано управление сессиями TTY с помощью системной утилиты chvt, а также применение сопутствующих средств администрирования текстовых экранов в Ubuntu.
Диагностика текущей сессии и определение активного терминала
Утилита tty выводит имя файла устройства терминала, на который направлен текущий стандартный поток ввода.
Сообщение not a tty в выводе свидетельствует о том, что команда выполняется в неинтерактивной среде (например, в автоматизированном пайплайне или скрипте), где отсутствует прямое подключение к виртуальной консоли (tty) или псевдотерминалу (pts).

Команда who предназначена для инспекции активных сеансов и отображения учетных записей пользователей, зарегистрированных в системе вместе с их терминальными линиями.
Отсутствие строк в ответе указывает на то, что в настоящий момент интерактивные сеансы в операционной системе не зарегистрированы.

Для считывания индекса текущей консоли используется инструмент fgconsole. Проверяем его доступность в системе и при необходимости выполняем инсталляцию пакета kbd.

Инструмент fgconsole возвращает порядковый номер виртуального терминала, который выводится на физический монитор в текущий момент времени.
Значение 1 подтверждает, что активным дисплейным экраном выступает первая консоль (tty1).

Навигация между консолями TTY с помощью утилиты chvt
Перед манипуляциями с экранами удостоверимся в наличии бинарного файла chvt и при необходимости инсталлируем пакет kbd.
Обнаруженный путь /usr/bin/chvt подтверждает готовность инструмента к работе в системе.

Команда chvt осуществляет принудительное переключение видеовывода на указанный терминал TTY.
Директива sudo chvt 1 задействует привилегии суперпользователя и переводит фокус вывода на экран первой виртуальной консоли (tty1).
При корректной отработке операция завершается без текстовых сообщений, мгновенно меняя активный экран.

Команда sudo chvt 2 перенаправляет текущий видеовывод на виртуальную консоль номер 2 (tty2).
В современных редакциях Ubuntu экран tty1 или tty2 обычно закрепляется за графической оболочкой (Xorg/Wayland) либо дисплейным менеджером, поэтому оперативное переключение между ними незаменимо при изоляции сбоев GUI.
«Тихий» возврат шелла подтверждает бесперебойное выполнение переключения.

Изолированный запуск команд на выделенной консоли (openvt)
Инструмент openvt позволяет инициализировать новую программу или командный интерпретатор на свободной либо конкретно заданной виртуальной консоли.
Команда sudo openvt -c 3 -- ls -la /var/log резервирует третью консоль (tty3) и запускает на ней формирование подробного листинга каталога /var/log в фоновом режиме.
При отсутствии ошибок консоль не возвращает диагностических сообщений, штатно делегируя команду назначенному терминалу.

Для перехода к запущенному процессу и изучения результатов выполнения вызываем sudo chvt 3.
Данная команда активирует видеовыход консоли tty3, позволяя просмотреть вывод завершившейся операции.
Отсутствие служебных сообщений об ошибках свидетельствует об успешном переносе фокуса экрана.

Деаллокация неиспользуемых консолей и освобождение памяти (deallocvt)
Утилита deallocvt дерегистрирует неактивные терминалы и возвращает занятые ими структуры памяти ядру операционной системы.
Команда sudo deallocvt 3 освобождает ресурсы, которые были выделены под виртуальную консоль tty3.
Завершение команды без текстовых предупреждений свидетельствует об успешной выгрузке структур терминала из ядра.

Повторно запрашиваем номер текущего активного экрана через fgconsole.
Возвращенная цифра 3 демонстрирует архитектурную особенность подсистемы: выгрузка буферов консоли не влечет автоматического переключения фокуса, и текущий сеанс продолжает указывать на tty3 до явной смены экрана пользователем.

Мы изучили комплексный подход к управлению виртуальными консолями в Ubuntu с использованием утилиты chvt, запуска процессов через openvt и очистки ядерных структур с помощью deallocvt. Владение этими инструментами позволяет быстро локализовать неисправности графической подсистемы и восстановить контроль над сервером или рабочей станцией.