问题标签 [file-ownership]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
email - google 应用程序脚本:file.setOwner() 未在 Google Drive 中转移所有权
我正在尝试将所有 .pdf 文件的所有权转移到另一个拥有更多空间的帐户。我正在使用驱动器中的单个文件夹测试代码。
当我运行代码时,没有任何文件更改所有权。
linux - 阻止用户查看公用文件夹
我在基于 linux 的图像上的容器上有 php 应用程序。该应用程序必须是公共访问(至少 007)才能正常工作。我正在尝试使用脚本创建一个用户(在容器内),并将位于 /var/www 下的软链接相关项目提供给该用户的主目录。该用户应该只对拥有的项目进行读写执行(我用 chown 设置)。
我这样管理该权限:
将所有文件夹的所有者设置为 root
将所有文件夹的权限设置为 500 (rx------)
创建一个用户(我用 python 脚本取了这个名字)。
将相关文件夹的所有者设置为创建的所有者。
以创建的用户身份运行软链接命令。软链接源位置是 /var/www 目标位置 /home/created-user。
使用该设置,用户只能看到其项目目录。但是,由于缺乏公共许可,我的 php 应用程序不再工作。为此,我必须至少设置权限 007。但这次其他用户可以 rwx 相关目录。
我尝试了 770 个仍然无法运行的应用程序。
我的问题是如何限制特定用户或 . 那个问题
你知道其他方法吗?
python - 在 Windows 上运行的 python 3 中,如何获取文件的所有者
注意:我正在 Windows 上使用 Python 3.x。
我已经为此工作了很长一段时间,我发现 UNIX 系统上的解决方案非常简单。
在 Windows 上,这只是返回0
我找到了有时可行的解决方案
但是,它并不总是有效,有时会出现以下错误:
当它工作时,它会输出
在过去一周左右的所有搜索过程中,我发现了几个似乎在 UNIX/LINUX 中运行良好的解决方案,但只有上述解决方案在 Windows 中运行,并且不一致。
php - Joomla 3.9.14 - configuration.php 对于开发网站不可写
在 Lubuntu 18.04 上使用 MariaDB10.3、Apache2.4、PHP7.2(非常类似于 Ubuntu 18.04)
我想用我的电脑离线使用 Joomla 设计一个网站。后来,我想把这个网站转移到一个共享的主机服务器上。我在浏览器中打开 localhost/installation 并开始设置 Joomala 网站。我完成了前三个步骤
- 配置
- 数据库
- FTP
- 概述
现在,我挂在第 4 步。所有图标都是绿色的,除了行尾的“否”图标
configuration.php 可写 否
目前 configuration.php 仍在目录中:
/home/tomjones/internet/public_html/installation/model/configuration.php
节目
-rw-r--r-- 1 tomjones tomjones ... configuration.php
我确定了目录的所有者
/home/tomjones/internet/public_html
作为
www-数据
通过在浏览器中打开新的 user.php 文件,其中只有 1 行代码:
我更改了 user:group of configuration.php 从
tomjones: tomjones to
www-数据:www-数据
并通过重新启动 apache 2
然后我在 Joomla 安装菜单中从第 4 步返回到第 3 步,并从第 3 步前进到第 4 步。红色图标 No 仍然存在(configuration.php Writable No)。
Joomla 文档警告要更改 configuration.php 的权限。尽管如此,我也尝试了不同的权限:
- 0444(根本不可写)
- 0644(原版)
- 0664
- 0666
- 0777
对于以下 2 个所有权变体(用户:组)
- 汤姆琼斯:汤姆琼斯
- www-数据:www-数据
我总是重新启动 apache2 并在 Joomla 安装菜单中从 4 更改为 3 (FTP) 到 4 (概述)。问题一直没有解决。因此,我没有按 Joomla 安装菜单中的安装按钮。
你有什么建议吗?
java - 当您不是文件所有者时,Java File.setLastModified() 在 Linux 上失败
我有一个 java jar 文件,它使用 File.setLastModified() 通过引用 /mnt/nxx/file.name 为文件设置特定的时间戳。当文件由与运行 java 进程的登录用户相同的 UID 拥有时,它可以正常工作。但如果登录用户是任何其他 UID,它就会失败。
该文件托管在外部 USB 驱动器上,该驱动器格式化为在引导时通过 /etc/fstab 安装在 Raspberry Pi 上的 Ext4 文件系统,使用:
同一网络上的 Ubuntu 主机,它在引导时通过 /etc/fstab 挂载同一个磁盘,使用:
只要登录的用户与 Pi 上的 UID 相同,也可以成功设置时间戳。
但是,通过 Samba 连接到同一个磁盘(映射为 N:\ 到 \RASPI\root\mnt)并运行相同的 java 代码的 Windows-10 主机可以成功地为任何文件设置时间戳,而不管文件所有者如何正如 Pi 所声称的那样。
有问题的文件具有 777 权限,并且正如预期的那样,我家庭网络中任何主机上的任何用户都可以成功修改该文件。唯一的问题是,当 Linux 主机上用户的 UID 与文件所有者不匹配时,对 setLastModified() 的 java 调用会失败——即使用户 java 进程正在使用与文件相同的 GID 运行。
我的目标是能够挂载磁盘并通过任何方法在我的家庭网络中的所有主机之间共享它,以便我的家庭网络上的 Windows 和 Linux 主机都可以使用 java 代码成功地操作时间戳。
为什么 Windows-10 可以不考虑用户而成功地操作时间戳,而 Linux 却不能?有没有办法让我在各种 fstab 挂载指令、smb.conf 或其他地方添加/配置选项来配置磁盘,以便 Linux 的行为与 Windows 相同?
顺便说一句:使用 NTFS 文件系统格式化的外部安装的 HDD 也存在同样的问题。我还没有尝试使用 NTFS 驱动器进行用户映射。
任何帮助,将不胜感激。
连续波
bash - 创建目录后立即更改目录权限和所有者的脚本?
我有能力创建目录,但我有一个问题......
在初始创建后,我无法继续访问可能需要第二次或第三次操作的目录;因此,我想创建一个具有管理员访问权限的脚本,该脚本可以在每次添加目录时更改所有者并设置正确的权限。
如何创建脚本文件并赋予它足够的权限来更改其他文件的权限和所有者?然后如何在我的目录及其所有递归子目录上设置监视,以便在创建新目录时将其权限和所有权设置为所需状态?
另外,为了学习起见,如果您有更好的方法来达到结果,请告诉我如何在上面描述的方法中达到结果?我很想知道如何监控文件夹及其子文件夹并触发脚本。
linux - 仅通过我的脚本授予对字典的访问权限
我在 debian 9 系统上的文件目录很少。我想禁用除所有者之外的所有人读取这些目录的权限,但我想让某些用户仅通过我自己的 bash 脚本列出此目录中的文件。我将权限更改为目录和我的脚本,但是当我尝试使用它时我得到“权限被拒绝”。我明白为什么,但无法解决它。
python - 从文件的信息中,如何使用 Python 获取它的“所有者”?
在具有数百个子目录和数千个文件的 Windows 操作系统上一个非常填充的目录中,我试图提取文件(原始路径 + 文件名)的位置以及文件的“所有者”属性和日志那; 本质上是一个带有 FILE 和 OWNER 的简单两列表。我并不真正关心输出格式(.csv、.xls、xlsx 等),只要它可以写出来并且是结构化的——我专注于首先获取输出。这是我以 dir 为例的尝试。
我很难获得所有者属性。在谷歌的帮助下,我不认为
stat(my_filename).st_uid
- 是正确使用的函数,因为它返回的是 ID 而不是实际名称。有哪些可能的解决方案?
docker - Influxdb 的 Docker 挂载卷归 root 所有
我正在运行安装卷的 Influxdb 映像,如下所示:
这将创建data/
root 拥有的目录:
我不知道如何在普通用户下挂载卷。除非以 root 身份登录,否则无法移动目录。我知道我可以chown目录并且我发现Docker 容器创建了 root 拥有的目录,我需要它们拥有 1000:1000,但我想知道 Influxdb 图像是否可以自己处理它?
如果我以当前用户身份运行它:
我最终得到: