Назад | Перейти на главную страницу

getgrnam («пользователь») не удалось в /etc/nginx/nginx.conf

Я пытаюсь запустить nginx от имени текущего пользователя (= ayush). Но я получаю следующую ошибку при установке user директива:

Dec 11 22:26:13 manjaro nginx[17194]: 2015/12/11 22:26:13 [emerg] 17194#0: getgrnam("ayush") failed in /etc/nginx/nginx.conf:1
Dec 11 22:26:13 manjaro systemd[1]: nginx.service: Control process exited, code=exited status=1

мой nginx.conf:

user ayush;
worker_processes 1;

error_log  /var/log/nginx/error.log;
events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #access_log  logs/access.log  main;

    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;


        location / {
            root   /code/server;
            autoindex on;
            index  index.html index.htm;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /usr/share/nginx/html;
        }
    }
}

также:

ayush@manjaro ~> whoami
ayush

В user Директива принимает два параметра: вашего пользователя и имя вашей группы. Если вы не укажете имя группы, предполагается, что оно совпадает с вашим именем пользователя.

Ошибка связана с тем, что имя группы ayush не существует.

Видеть этот документ для подробностей.

В MacOS имя группы - это число (используйте команду: id -g -n $ whoami или откройте Настройки MacOS -> Пользователи и группы -> Щелкните правой кнопкой мыши свою учетную запись и выберите Дополнительные параметры). Но nginx работает, только если я укажу имя группы как «персонал».

Моя конфигурация nginx:

пользователь MyUserName Staff; ...

Вам нужно указать два параметра для user директива, ваш пользователь и имя вашей группы. Если имя группы не указано, оно будет предполагать, что оно совпадает с именем пользователя, что, по-видимому, является проблемой в вашем случае, т.е. имя вашей группы не совпадает с именем пользователя (ayush).

Чтобы увидеть свое имя пользователя, выполните следующую команду:

whoami

Чтобы увидеть название вашей группы, выполните следующую команду:

id -g -n $whoami