一一对应
一、linux用户的切换
指令:su 或者 su - 它们的区别在于su只是角色的切换,su - 是以root账号重新登入
超级用户符号:#
普通用户符号:$
(1) 以普通用户登入切换超级用户 :需要输入root密码
(2)普通用户切换到另一个普通用户:需要输入另一个普通用户的密码
(3)超级用户切换到普通用户:不用输入密码,直接切换
超级用户的权限比普通用户大,可以执行普通用户执行不了的指令
如果一定要执行root权限下的指令需要root账号将用户添加入白名单,然后就可以执行了
只要在指令前加sudo 例如sudo touch test。
注意:不在白名单的用户即使sudo 也是没有权限的。
二、文件的权限
1.Linux中文件角色:
可分为(u),拥有组(g),其他(o)。
user是拥有者,,第二个user是所属组,不在所属组或者不是文件的拥有者就是其他了。
指令:ll+当前目录下的文件名 查看属性
每一个文件的前面的-rw-rw-r--是文件的权限属性。
-表示这个是文件;d表示是一个目录。
第一个user表示是这个文件的拥有者,第二个user表示所属组;后面然后是文件修改的时间,最后面是文件名。(可看前面的图)
2.角色对应的文件属性权限
-rw-rw-r--:
一共10个字符,最前面一个字符代表文件类型,其中3个字符代表文件的不同属性:r(读),w(写),x(可执行)
拥有者:user对应的该文件的属性权限:rw-表示user拥有对该文件的读写权限
所属组user(可添加,如果只要自己的话与拥有者同名):rw-表示拥有读写权限
小细节:如果所属组和拥有者名相同的话,但权限不同,linux会默认先匹配拥有者。
如果不同,就会向后匹配。
其他组:r--只要读的权限
三,文件权限的修改
1.chmod
普通文件
指令:chmod u/o/g/a +/- r/w/x +文件名。a代表all(oug)
(1)修改所属组(g)
(2)修改所有者(u)
(3)修改其他组(o)
我们也可以对它们一起修改,随意搭配 ,用逗号分隔开
如果要对拥有者所属组其他一起修改相同的,可以使用a(all)
2.修改文件角色
前提:必须是root或者用户sudo短暂提权
指令:chown /chgrp + 存在的 用户/root +文件名
(1)所有者(u)
(2)修改所属组(g)
这样我们就可以决定哪些人可以对该文件有读写的权限了。但是对于root而言这些权限形同虚设。
2.文件权限的八进制表示
xrw:一共有八种可能性,例子我们用0或者1表示
如果我要把文件件权限修改为-rwxrwxrwz 。二进制表示为111111111-->八进制:777.
1.目录文件
我们之前所说的文件权限都是普通文件前缀都是以 - 开头的
目录也是一个文件它的类型是开头 d
r:查看目录信息
w:在该目录下操作,创建文件,修改/写入/删除文件,创建目录等
x:是否可进入该目录,这个是目录的基础。
2.删除文件
文件的删除关键在于这个目录的所属是谁,谁就有权力删除这个文件,即使这个文件是root的除非这个目录设置了沾滞位(t)。
3.公共目录/tmp和沾滞位(t)
不同用户的目录是隔离的,不可以相互访问除了/tmp公共目录任何用户都可以进入到该目录下
任何人都拥有该/tmp目录,也就是任何人可以对该目录下的文件进行删除,一个用户写的文件另一个用户都有权把它删除了,这不合理。于是有了t替代了x,表示该目录它既有x的属性也让只有该文件的所有者有权利删除,即使这个目录是你的。。
我们可以使用命令:chmod +t 设置目录沾滞位
4.文件掩码umask
规则:mask&~umask
查看/修改默认掩码:普通用户的是0002 超级用户(root)0022
(1)创建的文件掩码
默认是 666,实际看到的是664
解释:八进制666--->二进制 110 110 110
(普通用户)umask:000 000 010----->~umask:111 111 101
实际看到的掩码:mask&~umask ----->111 111 101&
110 110 110
结果: 110 110 100(664)
(2)创建的目录文件掩码
默认是777,实际是775.规则都是mask&~umask
(3)修改掩码/查看
四.文件的类型
linux下文件的类型不以文件后缀区分,当然写了是为了让别人更好的区分。
常见的文件类型:管道文件,普通文件,目录文件,链接文件,设备文件
1.查看文件类型指令
功能说明:辨识文件类型。
语法:file [选项] 文件或目录...
常用选项: -c 详细显示指令执行过程,便于排错或分析程序执行的情形。
-z 尝试去解读压缩文件的内容