linux 实战-权限管理(完)

目标:造一个共享目录。创建一个组Music,有用户hqinglaukaren。其中,hqinglau通过sudo命令可获得超级用户权限。

1. 创建组

linux 实战-权限管理(完)
-g指定gid

2. 把用户拉入组中

首先创建用户karen

linux 实战-权限管理(完)

-m表示默认主目录,-s指定bash。-U创建与用户同名的组。
查看一下主目录。
linux 实战-权限管理(完)
创建成功,然后设置一下karen的密码。
linux 实战-权限管理(完)
默认不可以少于8个字符,太短的输入两次也会过。

然后把用户拉入组中。
linux 实战-权限管理(完)
查看一下是否添加成功。
linux 实战-权限管理(完)
成功了!下一步。

3. 创建一个共享文件夹

linux 实战-权限管理(完)
由于不是在主目录创建的,所以权限都是超级用户的,创建也需要加上sudo

目前这个文件夹用户权限属于超级用户,组权限也是超级用户的组。所以需要更改一下组权限。

linux 实战-权限管理(完)
linux 实战-权限管理(完)
还需要更改一下文件夹的权限。
文件夹的权限和文件的权限有所不同,大致如下:
linux 实战-权限管理(完)

linux 实战-权限管理(完)
现在,这个文件夹已经属于music用户组了,组里的用户可以在其中创建和删除文件。来尝试一下:

更改文件默认权限用umask

linux 实战-权限管理(完)

4. 更改文件所属组

只剩下最后一个问题,创建的文件不属于这个组,组里的用户也就不能对它进行操作,这不够共享。
linux 实战-权限管理(完)
它会把有效组ID从该用户的实际组ID更改为该文件所有者的组ID。如果对一个目录设置setgid位,那么在该目录下新创建的文件将由该目录所在组所有,而不是由文件创建者所在组所有。

linux 实战-权限管理(完)
可看到,组权限的x已经变成了s。表示组里的文件组权限会和文件夹一样。

linux 实战-权限管理(完)
创建文件再次验证

linux 实战-权限管理(完)
大功告成。

参考:《inux命令行大全》