Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
the..dragon
Зарегистрирован: 05.11.2004 Сообщения: 55 Откуда: DNEPR
|
Добавлено: Ср Июн 07 2006 17:08 Заголовок сообщения: вопрос о запуске PostgreSQL |
|
|
доброе время суток!
ОС FreeBSD 5.4, postgresql-server-8.0.7
не получается стартовать автоматически при запуске системы. а задача такова: запустить от имени определенного пользователя. пользователь этот не имеет права логиниться в систему поэтому запускаю через sudo вместо su. вот кусок скрипта, который пришлось изменить:
Код: | postgresql_command()
{
# su -l ${postgresql_user} -c "exec ${command} ${command_args}"
/usr/local/bin/sudo -u ${postgresql_user} ${command} ${command_args}
}
postgresql_initdb()
{
# su -l -c ${postgresql_class} ${postgresql_user} -c "exec ${prefix}/bin/initdb -D ${postgresql_data}"
/usr/local/bin/sudo -u ${postgresql_user} ${prefix}/bin/initdb -D ${postgresql_data}
}
|
закомментированные строки - те которые были изначально.
когда пытаюсь запустить, выдается следующее:
Цитата: | /usr/local/etc/rc.d/010.pgsql.sh start
pg_ctl: команда не указана
Наберите "pg_ctl --help" для более подробной информации. | вот и не могу понять, каким образом pg_ctl'у передать команду старт.
помогите разобраться... _________________ я не волшебник, я только учусь... |
|
Вернуться к началу |
|
|
dio
Зарегистрирован: 07.10.2004 Сообщения: 722 Откуда: Дважды орденоносная Кубань,Краснодар
|
Добавлено: Пн Июн 19 2006 10:38 Заголовок сообщения: |
|
|
я немного не пойму существо задачи...если вы ставили Pg через систему портов(пакетов), то он и будет запускаться от имени postgres который и создается (как и группа) при установке СУБД. Чего именно вам не хватает? _________________ All is not lost! |
|
Вернуться к началу |
|
|
the..dragon
Зарегистрирован: 05.11.2004 Сообщения: 55 Откуда: DNEPR
|
Добавлено: Пн Июн 19 2006 10:52 Заголовок сообщения: |
|
|
dio проблема уже решена следующим образом: в строку Код: | /usr/local/bin/sudo -u ${postgresql_user} ${command} ${command_args} | добавил $1. получилось вот так:
Код: | /usr/local/bin/sudo -u ${postgresql_user} ${command} $1 ${command_args} |
_________________ я не волшебник, я только учусь... |
|
Вернуться к началу |
|
|
dio
Зарегистрирован: 07.10.2004 Сообщения: 722 Откуда: Дважды орденоносная Кубань,Краснодар
|
Добавлено: Пн Июн 19 2006 10:56 Заголовок сообщения: |
|
|
здорово, что решена...но все же, поясните постановку задачи
СУБД и так будет загружаться от имени автоматически созданного при установке пользователя pgsql (И группы тоже, я проверил ), так что вам не хватало?? _________________ All is not lost! |
|
Вернуться к началу |
|
|
the..dragon
Зарегистрирован: 05.11.2004 Сообщения: 55 Откуда: DNEPR
|
Добавлено: Пн Июн 19 2006 11:00 Заголовок сообщения: |
|
|
при запуске скрипта выдавалось следующее:
Цитата: | pg_ctl: команда не указана |
как я понимаю pg_ctl не воспринимал команду start. вот я и спрашивал как ему передать эту команду. _________________ я не волшебник, я только учусь... |
|
Вернуться к началу |
|
|
dio
Зарегистрирован: 07.10.2004 Сообщения: 722 Откуда: Дважды орденоносная Кубань,Краснодар
|
Добавлено: Пн Июн 19 2006 11:25 Заголовок сообщения: |
|
|
и все же вы что то путаете, мне кажется. Если вы ничего не меняли и ставили так, как я спрашивал - то сценарий запуска СУБД .sh из каталога /usr/local/etc/rc.d вызывается автоматически при старте системы с параметром start от имени пользователя pgsql. Вы говорили, что хотите под каким то особенным пользователем задать старт СУБД и добавили, что скрипт не реагирует на команду start. Это после ваших изменений в нем? Возможно...но так и НЕ понятно - зачем и что именно вы там меняли? База стартует по дефолту из локального сценария запуска под пользователем pgsql...до сих пор НЕ понятно - ЗАЧЕМ вы что то и где то меняли )
Или по принципу - сам себе создам проблему (залезу в стартовый скрипт...) а потом сам ее мужественно преодолею?? ) _________________ All is not lost! |
|
Вернуться к началу |
|
|
the..dragon
Зарегистрирован: 05.11.2004 Сообщения: 55 Откуда: DNEPR
|
Добавлено: Пн Июн 19 2006 11:37 Заголовок сообщения: |
|
|
да нет. совсем не тот принцип! изначально в скрипте дается команда su, а я изменил шелл пользователя pgsql на nologin!!! потому и пришлось переделать скрипт, чтобы запускался через sudo. кстати, пробовал вернут ьэтому пользователю шелл и запустить через su - эффект тот же Цитата: | pg_ctl: команда не указана | вот уж воистину - не знаю в чем проблема, видимо скрипт изначально неправильным был. _________________ я не волшебник, я только учусь... |
|
Вернуться к началу |
|
|
dio
Зарегистрирован: 07.10.2004 Сообщения: 722 Откуда: Дважды орденоносная Кубань,Краснодар
|
Добавлено: Пн Июн 19 2006 11:38 Заголовок сообщения: |
|
|
позвольте усомниться в "неправильности" скрипта! Я уважаю коммитеров от free ) У меня же все работает
так что все же выходит (раз вы внесли изменения) что свои баги устраняете сами _________________ All is not lost! |
|
Вернуться к началу |
|
|
the..dragon
Зарегистрирован: 05.11.2004 Сообщения: 55 Откуда: DNEPR
|
Добавлено: Пн Июн 19 2006 11:52 Заголовок сообщения: |
|
|
а позвольте усомниться и мне... в самом первом сообщении я привел измененный кусок скрипта, там есть закомментированные строки, которые я нисколечко не менял! почему-то с ними тоже не запускается... _________________ я не волшебник, я только учусь... |
|
Вернуться к началу |
|
|
dio
Зарегистрирован: 07.10.2004 Сообщения: 722 Откуда: Дважды орденоносная Кубань,Краснодар
|
Добавлено: Пн Июн 19 2006 11:54 Заголовок сообщения: |
|
|
но так и не понятно - как вы ставили СУБД? Ничего не написали...порты, пакеты, исходники...
вот это имя скрипта меня смущает 010.pgsql.sh из этой строки
/usr/local/etc/rc.d/010.pgsql.sh start точно ведь не по дефолту появилось такое
и что в логах система писала, при попытке запуска на этапе загрузки. _________________ All is not lost! |
|
Вернуться к началу |
|
|
the..dragon
Зарегистрирован: 05.11.2004 Сообщения: 55 Откуда: DNEPR
|
Добавлено: Пн Июн 19 2006 12:11 Заголовок сообщения: |
|
|
в данный момент мы спорим ни о чем. не хочу на это тратить время. а посему резюме: считайте, что я сам создал проблему и успешно ее преодолел. _________________ я не волшебник, я только учусь... |
|
Вернуться к началу |
|
|
dio
Зарегистрирован: 07.10.2004 Сообщения: 722 Откуда: Дважды орденоносная Кубань,Краснодар
|
Добавлено: Пн Июн 19 2006 13:00 Заголовок сообщения: |
|
|
я не спорил...мне действительно интересно существо проблемы...я тоже эксплуатирую эту же базу - надеялся, может вместе удалось бы найти истинную причину бага. Извини, если что не так. _________________ All is not lost! |
|
Вернуться к началу |
|
|
the..dragon
Зарегистрирован: 05.11.2004 Сообщения: 55 Откуда: DNEPR
|
Добавлено: Пн Июн 19 2006 13:18 Заголовок сообщения: |
|
|
значит, я неправильно понял... тогда рассказываю: ставил из портов postgresql80-server, скрипт создался автоматически с таким именем 010.pgsql.sh. все исправления, сделанные мной: закомментированы строки с su, вписаны строки с sudo. после установки пользователю pgsql присвоен шелл /sbin/nologin. при первой же попытке было выдано то, о чем я писал раньше - "pg_ctl: команда не указана". вот и все. сразу решил написать в форум, подумал может кто сталкивался... _________________ я не волшебник, я только учусь... |
|
Вернуться к началу |
|
|
|