用户权限-Linux系统基本权限

简介: 用户权限-Linux系统基本权限
  • 权限修改命令chmod
  • 属主属组修改命令chown
  • 基础权限设置案例

Linux中的文件或目录的权限和用户及用户组关联很大,Linux中每个文件或目录都有一组共9个基础权限位,每三个字符被分为一组,他们分别是属主权限位(占三个字符)、属组权限位(占三个字符)、其他用户权限位(占三个字符)

比如rwxr-xr-x linux中正是这9个权限位来控制文件属主(User)、属组(Group)、其他用户(Other)基础权限。

用户对资源来说, 有三种角色

  1. User(u): 属主用户(文件所有者)
  2. Group(g): 属组用户(包含组成员)
  3. Other(o): 匿名用户(其他人)

一个用户访问文件流程如下

  1. 判断用户是否为文件的所有者,如果是,按所有者的权限进行访问
  2. 判断是否为文件的所有组成员,如果是,就按组的权限去访问
  3. 最终用户就是文件的其他的人,按其他人的权限去访问

rwx, rwx, r-x

User Group Other

权限与属主属组

image.png

文件权限对应表

image.png

如果权限位不可读、不可写、不可执行,则用-来表示

权限与属主属组作用示例图

image.png

  • chown: Linux中用来改变某个文件属主的命令, 如漫画中所示, 将某个”资源”(门)的访问权限给予别人。(卖房)
  • chmod: Linux中用来改变某个文件的访问模式的命令, 如漫画中所示, chmod 777会将大门敞开, 谁都可以进出。(租房)

1.权限修改命令chmod

chmod //修改文件目录权限rwx -R级联修改
[root@liza ~]# mkdir dir        ---建立目录
[root@liza ~]# touch dir/file   ---建立文件
示例一:修改dir目录权限为777
[root@liza ~]# chmod 777 dir/
[root@liza ~]# chmod u+rwx,g+rwx,o+rwx dir/
示例二:修改file文件权限为666
[root@liza ~]# chmod 666 dir/file 
[root@liza ~]# chmod u+rw,g+rw,o+rw dir/file 
示例三:修改目录及子目录权限
[root@liza ~]# chmod -R 766 dir/

2.属主属组修改命令chown

chown //更改属主以及属组 -R:级联修改
[root@liza ~]# mkdir dir            ---创建目录
[root@liza ~]# touch dir/file_test  ---创建文件
[root@liza ~]# mkdir dir/dir_test   ---创建目录
示例一
[root@liza ~]# chown bin dir/       ---修改所属住为bin
[root@liza ~]# ll -d dir/           ---检查属主
drwxr-xr-x. 3 bin root 39 Jan  6 17:54 dir/
示例二
[root@liza ~]# chown :adm dir/      ---修改所属组为adm
[root@liza ~]# ll -d dir/           ---检查属组
drwxr-xr-x. 3 bin adm 39 Jan  6 17:54 dir/
示例三
[root@liza ~]# chown -R root:root dir/      ---递归修改目录及目录下的所有文件属主和属组
[root@liza ~]# ll -d dir/
drwxr-xr-x. 3 root root 39 Jan  6 17:54 dir/

3.基础权限设置案例

image.png

3.1、文件权限实验案例:
默认文件匿名用户仅有读权限
[root@liza ~]# echo "date" >> filename
[root@liza ~]# ll filename 
-rw-r--r--. 1 root root 5 Jan  6 18:02 filename
测试读权限(无法执行或删除)
[root@liza ~]# su - liza
[liza@liza ~]$ cat /root/filename
date
增加x执行权限
[root@liza ~]# chmod o+x /root/filename 
[root@liza ~]# ll /root/filename 
-rw-r--r-x. 1 root root 5 Jan  6 18:02 /root/filename
测试执行权限
[liza@liza ~]$ /root/filename
增加w执行权限
[root@liza ~]# chmod o+w /root/filename 
[root@liza ~]# ll /root/filename 
-rw-r--rwx. 1 root root 5 Jan  6 18:02 /root/filename
测试执行权限
[liza@liza ~]$ vim /root/filename
3.2、rwx对文件的影响
读取权限(r)

文件只有r权限: 具有读取\阅读文件内容权限

  1. 能使用查看类命令cat、head、tail、less、more
  2. 不能复制、不能移动、不能编辑,不能删除
写入权限(w)

如果文件只有w权限: 具有新增、修改文件内容的权限

  1. 使用vim编辑会提示权限拒绝, 但可强制保存,会覆盖文件的所有内容
  2. 使用echo、cat命令重定向或追加重定向技术可以往文件内写入数据
  3. 不能复制、不能移动、不能删除,(删除需要看上级目录w的权限)
执行权限(x)

文件只有x权限,具有执行文件的权限(注意: 普通用户需要有r权限,管理员不需要)

  1. 不能执行、查看、编辑、复制、移动、删除
目录权限实验案例:

实战案例1: 对目录没有w,对文件有rwx

[root@liza ~]# mkdir /dirname
[root@liza ~]# echo "test" >> /dirname/filename
[root@liza ~]# chmod 777 /dirname/filename 
[root@liza ~]# ll -d /dirname/filename 
-rwxrwxrwx. 1 root root 5 Jan  6 18:18 /dirname/filename

普通用户验证权限

[liza@liza ~]$ cat /dirname/filename 
test
[liza@liza ~]$ rm -f /dirname/filename 
rm: cannot remove ‘/dirname/filename’: Permission denied

实战案例2: 对目录有w,对文件没有任何权限

[root@liza ~]# chmod 777 /dirname/
[root@liza ~]# chmod 000 /dirname/filename 
[root@liza ~]# ll -d /dirname/
drwxrwxrwx. 2 root root 22 Jan  6 18:18 /dirname/
[root@liza ~]# ll -d /dirname/filename 
----------. 1 root root 5 Jan  6 18:18 /dirname/filename

普通用户验证权限

[liza@liza ~]$ cat /dirname/filename 
cat: /dirname/filename: Permission denied
[liza@liza ~]$ rm -f /dirname/filename 
[liza@liza ~]$ touch /dirname/filename_2
rwx对目录的影响
目录只有r权限: 具有浏览目录及子目录权限
  1. 能使用ls命令浏览目录及子目录, 同时会提示权限拒绝
  2. 能使用ls -l命令浏览目录及子目录, 会带问号,同时只能看到文件名总结: 目录只有r权限,仅仅只能浏览内的文件名,无其他操作权限
写入权限(w)

如果目录只有w权限: 具有增加、删除或修改目录内文件名权限(需要x配合)//注意: 如果目录有w权限, 可以在目录内创建文件, 删除文件(跟文件本身权限无关)

不能进入目录、不能复制目录、不能删除目录、不能移动目录

执行权限(x)

目录只有x权限

  1. 只能进入目录
  2. 不能浏览、复制、移动、删除

权限小结:

  1. 文件rw权限, 可以查看和编辑文件内容
  2. 文件rx权限, 只能查看和执行文件、不能编辑、复制、移动、删除
  3. 目录rx权限, 允许浏览目录内文件以及子目录、并允许在目录内新建文件, 不允许创建、删除文件和目录

注意事项:

  1. 文件, x权限小心给予,建议赋予r或rw即可
  2. 目录, w权限小心给予,建议无特殊需求赋予rx即可

实验

  1. 创建andy,alice用户为ateam组, 用户统一使用password为密码
  2. 要求ateam组的成员可以访问/home/ateam-text目录, 并且可以在目录下创建,删除文件, 在目录下andy创建的文件可以让alice修改.
相关文章
|
10天前
|
存储 缓存 监控
Linux缓存管理:如何安全地清理系统缓存
在Linux系统中,内存管理至关重要。本文详细介绍了如何安全地清理系统缓存,特别是通过使用`/proc/sys/vm/drop_caches`接口。内容包括清理缓存的原因、步骤、注意事项和最佳实践,帮助你在必要时优化系统性能。
129 78
|
13天前
|
Linux Shell 网络安全
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
本指南介绍如何利用 HTA 文件和 Metasploit 框架进行渗透测试。通过创建反向 shell、生成 HTA 文件、设置 HTTP 服务器和发送文件,最终实现对目标系统的控制。适用于教育目的,需合法授权。
52 9
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
|
1月前
|
缓存 Java Linux
如何解决 Linux 系统中内存使用量耗尽的问题?
如何解决 Linux 系统中内存使用量耗尽的问题?
140 48
|
9天前
|
存储 监控 Linux
嵌入式Linux系统编程 — 5.3 times、clock函数获取进程时间
在嵌入式Linux系统编程中,`times`和 `clock`函数是获取进程时间的两个重要工具。`times`函数提供了更详细的进程和子进程时间信息,而 `clock`函数则提供了更简单的处理器时间获取方法。根据具体需求选择合适的函数,可以更有效地进行性能分析和资源管理。通过本文的介绍,希望能帮助您更好地理解和使用这两个函数,提高嵌入式系统编程的效率和效果。
62 13
|
1月前
|
Ubuntu Linux 网络安全
linux系统ubuntu中在命令行中打开图形界面的文件夹
在Ubuntu系统中,通过命令行打开图形界面的文件夹是一个高效且实用的操作。无论是使用Nautilus、Dolphin还是Thunar,都可以根据具体桌面环境选择合适的文件管理器。通过上述命令和方法,可以简化日常工作,提高效率。同时,解决权限问题和图形界面问题也能确保操作的顺利进行。掌握这些技巧,可以使Linux操作更加便捷和灵活。
39 3
|
10天前
|
Ubuntu Linux C++
Win10系统上直接使用linux子系统教程(仅需五步!超简单,快速上手)
本文介绍了如何在Windows 10上安装并使用Linux子系统。首先,通过应用商店安装Windows Terminal和Linux系统(如Ubuntu)。接着,在控制面板中启用“适用于Linux的Windows子系统”并重启电脑。最后,在Windows Terminal中选择安装的Linux系统即可开始使用。文中还提供了注意事项和进一步配置的链接。
28 0
|
1月前
|
Linux
在 Linux 系统中,`find` 命令
在 Linux 系统中,`find` 命令
39 1
|
1月前
|
网络协议 Linux 虚拟化
如何在 Linux 系统中查看进程的详细信息?
如何在 Linux 系统中查看进程的详细信息?
93 1
|
1月前
|
Linux
如何在 Linux 系统中查看进程占用的内存?
如何在 Linux 系统中查看进程占用的内存?
|
21天前
|
存储 Oracle 安全
服务器数据恢复—LINUX系统删除/格式化的数据恢复流程
Linux操作系统是世界上流行的操作系统之一,被广泛用于服务器、个人电脑、移动设备和嵌入式系统。Linux系统下数据被误删除或者误格式化的问题非常普遍。下面北亚企安数据恢复工程师简单聊一下基于linux的文件系统(EXT2/EXT3/EXT4/Reiserfs/Xfs) 下删除或者格式化的数据恢复流程和可行性。