shell外壳与Linux权限

🌈个人主页:Yui_

🌈Linux专栏:Linux

🌈C语言笔记专栏:C语言笔记

🌈数据结构专栏:数据结构

文章目录

  • 1.shell命令以及运行原理
  • [2. Linux权限的概念](#2. Linux权限的概念)
  • 3.Linux权限管理
    • [3.1 文件访问者的分类](#3.1 文件访问者的分类)
    • [3.2 文件类型和访问权限](#3.2 文件类型和访问权限)
      • [3.2.1 文件类型](#3.2.1 文件类型)
      • [3.2.2 基本权限](#3.2.2 基本权限)
    • [3.3 文件访问权限的相关设置方法](#3.3 文件访问权限的相关设置方法)
      • [3.3.1 chmod指令](#3.3.1 chmod指令)
      • [3.3.2 chown指令](#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系统下做任何事情,不受限制。
  • 超级用户的命令提示符是"#",普通用户的命令提示符是"$"。

命令

shell 复制代码
su [用户名]

功能

切换用户。

当我们需要从root用户切换到普通用户user_name时,则使用su user_name

要从普通用户切换到root用户则使用su root(root可以省略)/su -,此时系统会提示输入root用户的密码。
演示 :从普通用户切成root再从root切回普通用户

普通用户切换成root,需要root密码

Root用户切换成普通用户不需要密码

普通用户变成另一个普通用户需要对方的密码
sudo提权
语法

shell 复制代码
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指令

语法

shell 复制代码
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指令

语法

shell 复制代码
chown [参数]用户名 文件名

功能

修改文件的拥有者
演示 :将用户者从root改为yui

相关推荐
无为之士1 分钟前
Linux自动备份Mysql数据库
linux·数据库·mysql
戏谑5 分钟前
Android 常用布局
android·view
秋名山小桃子10 分钟前
Kunlun 2280服务器(ARM)Raid卡磁盘盘符漂移问题解决
运维·服务器
与君共勉1213811 分钟前
Nginx 负载均衡的实现
运维·服务器·nginx·负载均衡
荒古前14 分钟前
龟兔赛跑 PTA
c语言·算法
岑梓铭17 分钟前
(CentOs系统虚拟机)Standalone模式下安装部署“基于Python编写”的Spark框架
linux·python·spark·centos
努力学习的小廉18 分钟前
深入了解Linux —— make和makefile自动化构建工具
linux·服务器·自动化
MZWeiei21 分钟前
Zookeeper基本命令解析
大数据·linux·运维·服务器·zookeeper
7yewh37 分钟前
嵌入式Linux QT+OpenCV基于人脸识别的考勤系统 项目
linux·开发语言·arm开发·驱动开发·qt·opencv·嵌入式linux
Arenaschi41 分钟前
在Tomcat中部署应用时,如何通过域名访问而不加端口号
运维·服务器