ls -l
可以查看当前文件夹下的文件的权限,在列表的最左边,由10位构成。
第一位 指示 这个文件是 文件类型,如果是文件夹,第一位是d,如果是文件,第一位是-, 如果是符号(软)链接, 第一位是 l。
后面的9位,每3位为一组,前3位指示着文件所有者的权限,中间3位指示着组权限,后3位指示其他人的权限。
每三位都有rwx, r:read,w:write,x:execute,没有的权限用-表示。比如r-x表示可读,可执行,不可写。
su
cd /home
mkdir sales
mkdir sales/marketing
ls -l
可以看到sales 的权限:drwxr-xr-x 用户名root 组root
我们可以更改sales 的 组为 sales group
chown :sales sales/
上面这条命令的语法是这样的:
chown user:group dir/
usermod -aG sales jwang
id jwang
现在,jwang 被加入了sales group
cd /home/sales
ls -l
我们可以发现 sales里的marketing文件夹的权限仍然被 root : root 所有。如果我们切换到jwang的账户下,然后在这个文件夹里创建文件,将不被允许。
su - jwang
touch file
每一个权限,在linux里都有一个数字指代
read = 4, write = 2, execute = 1. 这些数字可以帮助我们快速设置权限。比如我们想要rwx的权限,只需要这些数字相加后的和7就可以指代rwx, 三组rwx权限就是777, 而如果最后一组(其他用户)只想要rx权限,就是4+1=5
cd /home
ls -l
sudo chmod 775 sales
这样sales的权限就变成了 rwxrwxr-x, 现在使用jwang就可以在sales文件夹下就可以创建文件了。这个文件的组属于jwang
touch file.txt
下面的命令将会新建一个文件,用户属于jwang,但是组属于sales。
newgrp sales
touch newfile