2

Обычно я захожу в Linux с моего ноутбука Windows, используя PuTTY, и запускаю там экран. Когда мои корпоративные начальники решили обновить мой ноутбук до Windows 7, мои сессии PuTTY были заморожены. Обычно я прекращаю сеанс PuTTY, а затем либо снова присоединяю сеанс экрана (если он отсоединен), либо выдаю «-d -r», если сеанс экрана не отключался, когда мой сеанс PuTTY завис

Моя проблема в том, что у меня есть сеанс экрана, который поначалу отказывался отсоединяться. Я бы использовал:

screen -d -r 6313.sessionName

но команда просто висит там.

Я обнаружил, что в каталоге /var /run /screen // находятся "файлы", соответствующие каждому из моих сеансов экрана. Я заметил, что у упрямого было 700 разрешений на это, в то время как у других (которые были отделены) было 600 разрешений.

Поэтому я изменил разрешения для этого файла на 600. Экран теперь отображает его как "отключенный". Однако, когда я пытаюсь присоединить к нему команду, она снова просто висит там.

С помощью

ps aux | grep 6313

показывает состояние процесса как "Ss", что означает, что он находится в состоянии прерывистого сна. Это ничем не отличается от любого другого сеанса отдельного экрана, на котором отображается тот же статус процесса.

Я в растерянности относительно того, как восстановить эту сессию. Какие-либо предложения?

2 ответа2

0

Когда я использую screen команду, я обычно открываю сокет так:

$ screen -S <SOCKET_NAME>

и когда я хочу присоединить или подключить, я использую:

$ screen -x <SOCKET_NAME>
-1

Чтобы отменить сеанс экрана, вы должны использовать Ctrl+A+D. Затем, чтобы снова присоединить сеанс, используйте screen -r <pid> . Если вы хотите подключиться к сеансу экрана, который используется, то вы должны использовать screen -dr <pid> чтобы сначала отсоединить, а затем снова присоединить сеанс экрана.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .