Linux之人物角色、文件访问的rwx权限以及这三种权限的修改——chmod的三种不同写法、所有者、所属组的修改——chown(可修改所有者所属组)、chgrp(仅可修改所属组)

注意:

利用ls ——可以查看当前路径下,所有文件

利用ls -a ——可以查看当前路径下,所有文件,包含隐藏文件

利用ls -l ——可以查看当前路径下,所有文件及文件的属性,不包含隐藏文件

利用ls -l 文件名——可以查看某一个文件的属性

利用ls -ld 目录名——可以查看某一个目录的属性 

一、各种角色的划分

1、在Linux系统中,对于文件的访问者分为三种人:所有者(也就拥有者、owner)、同一组的人(所属的组、所在组、group)、其它人(other)。下面分别介绍:

owner:文件的所有者,一般来说,谁创建了文件,那么它就是这个文件的所有者。

group:文件所属的工作组,一般来说,创建文件的用户所在的工作组。

other:非owner和非group。

2、在Linux系统中,用户也可以分为三种:管理员(也叫root)、普通用户(user1、user2....)、系统用户。所谓系统用户顾名思义就是既不属于管理员也不属于某个普通用户,可能是由系统中某项服务而产生的用户,或者用来管理某些文件,这些就叫系统用户。至于怎么查看,可以通过cat /etc/passwd查看系统中所有的用户信息

二、文件的访问权限

在Linux系统中,任意文件都只有三种访问权限:读、写、执行,即:r、w、x。

1、对于文件来说:

r——查看文件的内容。  比如:可以用cat 、head、less等查看文件。

w——利用vi进入文件之后,可以对文件进行编辑。

x——文件可以被执行。比如:文件里写了一段代码,可以利用./文件名的形式去运行。

2、对于目录来说:

r——能看该目录下都有哪些文件或者目录。比如:cd进入当前目录之后,利用ls能看里面都有啥东西。

w——能在该目录下创建 / 删除 / 移动文件。比如:cd进到当前目录之后,还能够利用touch、mkdir、rm、mv等命令,对文件或者目录进行创建、删除、移动的操作。

x——利用cd可以进入该目录。

备注:查看文件的属性,及各个值的含义。以查看一个ab1这个目录为例进行说明。

1——表示文件类型,常见的类型有:-表示一般文件,d表示目录,l表示链接。

2-4分别表示:所有者、所在组、其他人对于该文件的访问权限。权限顺序为:rwx,如果有此权限就写,没有就用-表示。

2——所有者对于该文件具有r、w、x 权限。

3——所在组对于该文件具有r、w 权限。

4——其他人对于该文件只具有r 权限。

5——链接数

6——所有者

7——所在组

8——文件大小

9——最后一次修改时间

10——文件名

三、修改文件r、w、x权限——chmod的三种不同写法

1、chmod [谁][动作][权限] [文件名]   例如:chmod a+w file2

 该命令下只有root 和 owner才可以用它来修改文件权限。chmod 全称change mode

格式:chmod [谁][动作][权限] [文件名]

谁——表示用户类型,常用的有:u、g、o、a,分别代表如下含义:

u——拥有者,user引申为owner

g——与拥有者同一组的用户,group

o——其他人,other

a——所有人,all

动作——表示是加上或者取消权限。

+——表示加上某项权限

——取消某项权限 

权限——表示要修改什么权限。

r——可读,w——可写,x——可执行

文件名——需要修改权限的文件。

举例:

chmod ug+w a     对于a文件来说,给拥有者和同组用户加上写的权限,
                             即:拥有者和同组用户对a文件 可写


chmod ug+rwx a        给拥有者和同组用户加上,读写执行的权限,
                                   即:拥有者和同组用户对a文件 可读、可写、可执行


chmod a+w a         给所有人加上写的权限,即:所有人对a文件 可写

chmod a-w a          给所有人减掉写的权限,即:所有人对a文件 不可写


chmod uo+wx a      给拥有者和其他人加上写和执行的权限,
                                即:拥有者和其他人对a文件 可写、可执行

举例:对一般文件的读写

[root@localhost~]#ls
a.sh
[root@localhost~]#ls -l a.sh
-rw-rw-r--. 1 root root 100 Nov 10 19:20 a.sh

[root@localhost~]#chmod u+x a.sh     # 对所有者加上执行的权限
-rwxrw-r--. 1 root root 100 Nov 10 19:20 a.sh


[root@localhost~]#cat a.sh    # 读文件
[root@localhost~]#vi a.sh     # 写文件
[root@localhost~]#./a.sh     # 执行文件

[root@localhost~]#chmod u-r a.sh     # 对所有者去掉读的权限——结果读不了了
--wxrw-r--. 1 root root 100 Nov 10 19:20 a.sh
[root@localhost~]#cat a.sh  # r 文件  
cat: a.sh: Permission denied

2、用数字代表权限     例如:chmod 777 file2

r、w、x这三个字符在计算机当中是按二进制来表示的,而二进制位置上这些数字的计算方法是:末尾是2的0次方,倒数第二个是2的一次方,依次是2的二次方...

对于rwx对应的就是421。拥有对应的权限就取该数值,没有该权限就取零。

例如:chmod 777 file2,给file2文件的所有者、所在组、其他人都赋予可读、可写、可执行的权限,即:给所有人赋予可读可写可执行的权限。

chmod 641 file2,就是对所有者赋予可读可写,所在组赋予可读,其他人赋予可执行的权限。

            

 3、直接用=代替法1的+号,给用户分别赋权限

例如:chmod u=rwx file2   ——给file2这个文件的拥有者赋予可读、可写、可执行的权限。

chmod u=rwx,g=rw,o=r file2  ——给file2这个文件的拥有者赋予可读、可写、可执行的权限;给所在组赋予可读、可写的权限;给其他人赋予只读的权限。

四、修改文件所有者、所属组——chown(二者均可修改)、chgrp(仅修改后者)

1、chown——可以修改文件所有者、所属组

该命令只有root用户可以使用。chown全称 change owner

例如:

[root@localhost~]#ls
a.sh
[root@localhost~]#ls -l a.sh
-rw-rw-r--. 1 root root 100 Nov 10 19:20 a.sh


[root@localhost~]#chown tom a.sh    # 把a.sh这个文件的所有者由root改为tom
[root@localhost~]#ls -l a.sh
-rw-rw-r--. 1 tom root 100 Nov 10 19:20 a.sh

# 把a.sh这个文件的所有者和所属组都由root改为tom
[root@localhost~]#chown tom:tom a.sh    

[root@localhost~]#ls -l a.sh
-rw-rw-r--. 1 tom tom 100 Nov 10 19:20 a.sh

[root@localhost~]# ls
a.sh
[root@localhost~]# ls -l a.sh
-rw-rw-r--. 1 root root 100 Nov 10 19:20 a.sh


[root@localhost~]# chown tom a.sh    # 把a.sh这个文件的所有者由root改为tom
[root@localhost~]# ls -l a.sh
-rw-rw-r--. 1 tom root 100 Nov 10 19:20 a.sh


[root@localhost~]# chown tom:tom a.sh     # 把a.sh这个文件的所有者和所属组都由root改为tom

[root@localhost~]# ls -l a.sh
-rw-rw-r--. 1 tom tom 100 Nov 10 19:20 a.sh

2、chgrp——只能修改文件所属组

该命令root和owner都可以使用,需要注意的是:owner只能改变到自己所在的组。

chgrp全称 change group

例如:

对于一般文件:
[root@localhost~]#ls
a.sh
[root@localhost~]#ls -l a.sh
-rw-rw-r--. 1 root root 100 Nov 10 19:55 a.sh


[root@localhost~]#chgrp tom a.sh    # 仅把a.sh这个文件所在组由root改为tom
[root@localhost~]#ls -l a.sh
-rw-rw-r--. 1 root tom 100 Nov 10 19:55 a.sh


对于目录:
[root@localhost~]# ls
dir2
[root@localhost~]# ls -ld dir2
drw-rw-r--. 1 root root 100 Nov 10 19:55 dir2
[root@localhost~]# chgrp -R tom dir2      # 仅把dir2这个文件所在组由root改为tom
[root@localhost~]# ls -ld dir2
drw-rw-r--. 1 root tom 100 Nov 10 19:55 dir2

对于一般文件:
[root@localhost~]# ls
a.sh
[root@localhost~]# ls -l a.sh
-rw-rw-r--. 1 root root 100 Nov 10 19:55 a.sh


[root@localhost~]# chgrp tom a.sh    # 仅把a.sh这个文件所在组由root改为tom
[root@localhost~]# ls -l a.sh
-rw-rw-r--. 1 root tom 100 Nov 10 19:55 a.sh


对于目录:

[root@localhost~]# ls
dir2
[root@localhost~]# ls -ld dir2
drw-rw-r--. 1 root root 100 Nov 10 19:55 dir2
[root@localhost~]# chgrp -R tom dir2      # 仅把dir2这个文件所在组由root改为tom
[root@localhost~]# ls -ld dir2
drw-rw-r--. 1 root tom 100 Nov 10 19:55 dir2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值