【问题标题】:Linux (Ubuntu) and Nginx permissions on another disk when i use client_body_temp_path当我使用 client_body_temp_path 时,Linux(Ubuntu)和 Nginx 权限在另一个磁盘上
【发布时间】:2021-09-18 20:48:00
【问题描述】:

我通过 nginx 上传大尺寸(5-100GB)的单个文件。 Nginx 将其临时保存在路径中。我需要将临时路径更改为另一个磁盘的路径。我的后端应用程序将文件移动到磁盘中。但是复制粘贴太慢了,出现超时错误。

磁盘安装在 /etc/fstab 上

/dev/disk/by-uuid/24c495a2-1fb1-46a7-8ae1-d425f5b67d4a /media/cesium auto nosuid,nodev,nofail,x-gvfs-show 0 0

这是我的配置文件

server {
    listen 14000;
    server_name _;
    client_max_body_size 100G;  
    
    client_body_temp_path /media/cesium/nginx_tmp;

    location / {
        proxy_pass http://localhost:13001;
    }
    location /api/ {
        proxy_pass http://localhost:13002/api/;
    }

}

这是 nginx 错误日志文件 /var/log/nginx/error.log 上的内容

2021/07/08 12:30:00 [crit] 11595#11595: *159 open() "/media/cesium/nginx_tmp/0000000002" failed (13: Permission denied), client: 192.168.20.180, server: _, request: "POST /api/v1/terrain/5/uploadfile HTTP/1.0", host: "192.168.20.201:14000", referrer: ...

这是我试图解决的问题然后我失败了。

  • 我将 nginx.service 用户更改为 root。
  • 我把整个磁盘的权限改成了777
  • 我的问题看起来与Linux (Centos) and Nginx permissions on another disk 重复,但不是。我试图在 ubuntu 上安装 selinux。我无法再次使用 selinux 启动。我在 ubuntu 上禁用了 selinux。

这和apparmor有关吗?

【问题讨论】:

    标签: ubuntu nginx permission-denied selinux apparmor


    【解决方案1】:

    我只是重新安装磁盘。而且没有问题了。

    sudo mount -o remount,rw /dev/sdb1 /media/cesium

    【讨论】:

      猜你喜欢
      • 2023-03-11
      • 1970-01-01
      • 2021-09-05
      • 2021-07-11
      • 2013-10-16
      • 2015-03-21
      • 2018-07-15
      • 2018-08-01
      • 2020-03-18
      相关资源
      最近更新 更多