SSH Запустите приложение Node.js от имени другого пользователя при перезагрузке системы.

Я установил блог-призрак на свою цифровую морскую капельку.

Все нормально работает с пользователем root.

Тем не менее, я создал другого пользователя для запуска приложений (включая ghost), чтобы сделать вещи более безопасными.

Я установил pm2, следуя этому руководству https://www.digitalocean.com/community/tutorials/how-to-use-pm2-to-setup-a-node-js-production-environment-on-an-ubuntu-vps. Я тоже навсегда установил.

Проблема в том, что я не могу запустить свой блог с созданным пользователем, поскольку блог находится по адресу / var / www. Когда я запускаю sudo-start, это, конечно, работает, однако я не уверен, возможно ли это добавить приложения в автозагрузку для запуска от имени другого пользователя?

Если есть способ, я хотел бы знать.

1 ответ

Попробуй это:

Переместите местоположение вашего блога в /var/www/[blog_directory]

Где blog_directory - "призрак" или имя вашего блога, или что-то еще.

например, /var/www/ghost

Затем убедитесь, что ваши разрешения выглядят так:

Разрешения на / var:

  drwxr-xr-x 21 root root  4096 Oct 20 23:55 var

Разрешение на / var / www:

 drwxr-xr-x  8 root root  4096 Oct  1 01:04 www

Обратите внимание, что у каждого есть права на выполнение каталога в / var и / var / www

Затем выберите chown и chmod для фактического каталога блога, чтобы у вашего пользователя блога были права rwx.

  chown -R [blog_user] [blog_dir]
  chmod 755 [blog_dir]      

Теперь вы должны иметь возможность начать блог как blog_user

Или вы можете просто добавить необходимые разрешения для вашего blog_user для запуска блога и использовать "sudo [blah]" в различных файлах сценариев.

Другие вопросы по тегам