AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题

问题[chown](server)

Martin Hope
Charlweed
Asked: 2022-04-14 11:09:39 +0800 CST

Linux bash 让非特权用户仅拥有一个特定目录的内容的方式?

  • 0

我希望特定用户递归更改特定目录的所有内容的所有者和组,并且仅更改该目录。目录是一种“收件箱”,服务在其中写入文件和子目录。

目前,我有一个管理员sudo chown,但我希望目标所有者自己做,而不需要该用户拥有更多权限。假设原所有者是“headsman”,最终所有者应该是“audience”。两个用户都不在同一个组中。

sudo chown -R audience:watchers /usr/files/pathofdir 不太对,因为我不希望观众有无限的权限使用 chown。我的第一个猜测是尝试在 /usr/bin/chown 和 /usr/bin/chgrp 的许可下向 /etc/sudoers 添加“受众”。但这太权威了。

我想专门为观众编写一个脚本,但我不知道如何使该脚本具有正确的权限,仅此而已。

有什么好方法可以做到这一点?

permissions sudo chown
  • 2 个回答
  • 41 Views
Martin Hope
Kl3m Michard
Asked: 2021-09-16 05:25:33 +0800 CST

浏览器下载文件而不是打开 php 文件

  • 0

所以,我发布了一个答案,因为在两次全新安装之后,我设置了一个但不同的东西(以我的观点)。就像我上面说的那样,我面临着两难境地,因为我所拥有的配置与我能找到的任何其他答案都不相同。例如 :

我的 /etc/nginx 文件夹基本构成如下:

|- /etc/nginx/
|  |- conf.d/
|  |  |- default.conf
|  |
|  |- fastcgi_params
|  |- mime.types
|  |- modules/ -> /usr/lib/nginx/modules
|  |- nginx.conf
|  |- scgi_params
|  |- uwsgi_params

没有 /sites-available 或 /sites-enabled 随处可见,提到的 fastcgi-php.conf 实际上是根文件夹中的 fastcgi_params,因此我的默认值不在 site-available 文件夹中。

这是我现在拥有的两个配置文件(域隐藏在 my_domain.com 下):首先:nginx.conf(几乎未触及)

    user  nginx;

worker_processes  auto;

error_log  /var/log/nginx/error.log notice;

pid        /var/run/nginx.pid;


events {
    worker_connections  1024;

}

http {
    include       /etc/nginx/mime.types;
    include       /etc/nginx/sites-available/*.conf;
    default_type  application/octet-stream;


    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

                      '$status $body_bytes_sent "$http_referer" '

                      '"$http_user_agent" "$http_x_forwarded_for"';



    access_log  /var/log/nginx/access.log  main;
    sendfile        on;
    #tcp_nopush     on;
    keepalive_timeout  65;
    #gzip  on;
    include /etc/nginx/conf.d/*.conf;

}

其次 /etc/nginx/conf.d/default.conf

    server {
    listen       80;
    server_name  my_domain.com www.my_domain.com;

    location / {
        root /var/www/www.my_domain.com;
        index  index.php index.html index.htm;
    }

    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /var/www/www.my_domain.com;
    }

    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
        fastcgi_split_path_info ^(.+?\.php)(/.*)$;
        #if (!-f $document_root$fastcgi_script_name) {
        #    return 404;
        #}
        root           /var/www/www.my_domain.com;
    #    fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
    #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        include        fastcgi_params;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
    }
    

}

我还加了一行

text/php            php;

对于 mime.types,我还记得在我使用的浏览器(Firefox、Opera 和 Chrome)中删除 my_domain 的缓存。

但是,文件仍然被下载。

我做错了什么 ?

编辑:因为我想创建一个 blog.my_domain.com、shop.my_domain.com 和 forum._mydomain.com,所以我创建了 /site-available 和 /site-enabled 文件夹,打算创建一个 blog/forum/shop .my_domain.com.conf 在位于 /sites-available 中的每个同名文件夹中,但我正在等待一个工作配置以使它们在 nginx.conf 中可见(带有包含行,对吗?)。

所以我真的不明白这两个文件夹是如何工作的。子域的 CNAME 记录设置为 my_domain.com。我还阅读了有关为这些子网站制作符号链接的信息,但我真的不知道从哪里到哪里?再次感谢

错误日志告诉我与 /var/run/php/ 的连接被拒绝。默认用户是 www-data www-data,但我的默认 nginx 用户是 nginx(如果我更改它,它甚至不会启动。)我应该做一个

chown nginx:nginx /var/run/php/

?

users nginx phpmyadmin chown
  • 2 个回答
  • 944 Views
Martin Hope
corsiKa
Asked: 2021-05-13 09:16:40 +0800 CST

chown 不会改变所有权

  • 0

我已经以 root 身份创建了一个目录,但是当我尝试更改所有权时,它不会改变!我不知道为什么。(ls -halg为了简洁起见,我已经剪掉了结果,以防你想知道为什么有些文件丢失了......)

root@localhost:/opt/tomcat/conf# mkdir Catalina
root@localhost:/opt/tomcat/conf# ls -halg
total 244K
drwxr-x--- 3 tomcat 4.0K May 12 17:09 .
drwxr-xr-x 9 tomcat 4.0K May 10 02:34 ..
drwxr-xr-x 2 root   4.0K May 12 17:09 Catalina
-rw-r----- 1 tomcat  13K May 12 15:32 catalina.policy
-rw-r----- 1 tomcat 7.1K Mar 30 10:29 catalina.properties
root@localhost:/opt/tomcat/conf# chown tomcat Catalina
root@localhost:/opt/tomcat/conf# ls -halg
total 244K
drwxr-x--- 3 tomcat 4.0K May 12 17:09 .
drwxr-xr-x 9 tomcat 4.0K May 10 02:34 ..
drwxr-xr-x 2 root   4.0K May 12 17:09 Catalina
-rw-r----- 1 tomcat  13K May 12 15:32 catalina.policy
-rw-r----- 1 tomcat 7.1K Mar 30 10:29 catalina.properties
root@localhost:/opt/tomcat/conf#

当我昨天创建 tomcat 目录时,它对chown -R /opt/tomcattomcat 用户的一切都很满意。我真的不知道为什么这么简单的命令会失败。

linux chown
  • 1 个回答
  • 584 Views
Martin Hope
Steve Wasiura
Asked: 2016-12-15 13:52:04 +0800 CST

ubuntu,文件夹权限,drwxrwx---,组中的php用户,无法创建文件

  • 0

我被困住了,需要帮助了解组成员的文件创建权限。


在php中,我想在mysql拥有的文件夹中打开/创建一个文件:mysql(用于将数据导入mysql)

文件夹-ld

drwxrwx--- 2 mysql mysql 4096 Dec 14 14:33 /var/lib/mysql-files

php作为用户www-data运行

我将“www-data”用户添加到“mysql”组中

sudo usermod -a -G groupName userName 

已验证

sudo groups www-data
    www-data : www-data mysql

看来我的 php 用户帐户“www-data”通过组成员资格对该文件夹具有写入权限,但我收到错误 13“权限被拒绝”。


在输入这个问题时,一个类似的问题(https://serverfault.com/a/534000/65092)

有一个答案是父文件夹(/var 和 /var/lib)需要对用户或组具有“x”权限,我理解这意味着:

php 用户 'www-data' 需要能够查看 /var 内部,读取 /lib ,读取 /mysql-files 。

/var = drwxr-xr-x 16 root root 
/var/lib = drwxr-xr-x 62 root root 

看来这已经启用。


有什么建议或意见吗?谢谢。

mysql chmod file-permissions chown
  • 1 个回答
  • 848 Views
Martin Hope
user364902
Asked: 2016-07-13 00:40:23 +0800 CST

putty:pscp文件传输更改权限

  • 0

我正在使用 pscp 使用以下命令传输文件:

pscp target\app.war [email protected]:/jetty/webapps

更改文件的语法是ownership什么app.war?换句话说,执行chown -R jetty:jetty到app.warusing pscp?

就像是:

pscp chown -R jetty:jetty [email protected]:/jetty/webapps/app.war

感谢您的建议

scp putty chown owner
  • 1 个回答
  • 1764 Views
Martin Hope
physalis
Asked: 2016-06-30 12:33:03 +0800 CST

带 FastCGI 的 HHVM 与通过 WordPress 上传

  • 1

我在 Ubuntu 15.10 安装上成功安装了 nginx、HHVM(使用 FastCGI 运行)等,而 HHVM 本身运行良好。我的 /var/www 目录归我的用户和组所有(例如 sam:sam),因此我可以通过 SSH 和 SFTP 访问它并相应地更改文件。当现在运行像 WordPress 这样的 CMS 时,它显然作为 Web 服务器(www-data)运行,因此无法从其后端更改/添加/删除文件(例如上传文件,更新 WordPress/插件),除非我更改用户和组对 www-data 的所有权。

有没有办法解决这个问题,以便能够通过 PHP 和 SSH 更改文件,而无需让 Web 服务器与明显具有 sudo 权限的用户一起运行?我相信作为 FastCGI 运行的“正常”PHP 能够规避这个问题。

php fastcgi chown hhvm
  • 1 个回答
  • 71 Views
Martin Hope
alexenko
Asked: 2012-07-23 18:02:54 +0800 CST

目录所有权不断变化

  • 2

我在我的 debian 服务器上运行我自己的 git 服务器。我使用 gitosis 进行访问控制。我注意到我的目录经常/opt/vc将所有权从 更改git:git为 。myUsername:myDefaultGroup几乎就像有什么东西在上面运行chwon -R myUsername:myDefaultGroup /opt/vc一样。我无法确定更改的确切时间范围。这导致 gitosis 不再工作,因为它没有读/写目录的权限。根 crontab 中没有任何东西会导致这种情况。

有人可以帮我找出导致文件所有权更改的原因吗?当我最初安装 git/gitosis 时并没有发生这种情况,它是最近才开始的,我不记得做过任何会导致这种情况的事情。

chown
  • 1 个回答
  • 1032 Views
Martin Hope
Elamurugan
Asked: 2010-03-31 06:32:50 +0800 CST

目录所有者问题

  • 0

我有一个使用applet和jsp的上传器,所以上传后所有者是tomcat,所以php无法访问它,我的意思是apache。它通过错误。我在 php 中更改了 chown 并直接在 shell 访问中。我仍然蚂蚁通过 php 访问该目录。请检查我的形象。

tomcat apache-2.2 chown
  • 2 个回答
  • 359 Views
Martin Hope
mrmartinblue
Asked: 2010-03-24 07:39:40 +0800 CST

多用户开发 Web 服务器的 Apache 安全性

  • 2

我整个上午都在搜索和阅读文档,并明白我需要使用 chown 和可能的“jailing”的某种组合来安全地让程序员访问我的 centos 网络服务器上的目录。

情况如下:我有一个 apache Web 服务器,它有任意数量的虚拟站点位于 /var/www/site1 /var/www/site2 等。

我有不同的开发人员需要完全访问 ssh 和 vsFTP 才能访问他们正在处理的站点。在这种情况下创建和维护安全性的最佳方法是什么。我的想法是为每个编码员创建一个新用户,将该用户监禁到允许他们工作的网站目录,将他们的用户添加到一个组并将 webroot 的所有者设置为该组。

有什么想法吗?好,坏,丑?谢谢!

linux security chown
  • 2 个回答
  • 996 Views
Martin Hope
Arc
Asked: 2010-03-15 08:50:16 +0800 CST

www-data 所有权使 WordPress 安装消耗更多内存

  • 3

我有一个 WordPress 安装。当文件夹的所有权是root时,消耗的内存是可以的。但是,当我将所有权更改为www-data用户时,它开始消耗大量内存并开始抛出大量内存不足错误。我已将所有权更改为 root。为什么会这样?

apache-2.2 root wordpress chown
  • 2 个回答
  • 884 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve