LINUX.ORG.RU

Запуск nginx+php-fpm+mariadb из под обычного юзера

 


0

2

Здравтвуй ЛОР. Собственно задача описана в сабже. Развернул на ноуте локальный веб сервер для отладки, написал скрипт для управления всем этим хламом. Хочу запускать вышеописаные сервисы скриптом без «sudo» или «su» (короче без ввода пароля). Может кто страдал таким и что подскажет. Заранее благодарен.

★★★

написал скрипт для управления всем этим хламом.

А система инициализации чем тебе не подходит?

TDrive ★★★★★
()

И вообще чем ты там собрался управлять? Все это надо просто запустить и все.

TDrive ★★★★★
()
Ответ на: комментарий от TDrive

Тем что руками писать много. Скрипты для того и пишут помоему чтоб облегчить себе страдания)

xaTa ★★★
() автор топика

Хочу запускать вышеописаные сервисы скриптом без «sudo» или «su» (короче без ввода пароля)

sudo можно настроить на безпарольный запуск для определенных команд

Либо самому запускать все вышеперечисленное, чтобы директории с данными программ были доступны твоему пользователю(геморройно, но реально), либо - запускать всё системой инициализации через sudo.

Кстати, в первом случае ты не сможешь заставить службы слушать порты <1024 - туда может вешать что-то только root.

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

sudo можно настроить на безпарольный запуск для определенных команд

Да рано я отказался от sudo) нашел решение, но оно не работает:

%user ALL= NOPASSWD: /sbin/service nginx
Просит пароль, судя по документации должно все без пароля работать. Почему так?

xaTa ★★★
() автор топика
Ответ на: комментарий от snaf

Сервер предназначен для отладки, тоесть будут менятся часто конфиги, и чтоб как минимум 3 команды не дергать в консольке, был написан скрипт.

xaTa ★★★
() автор топика
Ответ на: комментарий от xaTa

Ну так напиши скрипт запуска всей это снеди с нужными конфигами. Насколько я знаю, проблема будет только с портами ниже 1024-го, ну сконфижишь на другие что повыше и все.

deep-purple ★★★★★
()
Ответ на: комментарий от xaTa

systemctl restart nginx mariadb php-fpm

и всё в одной команде.

snaf ★★★★★
()
Ответ на: комментарий от xaTa

%user ALL= NOPASSWD: /sbin/service nginx

%user - это группа user. У тебя пользователь состоит в такой группе? Или ты всё же ошибся и надо написать user вместо %user?

Pinkbyte ★★★★★
()
Ответ на: комментарий от xaTa

Можно и так, у меня строчки вот такого вида обычно

%wheel ALL=(ALL) NOPASSWD: /sbin/reboot

Конфиг у sudoers немного неочевидный для применения на одном хосте. Но эта гибкость с host alias и user alias окупается если надо распространять его на несколько хостов.

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

Или ты всё же ошибся и надо написать user вместо %user?

и группа и пользователь присутствует. Спасибо за помощь, с sudo оказалось все намного проще.

xaTa ★★★
() автор топика
Ответ на: комментарий от xaTa

Сервер предназначен для отладки, тоесть будут менятся часто конфиги, и чтоб как минимум 3 команды не дергать в консольке, был написан скрипт.

Ты хернёй занимаешься, сервера запускай системой инициализации при запуске компа, а для перезапуска при обновлении конфигов настрой incron, будет что то типо

/etc/nginx/ IN_MODIFY systemctl restart nginx

никаких команд вводить не нужно вообще и уж тем более скрипты какие то писать, все уже есть)

TDrive ★★★★★
()
Последнее исправление: TDrive (всего исправлений: 2)
Ответ на: комментарий от TDrive

Ты хернёй занимаешься, сервера запускай системой инициализации при запуске компа

Почему херней? у меня на нетбуке левых ресурсов нет чтоб держать запущеными mysql php и nginx.

systemctl restart nginx

не пользуюсь systemd.

xaTa ★★★
() автор топика
Ответ на: комментарий от smt

движки php с разными конфигурациями.

xaTa ★★★
() автор топика
Ответ на: комментарий от xaTa

не пользуюсь systemd.

Там можно любую команду написать.

TDrive ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.