Changing ownership of proxy_temp and other temp directories

Shreenidhi Shedi sshedi at vmware.com
Thu Mar 16 18:19:42 UTC 2023


Hi All,

I have hosted a nginx server instance and the temp directories are created under /etc/nginx/

$ ls -ld /etc/nginx/*_temp
drwx------ 2 nobody root 4096 Mar 16 15:21 /etc/nginx/client_body_temp
drwx------ 2 nobody root 4096 Mar 16 15:21 /etc/nginx/fastcgi_temp
drwx------ 2 nobody root 4096 Mar 16 15:21 /etc/nginx/proxy_temp
drwx------ 2 nobody root 4096 Mar 16 15:21 /etc/nginx/scgi_temp
drwx------ 2 nobody root 4096 Mar 16 15:21 /etc/nginx/uwsgi_temp

And I updated to a newer version of nginx which runs in "nginx" user context and after that these directory ownership is getting changed to nginx:root but the issue is, it happens only on these top directories and not directories within these temp directories.

I did strace on the same to confirm my theory.

mkdir("/etc/nginx/client_body_temp", 0700) = -1 EEXIST (File exists)
stat("/etc/nginx/client_body_temp", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0
chown("/etc/nginx/client_body_temp", 997, -1) = 0
mkdir("/etc/nginx/proxy_temp", 0700)    = -1 EEXIST (File exists)
stat("/etc/nginx/proxy_temp", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0
chown("/etc/nginx/proxy_temp", 997, -1) = 0
mkdir("/etc/nginx/fastcgi_temp", 0700)  = -1 EEXIST (File exists)
stat("/etc/nginx/fastcgi_temp", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0
chown("/etc/nginx/fastcgi_temp", 997, -1) = 0
mkdir("/etc/nginx/uwsgi_temp", 0700)    = -1 EEXIST (File exists)
stat("/etc/nginx/uwsgi_temp", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0
chown("/etc/nginx/uwsgi_temp", 997, -1) = 0
mkdir("/etc/nginx/scgi_temp", 0700)     = -1 EEXIST (File exists)
stat("/etc/nginx/scgi_temp", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0

Now the issue is, why chown happens only on top directory and not recursively on all files and directories inside them? Is this a bug or is it fixed in latest version of nginx?

I'm currently using nginx-1.22.0. Any help would be appreciated. Thanks.

--
Shedi
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20230316/93705543/attachment.htm>


More information about the nginx mailing list