Linux——权限

文章目录

1.权限

在Linux下存在两种用户:root(超级用户)、普通用户

超级用户:可以在Linux系统下做如何事情,不会受到限制

普通用户:在Linux下部分操作会受到限制。

区分

powershell 复制代码
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# ls
a.out  blog  code  code.c  tmp  trash  yui.txt
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# pwd
/root
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# whoami
root
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# su yui
[yui@iZbp19b5lvg8xtpf1tzrenZ root]$ ls

root用户的命令提示符为'#' 普通用户的提示符为'$'.

也可以运用指令:whoami

1.1用户切换

切换命令:su

功能:切换用户

实现:

root 切换 普通用户,直接用su 然后加用户名

powershell 复制代码
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# whoami
root
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# su yui
[yui@iZbp19b5lvg8xtpf1tzrenZ root]$ ls

普通用户切换root用户 su root(root可省略)

需要输入root密码

powershell 复制代码
[yui@iZbp19b5lvg8xtpf1tzrenZ ~]$ su -
Password://(密码不回显)
Last login: Fri Apr 26 11:11:36 CST 2024 on pts/0
Last failed login: Fri Apr 26 11:14:00 CST 2024 on pts/0
There was 1 failed login attempt since the last successful login.
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# ls
a.out  blog  code  code.c  tmp  trash  yui.txt
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# whoami
root

2.Linux权限管理

我们都知道文件有两个性质:读和写。其实在此之外还要包括可执行。所以这三个属性构造了文件的三的属性,是否可读,是否可写,是否可执行。

Linux权限的管理也就是针对这三个方面。

然后下面介绍在Linux下,系统把文件的操作者也分成了三类:文件的所有者,文件的所属组,其他人。这三中分类也就是文件的访问者的分类。

2.1.文件访问者的分类

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

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

其他用户: o----other

2.2文件类型和访问权限

powershell 复制代码
-rwxr-xr-x 1 root root 8480 Feb  3 11:03 a.out
-rw-r--r-- 1 root root    8 Jan 31 11:08 file.txt
drwxr-xr-x 2 root root 4096 Apr 26 11:27 test
-rw-r--r-- 1 root root   76 Feb  3 11:03 test.c
-rw-r--r-- 1 root root   70 Jan 31 11:26 yui.txt

drwxr-xr-x 2 root root 4096 Apr 26 11:27 test

以这个为例

首先d的位置 :表示文件类型,这里就是目录

然后 rwx r-x r-x 每3个为一组,第一组为所有者权限,第二组为所属组权限,第三组为其他人权限

然后r表示为可读,w表示为可写,x表示为可执行

后面的1表示为链接数,1后面的root为所有者,再后面一个为所属组,

4096为文件大小

Apr 26 11:27最新修改时间

test文件名

下面我们用图片表示,更加深刻的认识他们。

2.2.1文件类型

d:文件夹

-:普通文件

l:软链接(类似Windows的快捷方式)

b:块设备文件(例如硬盘、光驱等)

p:管道文件

c:字符设备文件(例如屏幕等串口设备)

s:套接口文件

2.2.2基本权限

i.读(r/4): Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限

ii.写(w/2): Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限

iii.执行(x/1): execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限

iv."---"表示不具有该项权限

2.3文件权限值的表达方法

字符表表达法

如r - -表达只读

    • x表达仅执行
  • w x 可读和可执行
    其他类似,就不写了。

8进制数值表示法

权限符合 8进制 2进制
r 4 100
w 2 010
x 1 001
rw 6 110
rx 5 101
wx 3 011
rwx 7 111

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

2.4.1chmod指令

功能:设置文件的访问权限

格式:chmod [参数] 权限 文件名

只有文件的拥有者和root用户才可以改变文件对的权限

用户表示符+ - 权限字符

下面我用root用户来进行演示

powershell 复制代码
-rw-r--r-- 1 root root 0 Apr 26 11:59 test.txt
[root@iZbp19b5lvg8xtpf1tzrenZ test]# chmod u+x test.txt
[root@iZbp19b5lvg8xtpf1tzrenZ test]# ll
total 0
-rwxr--r-- 1 root root 0 Apr 26 11:59 test.txt
[root@iZbp19b5lvg8xtpf1tzrenZ test]# 

利用a 为所有用户加上所有权限然后减去所有权限

powershell 复制代码
-rwxr--r-- 1 root root 0 Apr 26 11:59 test.txt
[root@iZbp19b5lvg8xtpf1tzrenZ test]# chmod a+rwx test.txt
[root@iZbp19b5lvg8xtpf1tzrenZ test]# ll
total 0
-rwxrwxrwx 1 root root 0 Apr 26 11:59 test.txt
[root@iZbp19b5lvg8xtpf1tzrenZ test]# chmod a-rwx text.txt
chmod: cannot access 'text.txt': No such file or directory
[root@iZbp19b5lvg8xtpf1tzrenZ test]# chmod a-rwx test.txt
[root@iZbp19b5lvg8xtpf1tzrenZ test]# ll
total 0
---------- 1 root root 0 Apr 26 11:59 test.txt

利用八进制法来修改文件权限

powershell 复制代码
[root@iZbp19b5lvg8xtpf1tzrenZ test]# ll
total 0
---------- 1 root root 0 Apr 26 11:59 test.txt
[root@iZbp19b5lvg8xtpf1tzrenZ test]# chmod 777 test.txt
[root@iZbp19b5lvg8xtpf1tzrenZ test]# ll
total 0
-rwxrwxrwx 1 root root 0 Apr 26 11:59 test.txt
[root@iZbp19b5lvg8xtpf1tzrenZ test]# chmod 750 test.txt
[root@iZbp19b5lvg8xtpf1tzrenZ test]# ll
total 0
-rwxr-x--- 1 root root 0 Apr 26 11:59 test.txt


相关推荐
x-cmd5 分钟前
[250331] Paozhu 发布 1.9.0:C++ Web 框架,比肩脚本语言 | DeaDBeeF 播放器发布 1.10.0
android·linux·开发语言·c++·web·音乐播放器·脚本语言
weitinting17 分钟前
Ali linux 通过yum安装redis
linux·redis
myloveasuka30 分钟前
[Linux]从硬件到软件理解操作系统
linux·开发语言·c++
DreamBoy@34 分钟前
【408--考研复习笔记】操作系统----知识点速览
笔记
CC.cc.37 分钟前
Linux系统之systemctl管理服务及编译安装配置文件安装实现systemctl管理服务
linux·运维·服务器
UpUpUp……1 小时前
特殊类的设计/单例模式
开发语言·c++·笔记·单例模式
qq_339282231 小时前
docker之network
运维·docker·容器
ghostwritten1 小时前
k8s黑科技:Linux+Vagrant+VirtualBox开启Kubernetes奇幻之旅
linux·科技·kubernetes
the_nov2 小时前
14.网络套接字TCP
linux·c++·网络协议
电星托马斯2 小时前
C++中顺序容器vector、list和deque的使用方法
linux·c语言·c++·windows·笔记·学习·程序人生