一、通过权限的设置达到目录共享
在linux中通过对文件的权限设置可以充分对文件的 owner进行内容保护,也可以把内容分享给想要分享的用户。下面举例说明:
1、首先在root权限下创建一个组,三个用户,将三个用户全部添加到同一组里
groupadd gongxiang(创建一个组为gongxiang的组)
useradd -G gongxiang zhangsan(创建一个用户zhangsan加入附属组gongxiang)
useradd -G gongxiang zhangsi(创建一个用户zhangsi加入附属组gongxiang)
useradd -G gongxiang zhangwu(创建一个用户zhangwu加入附属组gongxiang)
2、创建目录,对其目录权限进行修改
mkdir -p /app/ceshi(创建目录,如果是在root下创建目录文件所属组默认为root,需要手动修改为附加组gongxiang)
chgrp gongxiang /app/ceshi(修改目录附加组为gongxiang)
chmod 775 /app/ceshi(给子目录ceshi设置对应权限,文件所属人rwx,所属组rwx,其他用户r-x,不想让其他用户进入该目录可直接设置为---)
chmod g+s /app/ceshi(给子目录ceshi设置特殊权限sgid,用户在该目录创建的文件默认为目录的附属组,而不在继承所属人的主组)
3、进入任意用户在该目录创建文件,查看文件所属附加组,进入其他用户,查看是否创建的文件可以共享,在同组用户是否都可以拥有设置好的权限。
su - zhangsan(进入zhangsan用户)
touch /app/ceshi/abc(在ceshi目录中创建abc文件)
cd /app/ceshi
ll(查看该目录文件的所属组)
二、umask默认权限设置
1、我们在linux中创建文件时,文件都有自己的默认权限。还是在/app目录下创建文件与目录。如图所示:
mkdir /app/ceshi2(创建子目录ceshi2)
ll /app/ (显示文件目录的权限)
当前创建目录后默认的权限为755,为什么是755?这里就离不开umask的设置。
umask(显示当前umask的默认值)
文件的满权限是777,这里我们可以看出当满权限减去umask的默认值时就是文件权限的默认值。
2、修改umask的默认值
通过修改umaks的默认值,我们可以减少对新创建文件设置权限的次数。
vim .bashrc(在当前根目录,进入文件修改umask配置,修改后重新启动才能生效)
当前处于普通用户,只针对某一个用户修改umask。
可以在root修改所有用户的umask的值。
vim /etc/bashrc
在配置文件的最后面输入,然后这里可以设置全部用户的umask。
三、对权限rwx的组合解释
文件 | r-- | -w- | --x | rw- | r-x | -wx | rwx |
作用 | 用户只读 | 用户可修改 | 无作用 | 可读写 | 可读并执行 | 等同于-w- | 全部权限 |
目录 | r-- | -w- | --x | rw- | r-x | -wx | rwx |
作用 | 短列目录内容 | 无作用 | 可进入目录 | 仅=r-- | 可以长列出并进入 | 可以创建并删除 | 全部权限 |
原文地址:http://blog.51cto.com/13866901/2148097
时间: 2024-10-07 08:44:41