R.S*_*.S. 7 permissions users groups 16.04
这是 Ubuntu 16.04 上的权限问题。我无法删除安装在/usr/local/lib/R/site-library. 原来我没有得到许可。该目录是由国有root和组staff。
我通过手动将我的用户添加到staff组来临时解决了权限问题。
sudo usermod -a -G staff myusername
# *see blockquote before using this!*
Run Code Online (Sandbox Code Playgroud)
这允许我从 IDE 中删除库。
但是,当我尝试查找有关员工组的更多信息时,却找不到有关该主题的任何明确材料。甚至不是该小组的主要目的。我只能猜测它用于为某些目录上的用户提供类似的“增强”访问权限。
将用户手动添加到员工组是否有任何影响?
顺便说一句,是否有任何命令可以了解组的系统范围权限?例如,组员工将拥有写入权限的所有目录是什么?
谢谢。
编辑:我必须在这里补充一点,使用
adduser而不是usermod此操作的更明智的选择[请参阅下面的评论]
sudo adduser myusername staff
好的,正如@muru所推动的那样,我正在尽可能地发布我自己问题的答案。该文件file:///usr/share/doc/base-passwd/users-and-groups.html包含有关组和权限的详细信息。可以在此处找到此页面的镜像:用户和组
因此:
职员
允许用户在不需要 root 权限的情况下向系统 (
/usr/local,/home)添加本地修改。与 group 相比adm,它更多地与监控/安全相关。请注意,修改能力
/usr/local实际上等同于 root 访问权限(因为/usr/local有意在 之前的搜索路径上/usr),因此您应该只将受信任的用户添加到该组。在使用 NFS 的环境中要小心,因为在这种环境中获得另一个非 root 用户的权限通常更容易。
当然,adm 已经在我的里面了,groups所以我可以做dmesg。但我不得不手动将自己添加到staff
记录员工拥有的目录列表显示所有这些都属于以下之一:
sudo find / -maxdepth 8 -type d -group staff -perm -g=w >>stafflog.txt
/var/local
/usr/local/lib
/usr/local/share
Run Code Online (Sandbox Code Playgroud)
难怪员工的成员资格让我可以写访问我的共享编程语言库。
检查以下权限之一:
ls -al /var/local
drwxrwsr-x 2 root staff 4096 Apr 11 2014 .
drwxr-xr-x 16 root root 4096 Aug 3 15:55 ..
Run Code Online (Sandbox Code Playgroud)
很明显,员工技巧是由系统通过设置目录的位 ( setguid) 来执行的。,以便无论哪个用户或进程在该目录中创建文件,该文件始终以在员工组中共享的权限运行。 看这里
但是我仍然想知道我是否可以安全地将自己留在这个组中。在我看来,这应该是非常安全的,因为这是一台笔记本电脑,最坏的情况是通过 smb 或 ssh 通过受信任的 LAN 进行访问。“有效地等同于 root 访问”这句话吓到我了。欢迎对此提出任何想法。
| 归档时间: |
|
| 查看次数: |
6246 次 |
| 最近记录: |