Linux 的优秀之处就在于它的多用户、多任务的系统。Linux 一般将文件可存取访问的身份分为 3 个类别,分别是 owner、group、others,且 3 种身份各有 read、write、execute 等权限。
权限的三种身份
文件所有者(owner)
用户级别的文件权限,通常为文件的创建者,可以通过 chown
修改文件所有者。
用户组(group)
如果把用户组比作团队,用户就是其中的成员,团队中的队员对于该文件都有相同的权限。可以通过 chgrp
修改文件的用户组。
用户组最有用的功能之一,就是在团队开发资源的时候。两个项目 project1
和 project2
由两个团队开发,则分别给项目分配用户组权限1、2,然后上司同时支持1、2 权限,即:每个账号都可以有多个用户组的支持。
其他人(others)
不是文件所有者而且不属于文件的用户组,就是其他人。
文件权限
定义及查看
在服务器中执行命令以下命令,查看文件相关的信息:
[root@iz2zedcscvry6t0psspzswz ~]# ls -al
total 44
dr-xr-x---. 5 root root 4096 Sep 9 12:11 .
dr-xr-xr-x. 18 root root 4096 Sep 9 12:39 ..
-rw-r--r--. 1 root root 18 Dec 29 2013 .bash_logout
-rw-r--r--. 1 root root 176 Dec 29 2013 .bash_profile
-rw-r--r--. 1 root root 176 Dec 29 2013 .bashrc
drwx------ 3 root root 4096 Oct 15 2017 .cache
-rw-r--r--. 1 root root 100 Dec 29 2013 .cshrc
drwxr-xr-x 2 root root 4096 Oct 15 2017 .pip
-rw-r--r-- 1 root root 64 Oct 15 2017 .pydistutils.cfg
drwx------ 2 root root 4096 Sep 9 12:11 .ssh
-rw-r--r--. 1 root root 129 Dec 29 2013 .tcshrc
以下示例,展示了每一列对应的含义:
文件权限 连接数 文件所有者 用户组 文件大小 修改日期 文件名
drwxr-xr-x 2 root root 4096 Oct 15 2017 .pip
文件权限部分,drwxr-xr-x
第一个字母代表文件类型,这里的 d 代表目录(directory)。d = 目录, – = 文件, l = 链接文件(linkfile)。
后面以 3 个为一组,第一组 rwx 代表文件所有者权限,第二组 r-x 代表用户组权限,第三组 r-x 代表其他用户权限。
示例中的文件,文件所有者 root 有读写可执行权限,root 用户组的用户有读和可执行权限,其他用户有读和可执行权限。
- 查看文件创建或修改的具体的日期 :
ls -al --full-time
- 查看 ls 的详细用法:
man ls
或info ls
修改文件权限
- chgrp(change group):改变文件所属用户组
- chown(change owner):改变文件所有者
- chmod(change mod):修改文件的权限
修改用户组
chgrp [-R] dirname/filename
# 将 install.log 的用户组修改为 users
chgrp users install.log
修改文件所有者
chown 可以同时修改文件所属的用户组
chown [-R] 账号名称:组名 文件或目录
# 将 install.log 的用户组和所有者改为 root
chown root:root install.log
改变文件权限
权重分配: r:4 w:2 r:1
# 将文件权限设置为 -rwxr-xr
chmod 754 filename
# 设置一个可执行文件,不让其他人修改
chmod 755 filename # -rwxr-xr-x
符号类型改变文件权限
命令 | 身份 | 操作 | 文件 | |
---|---|---|---|---|
chmod | u g o a | +(加入) -(除去) =(设置) | r w x | 文件或目录 |
身份解释: u = user, g = group,o = other, a = all
# 让文件拥有执行权限,但不知道原权限
chmod a+x filename
目录与文件的权限意义
Linux 文件是否被执行由 “x” 的权限决定,跟文件名没有绝对的关系。
文件是存放实际数据的所在,目录主要的内容是记录文件名列表。
文件的权限解释
- r:可以读取文件内容
- w:可以编辑文件内容
- x:文件具有被系统执行的权限
目录的权限解释
- r:查询该目录下的文件名数据(可以用 ls)
- w:新建、删除、重命名、转义
- x:能否进入该目录
权限的配置文件
- 账号信息: /etc/passwd
- 个人的密码:/etc/shadow
- 组名:/etc/group