Linux用户权限
Linux权限:
Linux 用户身份与用户组记录的文件:
/etc/passwd :记录用户的数据
/etc/shadow:记录密码数据
/etc/group : 记录组名
Permission deny :不符合权限的报错
ls -al :查询linux 文件的属性
drwxr-xr-x. 3 root root 151 5月 28 14:10;
-rwxrwxrwx. 1 root root 224 5月 28 12:32;
以上两个例子:
第一个字符表示文件的属性:d(目录),-(文件);l(表示为连接档link file),b(表示为装置文件里面的可供储存的接口设备==》可随机存取装置);c(装置文件里面的串行端口 设备==》键盘,鼠标。。一次性读取装置)c
后面9位分为三组,每组都是rwx(位置和顺序不变,若无对应的权限用“-”表示)r:表示read;
w:write;x:execut。三个字符分表表示可读(r),可写(w),可执行(x)。
第一组rwx:表示文件所有者权限;
第二组rwx:表示同组用户的权限
第三组rwx:表示其他非本组用户的权限;
例如:-rw-r--r--:表示这个是文件,文件所有者拥有可读可写的权限,同组用户拥有可读权限,非本组用户拥有可读权限。
Linux改变文件属性与权限:
chgrp命令:改变文件所属的用户组
chgrp + dirname + filename
dirname:组名
filename:文件名
例如:
~]# ls -l
~]# -rw-r--r--. 1 root root 05 28 15 : 14 test1.txt
改变用户组的权限,从root改为test
~]# chgrp test test1.txt
~]# ls -l
~]# -rw-r--r--. 1 root test 05 28 15 : 17 test1txt
拓展:chgrp -R dirname filename (-R:进行递归的持续变更,连同次目录下所有的文件、目录都更新成为这个群组。一般用在变更一目录内所有的文件的情况。)
chown命令:改变文件所有者
chown +账号名称+ 文件或目录
chown+账号名称:组名+文件或目录
(chown -R +账号名称 + 文件或目录 ==》递归持续的变更)
将test1.txt文件的拥有者从root变成bin:
~]# ls -l
~]# -rw-r--r--. 1 root root 05 28 15 : 14 test1.txt
~]# chown bin test1.txt
~]# -rw-r--r--. 1 bin root 05 28 15 : 18 test1.txt
将test1.txt文件的拥有者和群组改回root;
~]# ls -l
~]# -rw-r--r--. 1 bin test 05 28 15 : 17 test1txt
~]# chown root:root test1.txt
~]# -rw-r--r--. 1 root root 05 28 15 : 19 test1.txt
chmod改变文件权限
~]#chmod [-R] + xyz +文件或目录 ==》xyz指就是刚刚提到的数字类型的权限属性,为 rwx 属性数值的相加 (1)user (2)group (3)others 我们可以用u,g,o三种代表三种身份的权限。a==>all代表所有.
开放test1.txt所有权限;
~]# chmod a=rwx test1.txt
~]# -rwxrwxrwx. 1 root root 05 28 15 : 19 test1.txt
开放拥有着读写权力,群组和非本群组的可读权力:
~]# chmod u=rw,go=r test1.txt
~]# -rw-r--r--. 1 root root 05 28 15 : 14 test1.txt
~]# chmod a+x test1.txt ==> 开放拥有者,群组和非本群组的可执行权力
~]# -rwxr-xr-x. 1 root root 05 28 15 : 14 test1.txt
~]# chmod 777 test1.txt ==>r代表数值4;w代表数值2;x代表数值1.
~]# -rwxrwxrwx. 1 root root 05 28 15 : 19 test1.txt