项目二 管理与维护Linux系统 任务六

任务六    管理Linux系统的文件权限

第1步:认识文件权限说明

       使用Linux的同学都知道,在Linux下列出当前目录下的文件和子目录的命令是 ls, 同时 ls 又有许多参数,我们现在要查看文件的类型和权限使用ls -al.

项目二 管理与维护Linux系统 任务六

-r-xr-xr-x 这个字符串我们需要分成两部分来看,第一部分是第一个字符,代表文件的类型;

linux下文件的类型通常有以下几类:

d : 代表一个目录; 

- : 代表一个普通文件; 

l : 代表一个普通文件; 

b : 代表设备文件里面的可供存储的接口设备; 

c : 代表设备文件里的串行端口设备;

比较常见的就是前三种文件类型,那么此时我们知道了test 是一个普通文件;

那么-r-xr-xr-x 剩余的那部分有代表了什么意思呢?代表了文件的权限;

我们可以又将 r-x r-x r-x 分为三部分来看,三个字符一组;

前三个字符代表的是文件的属主(文件的拥有者)的权限:Owner ; 

中间三个字符代表文件的属组的同组其它用户的权限: Group; 

最后三个字符就代表剩余的其它用户的权限:Others;

r ( read,读取 ):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。

w ( write,写入 ):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。

x ( execute,执行 ):对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限。、- :不具备任何权限。

第2步:使用【chmod】命令改变文件或目录的访问权限

       在本文模式下,可执行【chmod】命令改变文件或目录的权限

【chmod 777 123.txt】把123.txt 文件的权限设置为777。

【chmod 777 /home/user]仅把/home/ user 目录的权限设置为rwxrwxrw。

【chmod -R 777 /home/ user】将整个/home/user 目录与其中的文件和子目录的权限都设置为rwxrwxrwx 。

【chmod u==rwx,g==rx,o==rx 123.txt】把123.txt 文件设置为755 的权限。

这里的u=rwx代表user(文件的拥有者)的权限等于rwx,g=rx代表group(所属组)的权限等于rx,o=rx 代表other(其他人)的权限等于rx。

第3步:更改文件所以者以及所属组

       使用【touch 123.txt】命令创建一个文件后再执行【ls -l】或【ll】命令查看文件的情况。

项目二 管理与维护Linux系统 任务六

【chown yhy 123.txt】把123.txt文件的拥有者改为yhy用户。

【ls -l】查看文件的详细信息。

       要改变所属组,可使用【chown:wq 123.txt】命令把123.txt文件的所属组改为wq,然后使用【ls -l】命令查看文件的详细信息

项目二 管理与维护Linux系统 任务六

要改变所属组,可使用【chown:wq 123.txt】命令把123.txt文件的所属组改为wq,然后使用【ls -l】命令查看文件的详细信息。

项目二 管理与维护Linux系统 任务六

 要修改目录的权限,使用-R参数就可以了,方法和前面一样。

除了可以通过【chown】命令改变文件的拥有者以及所属组外,还可以通过【chgrp】命令改变文件的所属组。

【chgrp yangs /ect/123.txt】修改/etc/a.txt属组为yangs。

【chmod yhy.zck a.txt】或【chmod yhy:zck a.txt】把a.txt文件的拥有者改为yhy,所属组改为zck。


第4步:认识umask

        默认的权限可用【umask】命令修改,用法非常简单,只需执行【umask 777】命令,便代表屏蔽所有的权限,因而之后建立的文件或目录,其权限都变成000,依此类推。

项目二 管理与维护Linux系统 任务六

当执行【umask 777】命令后,再建立的文件夹的权限为000。

       通常/root账号搭配【umask】命令的数值为022、027和077,普通用户则是采用002,这样所产生的权限依次为755、750、700和775。用户登录系统时,用户环境就会自动执行【umask】命令来决定文件、目录的默认权限。


第5步:识别特殊权限

       Linux 引人suid,sgid.sticky 这3 种特殊权限,能够更加方便、有效和安全地控制文件。在一个目录或文件上加人suid 特殊权限时,如果原来目录或文件的属主具有x(执行)权限,就会用小写的s来替代x,如果原来文件或目录不具有x(执行)权限,就会用大写的S来代替x。同样sgid、sticky和suid相同。如果在一个文件或目录上加入sticky权限时,若原文件或目录的其他用户有x权限时,就用小写t代替x;如果没有就用大写T来代替x。可以用chmod的字符或数字的方式修改特殊权限。从图的操作结果来看,对于test1这个文件、属组、其他人都没有执行权限,其权限用数字表示为644,通过【chmod 7644 test1】命令都加上特殊权限,然后再通过【ll】命令查看,发现属主、属组、其他用户的执行权限变为S、S、T。

       对于test2这个文件,属主、属组、其他人都有执行权限,其权限用数字表示为755,通过【chmod 7755 test1】命令都加上特殊权限,然后再通过【ll】命令查看,发现属主、属组、其他用户的执行权限变为s,s,t。


第6步:识别文件颜色

       在Linux中文件名颜色不同,代表文件类型不一样。具体如下:

浅蓝色:表示链接文件;

灰色:表示其他文件;

绿色:表示可执行文件;

红色:表示压缩文件;

蓝色:表示目录;

红色闪烁:表示链接的文件有问题了;

黄色:表示设备文件,包括block、char、fifo。

用【dircolors -p】命令可以看到默认的颜色设置,包括各种颜色和“粗体”,下画线,闪烁等的定义。

【touch a. txt】创建的一般文件,文件颜色变为白色。

chmod 755 a. txt】增加可执行权限后,文件颜色变为绿色。

【ln /etc/abc. txt 345. txt】执行该命令后,文件颜色变为天蓝色(建立 345. txt为/etc/abc.txt 345.txt的快捷方式)。


第7步:总结常用的几个命令

       CentOS中常用的有关权限的几个命令以及释义如下,熟悉他们会让你的运维会事半功倍。

【chmod u+x,g-x,o=x test】 所有者加上执行权限,组成员减少执行权限,其他成员设置为执行权限。

【chmod –R 766 ./】修改当前目录权限,要求里面的所有文件和文件夹的权限修改为766。

【chown user1:G3 zip.zip】修改zip.zip的所有者为user1,所有组为G3。

【umask】查看当前umask参数。

【ll /home/dir1】显示目录dir1的详细信息,记录目录的权限信息。

【umask 066】改变umask参数为066。

【chmod g+w /home/dir1】为dir1的同组用户增加写权限。

【chmod 755  /home/dir1】改变file1的文件权限为755。