Я запускаю Ubuntu 10.04 VPS, на котором размещены 2 тонких процесса, на которых работает Ruby On Rails за Nginx. Я управляю тонкими процессами с помощью сценария запуска /etc/init.d как обычный пользователь. В моем тонком конфигурационном файле я указываю:
user: www-data
group: www-data
И в моих тонких логах, когда я запускаю сервер, я вижу
>> Changing process privilege to www-data:www-data
Хороший знак. Проблема в том, когда я бегу ps -ef
мои тонкие процессы работают как пользователь, под которым я вхожу - пользователь, которого я запускаю /etc/init.d/thin start
так как.
Как мне запустить тонкие процессы как www-data: www-data при запуске /etc/init.d/thin start
как пользователь я вхожу на сервер как?
Вы можете использовать sudo для запуска команды от имени любой группы user: со следующими параметрами:
sudo -u www-data -g www-data /etc/init.d/thin start
-u устанавливает пользователя www-data и -g устанавливает группу www-data
Вы пытались сделать:
sudo -c www-data /etc/init.d/thin start
Но если ваш тонкий сервер прослушивает порт 80, вам потребуются привилегии root.
Если вы обычный пользователь, вы не сможете передать владение процессом другому пользователю. Для этого вам нужно будет запустить сценарий /etc/init.d/thin от имени пользователя root.
Итак, вы можете сделать что-то вроде sudo /etc/init.d/thin start
.