Каково различие между “su - команда” и “su - команда сессии”?

Другое решение могло состоять в том, чтобы полагаться на учетные записи домена, где SIDs управляет домен, а не учетные записи SQL-сервера, где SIDs по умолчанию являются определенными для экземпляра.

3
задан 30 May 2014 в 16:17
3 ответа

Как правило, вы должны предпочесть - команда (-c) вместо - команда сеанса . Вы не должны использовать -c с интерактивными оболочками (возможно, вы хотели - shell / bin / bash ?), Но вы должны использовать его с фоновыми процессами.

- команда сеанса не работает вызовите setsid () для выделения нового сеанса (который, как вы обнаружили, дает возможность продолжать использование управляющего tty, и, таким образом, bash предоставит вам управление процессом в виде интерактивной оболочки). Это означает, что его дочерние элементы могут быть назначены любой группе процессов родительского сеанса, возможно, pg переднего плана сеанса или для предотвращения killpg () или другой классификации на основе идентификатора группы процессов. Он также сохраняет возможность отправлять SIGCONT любому процессу в сеансе, хотя я не уверен, насколько это опасно для злоупотреблений.

1
ответ дан 3 December 2019 в 07:29

Учитывая, что - команда сеанса не находится на странице руководства ни одного крупного дистрибутива, о котором я слышал, скорее всего, это специальная вещь RHEL (google didn ' t также поможет).

-c заставляет su выполнять указанную вами команду, используя любую оболочку, определенную в / etc / passwd для указанного пользователя. Это делает его похожим на sudo , но для любого пользователя, которого вы выбираете и знаете пароль. -c не предоставляет интерактивную оболочку, поэтому все, что требует tty, не будет работать.

0
ответ дан 3 December 2019 в 07:29

Я также обнаружил, что при использовании -c не создается tty:

# su nobody -s /bin/bash -c "echo hi >/dev/tty"
bash: /dev/tty: No such device or address
#
# su nobody -s /bin/bash --session-command="echo hi >/dev/tty"
hi
#
0
ответ дан 3 December 2019 в 07:29

Теги

Похожие вопросы