Назад | Перейти на главную страницу

Диалоговое окно «Неустранимая ошибка PuTTY» - можно ли его подавить?

Почти ежедневно я возобновляю работу своего компьютера, чтобы (правильно) найти полдюжины или более мертвых сессий PuTTY, оставшихся после предыдущего дня администрирования. Обычно мой стек легче очистить, закрыв все неактивные терминалы и открыв новые терминалы PuTTY по мере необходимости.

Однако из-за модального диалогового окна «Неустранимая ошибка PuTTY» я не могу массово закрыть группу с панели задач Windows. Мне нужно вручную просмотреть каждый из них, закрыть диалоговое окно, а затем закрыть окно.

Есть ли опция PuTTY для отключения этого диалога? Строка заголовка добавляет к завершенным сеансам «(Неактивно)», что для меня достаточно. Бонусом по-прежнему будет сообщение «Вы уверены, что хотите закрыть эту сессию?» диалог, если возможно.

Боюсь, вы не можете подавить эти диалоги прямо в Putty. Однако вы можете обойти проблему, используя версию putty (plink) для командной строки вместо оконной версии.

Другой вариант - загрузить исходный код и либо просто подавить сообщение, либо добавить поддержку нового / тихого переключателя, который сделает это (в конце концов, putty является открытым исходным кодом).

Изменить: если вы откроете файл «WINDOWS \ WIDNOWS.C» и закомментируете строку 1111 (по крайней мере, в моей версии), это сообщение об ошибке будет подавлено (не очень элегантно, но быстро и легко). Вот результат:

/*
 * Print a message box and close the connection.
 */
void connection_fatal(void *frontend, char *fmt, ...)
{
    va_list ap;
    char *stuff, morestuff[100];

    va_start(ap, fmt);
    stuff = dupvprintf(fmt, ap);
    va_end(ap);
    sprintf(morestuff, "%.70s Fatal Error", appname);
    //MessageBox(hwnd, stuff, morestuff, MB_ICONERROR | MB_OK);
    sfree(stuff);

    if (conf_get_int(conf, CONF_close_on_exit) == FORCE_ON)
    PostQuitMessage(1);
    else {
    must_close_session = TRUE;
    }
}

Я бы вышел перед домой вечером, а не на следующее утро.

Чтобы избежать этой проблемы, я использую сервер Linux в качестве точки перехода. Вот я бегу screen или tmux и все удаленные подключения, которые я создаю из screen или tmux. Если на сервере есть byobu пакет, я предпочитаю начать screen или tmux из byobu.

Нет, это сервер, убивающий ваше соединение, потому что вы бездействовали. Вы можете предотвратить это, отправив сообщения поддержки активности, возможно, один раз в час (3600 секунд).