问题描述:

研发提出问题,希望在linux服务器上创建一个共享目录,管理员具有读写权限,开发/测试只有读权限,防止开发测试对目录内容进行修改

Linux系统权限

  • Linux系统上对文件的权限有着严格的控制,用于如果相对某个文件执行某种操作,必须具有对应的权限方可执行成功。
  • Linux下文件的权限类型一般包括读,写,执行。对应字母为 r、w、x。
  • Linux下权限的粒度有 拥有者 、群组 、其它组 三种。每个文件都可以针对三个粒度,设置不同的rwx(读写执行)权限。通常情况下,一个文件只能归属于一个用户和组, 如果其它的用户想有这个文件的权限,则可以将该用户加入具备权限的群组,一个用户可以同时归属于多个组。
  • Linux上通常使用chmod命令对文件的权限进行设置和更改。

问题解决:

1. 方法一

创建管理员账号admin,home目录设置为共享目录,然后创建develop,因为linux系统的权限其他用户设置为只读的

创建用户和home目录
useradd -d /data/package -m admin

设置权限为拥有者与其所属同一个群组可读写,其它组可读不可写
chmod a+r,o-w /data/package

创建develop用户

useradd develop

这样admin用户作为拥有者,具有/data/package目录读写权限,develop只有只读权限

2 方式二:通过组的方式

创建组

groupadd admin

创建用户

useradd -d /home/userA -m -g usergroup admin

设置目录访问权限

chmod -R 750 userA

或者设置权限为拥有者与其所属同一个群组 可读写,其它组可读不可写

chmod a+r,ug+w,o-w /data/package

十位权限表示

常见的权限表示形式有

-rw------- (600)      只有拥有者有读写权限。
-rw-r--r-- (644)      只有拥有者有读写权限;而属组用户和其他用户只有读权限。
-rwx------ (700)     只有拥有者有读、写、执行权限。
-rwxr-xr-x (755)    拥有者有读、写、执行权限;而属组用户和其他用户只有读、执行权限。
-rwx--x--x (711)    拥有者有读、写、执行权限;而属组用户和其他用户只有执行权限。
-rw-rw-rw- (666)   所有用户都有文件读、写权限。
-rwxrwxrwx (777)  所有用户都有读、写、执行权限。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐