The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"RE: Как root-ом запустить демон от кого-то другого"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"RE: Как root-ом запустить демон от кого-то другого"
Сообщение от aleks emailИскать по авторуВ закладки on 20-Ноя-02, 22:32  (MSK)
У меня при старте машины с FreeBSD скриптом лежащим в /usr/local/etc/rc.d/ стартуют кое какие программы. Стартуют они от пользователя root, а вот хотелось бы от какого-либо другого. Не подскажите ли как это сделать?
  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "RE: Как root-ом запустить демон от кого-то другого"
Сообщение от AndreyCh Искать по авторуВ закладки on 21-Ноя-02, 06:13  (MSK)
>У меня при старте машины с FreeBSD скриптом лежащим в /usr/local/etc/rc.d/ стартуют
>кое какие программы. Стартуют они от пользователя root, а вот хотелось
>бы от какого-либо другого. Не подскажите ли как это сделать?

Можно su перйти к пользователю и запустить, а можно поставить sudo и запустить:
%sudo -u vanya cat /etc/hosts
Можно в крайнем случае и crontab'ом воспользоваться!

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "RE: Как root-ом запустить демон от кого-то другого"
Сообщение от aleks Искать по авторуВ закладки on 21-Ноя-02, 07:42  (MSK)
>%sudo -u vanya cat /etc/hosts
А что такое sudo? У меня FreeBSD 4.5 - ни манов ни команды такой нет.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "RE: Как root-ом запустить демон от кого-то другого"
Сообщение от немец Искать по авторуВ закладки on 21-Ноя-02, 07:46  (MSK)
>>%sudo -u vanya cat /etc/hosts
>А что такое sudo? У меня FreeBSD 4.5 - ни манов ни
>команды такой нет.

man su

  Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "RE: Как root-ом запустить демон от кого-то другого"
Сообщение от AndreyCh Искать по авторуВ закладки on 21-Ноя-02, 11:02  (MSK)
>>>%sudo -u vanya cat /etc/hosts
>>А что такое sudo? У меня FreeBSD 4.5 - ни манов ни
>>команды такой нет.
>
>man su

http://www.sudo.ws/sudo/

  Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "RE: Как root-ом запустить демон от кого-то другого"
Сообщение от немец Искать по авторуВ закладки on 21-Ноя-02, 11:10  (MSK)
>>>>%sudo -u vanya cat /etc/hosts
>>>А что такое sudo? У меня FreeBSD 4.5 - ни манов ни
>>>команды такой нет.
>>
>>man su
>
>http://www.sudo.ws/sudo/

Ну и нафига ему sudo ставить когда с тем, что ему надо, прекрасно справится штатный фришный su. ;-)

  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "RE: Как root-ом запустить демон от кого-то другого"
Сообщение от romn emailИскать по авторуВ закладки on 21-Ноя-02, 10:08  (MSK)
su - USERNAME -c "command"
пример
su - nobody -c "ls -al /"
  Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "RE: Как root-ом запустить демон от кого-то другого"
Сообщение от lavr emailИскать по авторуВ закладки on 21-Ноя-02, 13:09  (MSK)
>У меня при старте машины с FreeBSD скриптом лежащим в /usr/local/etc/rc.d/ стартуют
>кое какие программы. Стартуют они от пользователя root, а вот хотелось
>бы от какого-либо другого. Не подскажите ли как это сделать?

вопрос не только в том КАК из под su запустить тот или иной сервис,
но еще и в том что этот сервис будет выполнять.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

8. "RE: Как root-ом запустить демон от кого-то другого"
Сообщение от aleks Искать по авторуВ закладки on 21-Ноя-02, 23:21  (MSK)
На самом деле задача вроде тривиальная:
#su <user>
> execute_command
> exit
Но вот я наткнулся на следующее. В доке по sql серверу postrgres (он обязательно должен стартовать от юзера postgres):
[ -x /usr/local/pgsql/bin/postmaster ] && {
        su postgres -c '/usr/local/pgsql/bin/postmaster -S -i -D /usr/local/pgsql/data'
        echo -n ' PG_SQL Server started! ...'
        }
Если поместить это в стартовый скрипт системы то в результате имеем процесс запущенный от постгреса. Только вот что сдесь к чему я чего-то не пойму. Может кто-нибуть объяснит?
  Рекомендовать в FAQ | Cообщить модератору | Наверх

9. "RE: Как root-ом запустить демон от кого-то другого"
Сообщение от aleks Искать по авторуВ закладки on 21-Ноя-02, 23:25  (MSK)
>вопрос не только в том КАК из под su запустить тот или
>иной сервис,
>но еще и в том что этот сервис будет выполнять.
Сервис самописный. Общается с локальной базой данных и слушает сокет внешней сети. Так что хотелось бы пускануть его от nobody.
  Рекомендовать в FAQ | Cообщить модератору | Наверх

10. "RE: Как root-ом запустить демон от кого-то другого"
Сообщение от aleks emailИскать по авторуВ закладки on 23-Ноя-02, 14:56  (MSK)
>Так что хотелось бы пускануть его от nobody.

Пускаю так:
# su nobody -c "/path/to/my_prog"
Врезультате:
This account is currently not available.

Ответ то конечно логичен (у nobody ни папки нет и shell - /sbin/nologin), но ведь надо пустить от nobody. Подскажите уж очень не хочется sudo сюда привлекать?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

11. "RE: Как root-ом запустить демон от кого-то другого"
Сообщение от lavr emailИскать по авторуВ закладки on 24-Ноя-02, 16:49  (MSK)
>>Так что хотелось бы пускануть его от nobody.
>
>Пускаю так:
># su nobody -c "/path/to/my_prog"
>Врезультате:
>This account is currently not available.
>
>Ответ то конечно логичен (у nobody ни папки нет и shell -
>/sbin/nologin), но ведь надо пустить от nobody. Подскажите уж очень не
>хочется sudo сюда привлекать?

а что религия не позволяет создать пользователя postgres аналог nobody
но с shell (разумеется w/o password) если уж этот пользователь должен
иметь среду.

PS. Я так думаю что в документации по postgres должен раскрываться этот
вопрос или в списках рассылки или в howto или ...

  Рекомендовать в FAQ | Cообщить модератору | Наверх

12. "RE: Как root-ом запустить демон от кого-то другого"
Сообщение от lavr emailИскать по авторуВ закладки on 24-Ноя-02, 16:50  (MSK)
>>>Так что хотелось бы пускануть его от nobody.
>>
>>Пускаю так:
>># su nobody -c "/path/to/my_prog"
>>Врезультате:
>>This account is currently not available.
>>
>>Ответ то конечно логичен (у nobody ни папки нет и shell -
>>/sbin/nologin), но ведь надо пустить от nobody. Подскажите уж очень не
>>хочется sudo сюда привлекать?
>
>а что религия не позволяет создать пользователя postgres аналог nobody
>но с shell (разумеется w/o password) если уж этот пользователь должен
>иметь среду.
>
>PS. Я так думаю что в документации по postgres должен раскрываться этот
>
>вопрос или в списках рассылки или в howto или ...


Мб дело и вовсе в чем-то другом? Mysql вполне справляется с запуском без
shell(среды)

  Рекомендовать в FAQ | Cообщить модератору | Наверх

13. "RE: Как root-ом запустить демон от кого-то другого"
Сообщение от qq Искать по авторуВ закладки on 24-Ноя-02, 17:49  (MSK)
уже был такой вопрос, и не один раз

http://cr.yp.to/daemontools/setuidgid.html
http://cr.yp.to/daemontools/daemontools-0.76.tar.gz

  Рекомендовать в FAQ | Cообщить модератору | Наверх

14. "RE: Как root-ом запустить демон от кого-то другого"
Сообщение от aleks emailИскать по авторуВ закладки on 25-Ноя-02, 07:46  (MSK)
>>PS. Я так думаю что в документации по postgres должен раскрываться этот

Так пользователь постгрес у меня есть (и среда у него есть), с постгресом всё в порядке. Стартовый скрипт я тут привёл т.к. не совсем понял его конструкцию. Но т.к. у nodody shell-а нет то данный способ видно не подходит. Попробую setuidgid.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

15. "RE: Как root-ом запустить демон от кого-то другого"
Сообщение от lavr emailИскать по авторуВ закладки on 25-Ноя-02, 11:02  (MSK)
>>>PS. Я так думаю что в документации по postgres должен раскрываться этот
>
>Так пользователь постгрес у меня есть (и среда у него есть), с
>постгресом всё в порядке. Стартовый скрипт я тут привёл т.к. не
>совсем понял его конструкцию. Но т.к. у nodody shell-а нет то
>данный способ видно не подходит. Попробую setuidgid.

все что нужно сделать, это прочесть man su в той системе в которой
работаешь:

>Но вот я наткнулся на следующее. В доке по sql серверу postrgres (он >обязательно должен стартовать от юзера postgres):
>[ -x /usr/local/pgsql/bin/postmaster ] && {

если существует файл /path/postmaster и он исполняемый, делаем:

>        su postgres -c '/usr/local/pgsql/bin/postmaster -S -i -D >/usr/local/pgsql/data'

запускаем из под пользователя postgres - 'su postgres' команду с аргументами: -c '/path/postmaster ARGS'

>        echo -n ' PG_SQL Server started! ...'

выводим на экран: сервис запущен

>        }

и чего здесь непонятного!?
данные и директории должны быть владельцем postgres или группой с доступом на запись, чего такого сложного?

короче: man su

  Рекомендовать в FAQ | Cообщить модератору | Наверх

16. "RE: Как root-ом запустить демон от кого-то другого"
Сообщение от aleks emailИскать по авторуВ закладки on 25-Ноя-02, 19:36  (MSK)
Спасибо за исчерпывающий ответ. Для меня вопрос закрыт.
  Рекомендовать в FAQ | Cообщить модератору | Наверх

17. "RE: Как root-ом запустить демон от кого-то другого"
Сообщение от lavr emailИскать по авторуВ закладки on 25-Ноя-02, 22:28  (MSK)
>Спасибо за исчерпывающий ответ. Для меня вопрос закрыт.

cool.

Удачи

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру