目录
1. Linux权限的概念
1.1 什么是权限
一件事情是否允许被特定的人做
比如:假如你是个未成年,网吧是供人们上网娱乐的,而你却不能进入,成年人能进入。
上网娱乐就是网吧的属性,而成年人有权限进入,未成年就没有
权限 = 人 + 事物的属性
1.2 所以权限的操作一共分为两类
人:修改人
属性:修改属性
1.3 Linux中,默认有两类用户
• root:超级管理员,具有非常高的权限
• 普通用户:需要一般权限,需要受权限约束的(个人所创建的用户)
• 超级用户的命令提示符是“#”,普通用户的命令提示符是“$“
2. root与普通用户切换指令
2.1 如果想从普通用户转为超级用户可以进行下面操作
su - //命令行输入su - 后输入超级用户密码即可登录
2.2 如果想从超级用户转为普通用户可以进行下面操作
su - username //username为你所创建的用户名,此次不需要输入密码
由此我们从输入密码可以看出来,root真是无所不能,做什么都不受限制。
切记:不要将超级用户(root)密码和普通用户密码设置为一样的,不仅不安全容易被破解,而且这也会导致权限界限不清楚
2.3 禁止来回切换用户
并且不要来回切换用户,假如用完了可以exit退出,或者ctrl+d退出。
原因:
目前我们有两个命令处理器bash
在经过三次切换用户时,每切换一次就会增加一个bash
3. 某条指令利用root权限
那我们有时只想用root权限做某一件事,没有其他需求,应该怎么办呢?
比如想要用root权限添加一个txt文件
sudo touch root.txt
问题来了!系统报错显示xcx不在sudoers文件中,这个情况将被上报
哥们我也是上网查找答案,解决的这个问题 ---> 解决方案 <---点这里
解决后就可以执行命令了,我们也可以看出root.txt是由root权限所创建的
4. Linux中的用户类别
4.1 用户类别
1. 拥有者 owner
2. 所属组 group
3. 其他 other
拥有者,所属组,other :指的是一种角色身份
| \ /
root 普通用户
5. 文件类型
Linux下一切皆文件!
5.1 文件类型标识符
-: 普通文件[文本,各种动静态库,可执行程序,源程序]
d:目录文件
c:字符设备文件(键盘与显示器)
b:块设备文件(磁盘、光驱)
p:管道文件(通信)
s:套接口文件
l: 链接文件
5.2 文件中对不同操作者的权限
6. 文件权限值的表达方式
6.1 字符表示法
r:read 读
w:write 写
x:execute 执行
Linux表示 | 说明 | Linux表示 | 说明 |
r-- | 只读 | -w- | 仅可写 |
--x | 仅可执行 | rw- | 可读可写 |
-wx | 可写可执行 | r-x | 可读可执行 |
rwx | 可读可写可执行 | --- | 无权限 |
6.2 8进制数值表示法
权限符号(读写执行) | 八进制 | 二进制 |
r | 4 | 100 |
w | 2 | 010 |
x | 1 | 001 |
rw | 6 | 110 |
rx | 5 | 101 |
wx | 3 | 011 |
rwx | 7 | 111 |
--- | 0 | 000 |
7. 文件访问权限的相关设置方法
7.1 chmod
功能:访问文件的访问权限
格式:chmod[参数] 权限 文件名
常用选项:
• R -> 递归修改目录文件的权限
• 说明:只有文件所有者和root才可以改变文件权限
chmod命令权限值的格式
①用户加表示符+/-=权限字符
• +:像权限范围内增加权限代号所表示的权限
• -:像权限范围内取消权限代号所表示的权限
• =:像权限范围内赋予权限代号所表示的权限
• 用户符号:
• u:拥有者
• g:拥有者同组
• o:其他用户
• a:所有用户
实例:
# chmod u+w /home/abc.txt
# chmod o-w /home/abc.txt