目录
一、基本介绍
在Linux中,一个用户属于一个组;当我们创建一个用户后,默认会在/home/xx 创建一个和用户名相同的目录,该目录就是用户家目录;当一个用户登录后,默认会切换到/home/xx目录;一个用户默认是不能进入到其他用户目录;用户权限体现在对文件的操作。
二、文件/目录的所有者
文件的创建者就是文件的所有者。
1.查看文件的所有者
ls -ahl 文件/目录 //查看文件的所有者
输出结果显示依次为:文件类型与权限、链接数、文件属主、文件属组、文件大小、建立或最近修改的时间、文件名字。后面有详细介绍。
2.修改文件所有者
chown [选项] [最终用户] [文件或目录] //改变文件或目录的所有者
chown [选项] [最终用户:最终组] [文件或目录] //改变文件或目录的所有者和所有组
选项说明
选项 | 功能 |
-R | 递归操作 |
举个例子:
(1)将 a.txt 文件的所有者改为 Billie
chown Billie a.txt
(2)递归改变文件所有者和所有组
chown -R Billie:grp_2 hello/
三、文件/目录的所在组
1.修改文件/目录所在组
charp [最终用户组] [文件或目录] // 改变文件或目录的所属组
举个例子:
修改 a.txt 文件所属组为 grp_2
chgrp grp_2 a.txt
2.修改用户所在组
usermod [选项] 用户组 用户名
选项说明
选项 | 功能 |
-g | 修改用户的初始登录组,给定的组必须存在。默认组id是1 |
四、权限的基本介绍
ls -l 中显示如下:
-rwxrw-r-- 1 root grp_2 1213 feb 2 08:43 a.txt
参数说明
位数 | 说明 |
第 0 位 | 文件类型(-:普通文件;d:目录;l:连接文件;c:字符设备文件;b:块设备文件) |
第 1-3 位 | 文件所有者拥有该文件的权限 |
第 4-6 位 | 文件所属组拥有该文件的权限 |
第 7-9 位 | 其他用户拥有该文件的权限 |
1 | 如果是文件,表示硬链接数目,如果是文件夹,则表示子目录的个数 |
root |
文件所有者 |
grp_2 | 文件所属组 |
1213 | 文件大小,如果是目录,则统一为4096 |
feb 2 08:43 | 表示文件建立或最近修改的时间 |
a.txt | 文件名 |
五、rwx权限详解
1.rwx作用到文件
(1)r 代表可读:可以读取、查看。
(2)w 代表可写:可以修改,但不可以删除文件,删除一个文件的前提是对该文件有写权限。
(3)x 代表可执行:可以被执行。
2.rwx作用到目录
(1)r 代表可读:可以读取、查看。
(2)w 代表可写:可以修改,目录内创建、删除、重命名目录。
(3)x 代表可执行:可以进入该目录。
六、修改权限
通过chmod指令,可以修改文件或目录的权限。
(1)第一种方式:+-=变更权限
chmod [{ugoa}{+-=}{rwx}] 文件或目录
u:所有者 g:所有组 o:其他人 a:所有人
(2)第二种方式:数字变更权限
chmod [mode=421] [文件或目录]
r=4 w=2 x=1 rwx=4+2+1=7 rw=4+2=6 rx=4+1=5 wx=2+1=3
举个例子:
(1)chmod u=rwxg=rx,o=x 文件or目录 //表示给所有者rwx权限,给所在组用户rx权限,给其他人x权限。
(2)chmod 751 文件or目录 等同于 chmod u=rwxg=rx,o=x 文件or目录