У меня интересная ситуация, когда учетная запись пользователя была временно удалена (документы не были вовремя обновлены). Однако, благодаря магии «экрана», его процессы все еще работают.
Я хотел бы иметь возможность подключиться к этим старым сеансам экрана и сохранить некоторые данные. Это возможно? У меня есть полномочия sudo, но я не уверен, как применять их в этом случае.
Обычно я бы сделал:
chmod 777 `tty`
sudo su <user>
screen -x
но пользователь больше не существует в этом случае. Наивное подключение старого идентификатора пользователя не сработало (не то, чтобы я действительно этого ожидал).
Это RedHat Enteprise Linux 5: (2.6.18-53.1.14.el5)
$()
вместо спины.Ответы:
Вы не можете просто временно создать учетную запись пользователя снова, используя тот же UID?
источник
Хорошо, именно поэтому пользователи должны быть отключены, а не удалены. Существуют встроенные опции для passwd для такого рода вещей (и настройки существуют в каждом программном обеспечении централизованного управления пользователями, о котором я знаю).
Но ты здесь не для того, чтобы орать.
Файлы пользователя все еще существуют или были удалены с учетной записью? Экран использует файлы блокировки для восстановления соединения, и если они исчезли, я, честно говоря, не уверен, как восстановить сеансы.
Попробуйте предложение Кейрана о воссоздании UID, если это возможно. Иногда это неосуществимо, особенно в централизованной аутентификации, где идентификаторы хэшируются из другой пользовательской информации, но если вы можете, это было бы здорово.
Предполагая, что вы не можете, вам нужно найти способ захватить терминал. Я собираюсь догадаться, что TTYSnoop уже не настроен в вашей системе. В этом случае это станет волосатым.
Предполагая, что ваши сеансы экрана выдают вам pts / # терминал, как у меня, может (МОЖЕТ) быть шанс. pt обозначает псевдотерминал, и это своего рода клиент / сервер. Есть pt slave, который является терминалом, который вы вводите, и есть ptmaster, который получает ввод. Существует много рабов (/ dev / pts / *) для одного мастера pt (/ dev / ptmx). Со страницы руководства на ptmx:
Может (возможно!) Быть возможно предположить идентичность терминалов, которые вы хотите предположить (о, черт, может, просто сказать, перехват на этом этапе), используя пользовательскую написанную программу, которая удобно пропускает определенные меры безопасности, такие как предварительно существование файловых дескрипторов, которые вы хотите.
Возможно, на данный момент гораздо меньше работы, чтобы просто признать поражение и потерять данные.
источник
Вы пытались, как пользователь root, подключиться, указав имя сокета рабочего экрана для экрана? (Я не пробовал это лично.)
источник