screenне сбрасывает переменную окружения; он удален самой Linux.
В большинстве систем /usr/bin/screenисполняемый файл устанавливается с битом setgid для utmpгруппы, чтобы иметь возможность изменять utmpбазу данных. Он также использует setgid для управления доступом к каталогу сокетов ( /var/run/screen/).
В Linux, когда запускается программа setuid (или setgid ), она не получает определенные переменные среды (включая LD_LIBRARY_PATHнесколько других LD_*переменных и HOSTALIASES), чтобы уменьшить возможные точки атаки: в противном случае вы можете написать небольшую библиотеку и трюк suили sudoтаким образом вызывая ваши «улучшенные» функции.
Вы можете удалить бит setgidscreen , но вам придется сделать каталог сокетов полностью доступным для всех (режим 0777). Это не должно быть угрозой безопасности, так как screenтакже проверяет сам UID атакующего.
Однако вы не должны делать utmpбазу данных доступной для записи.