URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 5547
[ Назад ]

Исходное сообщение
"SHELL (unix) - небольшой сценарий"

Отправлено insidex , 05-Июл-06 00:24 
Здраствуйте, помогите пожалуйста разобраться  примером,
пытаюсь через shell сценарий (.sh) в unix обзавестись рутовыми привелегиями:
(текст test.sh):

#!/bin/sh

login su_user
password_su_user
su
password_root

-----------------------

К сожалению данный sh скрипт 'срабатывает' только на первой строчке (ввести логин), остальное почему-то не хочет обрабатываться.
Помогите пожалуйста правильно составить sh сценарий,очень нужно.


Содержание

Сообщения в этом обсуждении
"SHELL (unix) - небольшой сценарий"
Отправлено phpcoder , 05-Июл-06 06:15 
Вы лучше бы задачу без примера объяснили, потому что ваш пример не похож на шелл скрипт ни капли. Вам из шелл скрипта нужно выполнить программу с правами рута что ли? sudo подойдет? Если нет, то можно перенаправлять потоки или использовать expect/empty/etc

"SHELL (unix) - небольшой сценарий"
Отправлено insidex , 05-Июл-06 10:46 
Мне нужно запустить php-скрипт с правами рута, из консоли это делается на ура, вот и подумал, что можно написать небольшой сценарий,который запустит php с данными привелегиями.

Еще как вариант был работать с функцией popen, однако почему-то не прокатывает, на сколько я понимаю из-за того,что в консоли требуется подтверждение пароля вводить.


"SHELL (unix) - небольшой сценарий"
Отправлено ACCA , 06-Июл-06 00:55 
>Мне нужно запустить php-скрипт с правами рута, из консоли это делается на
>ура, вот и подумал, что можно написать небольшой сценарий,который запустит php
>с данными привелегиями.

1. Не нужно запускать php-скрипт с правами рута, это дыра в безопасности.
2. Если позарез нужно выполнить некую программу от рута, можно использовать sudo, разрешив
   web-серверу исполнять эту программу (man sudoers).


"SHELL (unix) - небольшой сценарий"
Отправлено insidex , 07-Июл-06 21:26 
>1. Не нужно запускать php-скрипт с правами рута, это дыра в безопасности.
>
>2. Если позарез нужно выполнить некую программу от рута, можно использовать sudo,
>разрешив
>   web-серверу исполнять эту программу (man sudoers).

Спасибо, так и сделал!