Linux的学习之路:4、权限

一、Linux权限的概念

权限我们都熟悉,最常见的就是在看电视时需要vip这个就是权限,然后在Linux就是有两个权限,就是管理员也就是超级用户和普通的用户

命令:su [用户名]

功能:切换用户。

例如,要从root用户切换到普通用户user,则使用 su user。 要从普通用户user切换到root用户则使用 suroot(root可以省略),此时系统会提示输入root用户的口令,测试如下。

[root@VM-24-9-centos ~]# su ly
[ly@VM-24-9-centos root]$ su root
Password: 
[root@VM-24-9-centos ~]# su ly
[ly@VM-24-9-centos root]$ su 
Password: 
^C
[ly@VM-24-9-centos root]$ su
Password: 
[root@VM-24-9-centos ~]#

二、Linux权限管理

1、文件访问者的分类

文件和文件目录的所有者:u---User

文件和文件目录的所有者所在的组的用户:g---Group

其它用户:o---Others 

文件访问者就是这三类。

2、文件类型和访问权限

a、文件类型

d:文件夹
-:普通文件
l:软链接(类似Windows的快捷方式)
b:块设备文件(例如硬盘、光驱等)
p:管道文件
c:字符设备文件(例如屏幕等串口设备)
s:套接口文件

b、基本权限

i.读(r/4):Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限
ii.写(w/2):Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限
iii.执行(x/1):execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限 

3、文件权限值的表示方法

如下面两个表格的表示

a、字符表示方法

Linux表示说明

r--

只读
-w-仅可写
--x仅可执行
rw-可读可写
-wx可写和可执行

r-x

可读和可执行
rwx可读可写可执行
---无权限

b、8进制数值表示方法

权限符号(读写执行)八进制二进制
r4100
w2010
x1001
rw6110
rx5101
wx3011
rwx7111
---0000

4、文件访问权限的相关设置方法

使用chmod就可以修改文件的权限功能:设置文件的访问权限,格式:chmod [参数] 权限 文件名,常用选项有

chown功能:修改文件的拥有者,格式:chown [参数] 用户名 文件名 

chgrp功能:修改文件或目录的所属组,格式:chgrp [参数] 用户组名 文件名,常用选项:-R 递归修改文件或目录的所属组

umask功能:查看或修改文件掩码,新建文件夹默认权限=0666,新建目录默认权限=0777,但实际上你所创建的文件和目录,看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到umask的影响。假设默认权限是mask,则实际创建的出来的文件权限是: mask & ~umask
格式:umask 权限值,说明:将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限。超级用户默认掩码值为0022,普通用户默认为0002。

R -> 递归修改目录文件的权限
说明:只有文件的拥有者和root才可以改变文件的权限

①chmod命令权限值的格式

+:向权限范围增加权限代号所表示的权限
-:向权限范围取消权限代号所表示的权限
=:向权限范围赋予权限代号所表示的权限
用户符号:  
u:拥有者
g:拥有者同组用
o:其它用户
a:所有用户

示例如下可以看到加上可执行去掉可执行。

[root@VM-24-9-centos ~]# ll
total 132
drwxr-xr-x 5 root root   4096 Mar 24 18:50 d1
-rw-r--r-- 1 root root    179 Mar 24 18:58 d1.tgz
-rw-r--r-- 1 root root    436 Mar 24 18:50 dd.zip
-rw-r--r-- 1 root root     72 Mar 23 23:09 hello.c
-rw-r--r-- 1 root root     29 Mar 24 17:21 t1.txt
-rw-r--r-- 1 root root     29 Mar 24 17:32 t2.txt
-rw-r--r-- 1 root root 108902 Mar 24 09:01 test.txt
[root@VM-24-9-centos ~]# chmod u+x test.txt
[root@VM-24-9-centos ~]# ll
total 132
drwxr-xr-x 5 root root   4096 Mar 24 18:50 d1
-rw-r--r-- 1 root root    179 Mar 24 18:58 d1.tgz
-rw-r--r-- 1 root root    436 Mar 24 18:50 dd.zip
-rw-r--r-- 1 root root     72 Mar 23 23:09 hello.c
-rw-r--r-- 1 root root     29 Mar 24 17:21 t1.txt
-rw-r--r-- 1 root root     29 Mar 24 17:32 t2.txt
-rwxr--r-- 1 root root 108902 Mar 24 09:01 test.txt
[root@VM-24-9-centos ~]# chomd u-x test.txt
bash: chomd: command not found
[root@VM-24-9-centos ~]# chmod u-x test.txt
[root@VM-24-9-centos ~]# ll
total 132
drwxr-xr-x 5 root root   4096 Mar 24 18:50 d1
-rw-r--r-- 1 root root    179 Mar 24 18:58 d1.tgz
-rw-r--r-- 1 root root    436 Mar 24 18:50 dd.zip
-rw-r--r-- 1 root root     72 Mar 23 23:09 hello.c
-rw-r--r-- 1 root root     29 Mar 24 17:21 t1.txt
-rw-r--r-- 1 root root     29 Mar 24 17:32 t2.txt
-rw-r--r-- 1 root root 108902 Mar 24 09:01 test.txt
[root@VM-24-9-centos ~]#  

②三位8进制数字

示例如下对照上面的表就可以更改权限了。

[root@VM-24-9-centos ~]# chmod 000 test.txt
[root@VM-24-9-centos ~]# ll
total 132
drwxr-xr-x 5 root root   4096 Mar 24 18:50 d1
-rw-r--r-- 1 root root    179 Mar 24 18:58 d1.tgz
-rw-r--r-- 1 root root    436 Mar 24 18:50 dd.zip
-rw-r--r-- 1 root root     72 Mar 23 23:09 hello.c
-rw-r--r-- 1 root root     29 Mar 24 17:21 t1.txt
-rw-r--r-- 1 root root     29 Mar 24 17:32 t2.txt
---------- 1 root root 108902 Mar 24 09:01 test.txt
[root@VM-24-9-centos ~]# chmod 644 test.txt
[root@VM-24-9-centos ~]# ll
total 132
drwxr-xr-x 5 root root   4096 Mar 24 18:50 d1
-rw-r--r-- 1 root root    179 Mar 24 18:58 d1.tgz
-rw-r--r-- 1 root root    436 Mar 24 18:50 dd.zip
-rw-r--r-- 1 root root     72 Mar 23 23:09 hello.c
-rw-r--r-- 1 root root     29 Mar 24 17:21 t1.txt
-rw-r--r-- 1 root root     29 Mar 24 17:32 t2.txt
-rw-r--r-- 1 root root 108902 Mar 24 09:01 test.txt
[root@VM-24-9-centos ~]# 
 

三、思维导图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/302147.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ZLMediaKit ubantu 下编译

1、获取代码 #国内用户推荐从同步镜像网站gitee下载 git clone --depth 1 https://gitee.com/xia-chu/ZLMediaKit cd ZLMediaKit #千万不要忘记执行这句命令 git submodule update --init二、依赖库 Debian系(包括ubuntu)系统下安装依赖的方法: #除了…

Python-VBA函数之旅-ascii函数

ascii函数在Python中主要用于将对象(特别是字符和字符串)转换为它们的ASCII表示形式。这种转换在处理文本数据、调试代码以及确保文本以 ASCII 格式存储或传输时非常有用。常见应用场景有: 1、调试和文本处理:当处理包含非ASCII字符(如Unicode字符)的文…

景联文科技:为AI大模型提供高质海量训练数据

在全球AI浪潮的推动下,大量训练数据已成为AI算法模型发展和演进中的关键一环。 艾瑞咨询数据显示,包括数据采集、数据处理(标注)、数据存储、数据挖掘等模块在内的AI基础数据服务市场,将在未来数年内持续增长。 预计到…

算法:完全背包问题dp

文章目录 一、完全背包问题的特征二、定义状态三、状态转移四、降维优化五、参考例题5.1、Acwing:3.完全背包问题5.2、Acwing:900. 整数划分 一、完全背包问题的特征 完全背包问题是动态规划中的一种经典问题,它的主要特征可以总结如下&…

ES6中 Promise的详细讲解

文章目录 一、介绍状态特点流程 二、用法实例方法then()catchfinally() 构造函数方法all()race()allSettled()resolve()reject() 三、使用场景# 参考文献 一、介绍 Promise,译为承诺,是异步编程的一种解决方案,比传统的解决方案(…

2024/4/5—力扣—在排序数组中查找元素的第一个和最后一个位置

代码实现: 思路:二分法 方法一:分别查找左右侧边界 /*** Note: The returned array must be malloced, assume caller calls free().*/ int GetTargetFirstPosition(int *nums, int numsSize, int target) {int l 0, r numsSize - 1;while …

springboot无人便利店信息管理系统ssm+tomcat+java

jdk版本:1.8 及以上 ide工具:IDEA 或者eclipse 数据库: mysql 编程语言: java 框架:SSM/springboot都有 maven: 3.6.1 前端:layuibootstrapjsp 详细技术:HTMLCSSJSjspspringmvcmybatisMYSQLMAVENtomcat本文以java实现…

Jenkins使用-绑定域控与用户授权

一、Jenkins安装完成后,企业中使用,首先需要绑定域控以方便管理。 操作方法: 1、备份配置文件,防止域控绑定错误或授权策略选择不对,造成没办法登录,或登录后没有权限操作。 [roottest jenkins]# mkdir ba…

iOS 开发中上传 IPA 文件的方法(无需 Mac 电脑

引言 在 iOS 开发中,将 IPA 文件上传到苹果开发者中心是一个重要的步骤。通常情况下,我们需要使用 Mac 电脑上的 Xcode 或 Application Loader 工具来完成这个任务。然而,如果你没有 Mac 电脑,也没有关系,本文将介绍一…

Windows编译运行yolov9-bytetrack-tensorrt (C++)

Windows编译运行yolov9-bytetrack-tensorrt(C) 1 基础环境2 编译yolov9-bytetrack-tensorrt(1)下载yolov9-bytetrack-tensorrt源码(2)修改CMakeLists.txt(3)CMake编译 3 yolov9模型转…

css实现各级标题自动编号

本文在博客同步发布,您也可以在这里看到最新的文章 Markdown编辑器大多不会提供分级标题的自动编号功能,但我们可以通过简单的css样式设置实现。 本文介绍了使用css实现各级标题自动编号的方法,本方法同样适用于typora编辑器和wordpress主题…

有没有适合运动佩戴的耳机?最适合运动使用的开放式耳机推荐

哪种耳机更适合运动,挂耳式和入耳式哪种更合适呢?答案是挂耳式的耳机更适合运动,适用的场景也更多。无论你是在家还是在外面运动,都很合适。挂耳式耳机也可以叫开放式耳机,它开放式的设计可以让我们更好的感知到周围嘈…

1132A安捷伦1132A示波器探头

181/2461/8938产品概述: 带宽: 输入阻抗: 差分输入R: 50千欧差分输入C: 0.27-0.34 pF单端输入电阻:25千欧单端输入C: 0.44-0.67 pF 连通性: E2669A差分/单端连接套件E2668A单端连接套件用于InfiniiMax探头的E2675A差分浏览器套件E2677A InfiniiMax 12 GHz差分焊…

APx500音频分析仪硬件简介

两通道模拟输出,两通道或以上的模拟输入接口 线性编码数字音频接口(AES/EBU,TOSLINK,SPDIF)Linear PCM 脉冲密度调制码流(需要APx-PDM选件支持) Bluetooth蓝牙音频码流(需APx-BT选件支持) 最…

DataGrip 2024 for Mac/Win—数据库管理的得力助手

在当今的数据驱动世界中,高效地管理数据库至关重要。无论您是数据库管理员、开发人员还是数据分析师,DataGrip 2024 都是您不可或缺的工具。 DataGrip 2024 适用于 Mac 和 Win 系统,具有以下卓越特性: 全面支持多种数据库&#…

uniapp请求后端接口

新建文件夹utils const request (config) > {// 拼接完整的接口路径config.url http://mm.test.cn config.url;//这里拼接的是访问后端接口的地址,http://mm.test.cn/prod-api/testconsole.log(config.url)//判断是都携带参数if(!config.data){config.data …

【方法】PDF密码如何取消?

对于重要的PDF文件,很多人会设置密码保护,那后续不需要保护了,如何取消密码呢? 今天我们来看看,PDF的两种密码,即“限制密码”和“打开密码”,是如何取消的,以及忘记密码的情况要怎…

Android Studio 生成 keystore 签名文件及打包验证流程

一、创建keystore签名文件 1、在菜单栏中,依次点击 Build - Generate Signed Bundle/Apk...(生成签名) 2、选择 APK 选项,点击按钮 Next 到下一步 3、新建key store秘钥文件,点击按钮 Next 到下一步 4、按如下提示填写信息,点击按…

Java的Maven下载和配置步骤

Maven的下载 https://maven.apache.org/download.cgi 以Windows10版本为列,下载如图所示的格式: Maven的环境配置 以Windows10为例,进行环境变量的配置 在点击环境变量按钮之后选择系统变量,首先点击新建,把这两个参数如下图输…

Python 绘制饼图

import matplotlib.pyplot as plt # 数据 labels [A, B, C, D] sizes [20, 30, 40, 10] # 饼图 plt.figure(figsize(5, 5)) plt.pie(sizes, labelslabels, autopct%1.1f%%, startangle90) #startangle 初始角度 plt.rcParams[font.sans-serif] [Times New Roman] plt.axis(e…