wordpress 网站标题品牌策划费用
🌈个人主页:Yui_
 🌈Linux专栏:Linux
 🌈C语言笔记专栏:C语言笔记
 🌈数据结构专栏:数据结构
文章目录
- 1.shell命令以及运行原理
 - 2. Linux权限的概念
 - 3.Linux权限管理
 - 3.1 文件访问者的分类
 - 3.2 文件类型和访问权限
 - 3.2.1 文件类型
 - 3.2.2 基本权限
 
- 3.3 文件访问权限的相关设置方法
 - 3.3.1 chmod指令
 - 3.3.2 chown指令
 
1.shell命令以及运行原理
Linux严格意义上来说是一个操作系统,我们称其为“核心”(kernel),但是我们一般用户不能直接操作kernel的,而是通过kernel的外壳程序,也就是所谓的shell来与kernel沟通。如何理解?为什么不能直接使用kernel?
 从技术角度,shell的最简单定义:命令行解释器(command interpreter)功能:
- 将使用者的命令翻译给核心处理。
 - 同时,将核心的处理结果翻译给使用者。
对比Windows GUI,我们操作Windows不是直接操作Windows内核,而是通过图形接口,点击,从而完成我们的操作(比如进入D盘的操作,我们通常是双击D盘盘符)
shell对应Linux,有相同的作用,主要对我们的指令进行解析,解析指令给Linux内核,反馈结果再通过内核运行出结果,通过shell解析给用户。 - Shell本质也是一个执行起来的程序(进程),系统启动期间一直存在
 - 每次你进行xshell登录时候,OS都会给你这个用户的当前登录新启动一个行的shell,bash
 
2. Linux权限的概念
Linux下有两种用户:超级用户(root)、普通用户。
- 超级用户:可以在Linux系统下做任何事情,不受限制。
 - 超级用户的命令提示符是"#“,普通用户的命令提示符是”$"。

 
命令:
su [用户名]
 
功能:
 切换用户。
 当我们需要从root用户切换到普通用户user_name时,则使用su user_name
 要从普通用户切换到root用户则使用su root(root可以省略)/su -,此时系统会提示输入root用户的密码。
 演示:从普通用户切成root再从root切回普通用户
 
普通用户切换成root,需要root密码
 Root用户切换成普通用户不需要密码
 普通用户变成另一个普通用户需要对方的密码
 sudo提权
 语法:
sudo 加其他指令
 
功能:
 暂时拥有root权限
 sudo 对指定的指令提权,当root用户把用户拉人"信任"名单后,用户就可以使用sodo提权了
 演示:利用root权限修改文件的所有者为root
 
3.Linux权限管理
3.1 文件访问者的分类
- 文件和文件目录的所有者:u—user
 - 文件和文件目录的所有者所在的组的用户:g—Group
 - 其他用户:o—Other
 
3.2 文件类型和访问权限

下面来解释一下红色框住的内容:
 

3.2.1 文件类型
- d:文件夹
 - -:普通文件
 - l:软连接(类似Windows的快捷方式)
 - b:块设备文件(例如硬盘,光驱等)
 - P:管道文件
 - c:字符设备文件(例如屏幕等串口设备)
 - s:套接口文件
 
3.2.2 基本权限
r:read
 对文件来说,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限。
 w:write
 对文件来说,具有修改文件内容的权限;对目录来说,具有删除移动目录文件的权限。
 x:execute
 对文件来说,具有执行文件的权限;对目录来说,具有进入目录的权限。
 -:
 表示不具有该项权限。
3.3 文件访问权限的相关设置方法
3.3.1 chmod指令
语法:
chmod [参数]权限 文件名
 
功能:
 设置文件的访问权限。
 常用选项
- +:向权限范围增加权限代号所表示的权限
 - -:向权限范围取消权限代号所表示的权限
 - =:向权限范围赋予权限代号所表示的权限
 - u:拥有者
 - g:所属组
 - o:其他用户
 - a:所有用户
演示:

 
方法2:三位8进制数字。
| 权限符号 | 八进制 | 二进制 | 
|---|---|---|
| r– | 4 | 100 | 
| -w- | 2 | 010 | 
| –x | 1 | 001 | 
| rw- | 6 | 110 | 
| r-x | 5 | 101 | 
| -wx | 3 | 011 | 
| rwx | 7 | 111 | 
| — | 0 | 000 | 
| 演示:先把file.txt赋予所有权限,再恢复原样。 | 

3.3.2 chown指令
语法:
chown [参数]用户名 文件名
 
功能:
 修改文件的拥有者
 演示:将用户者从root改为yui
 
