Linux/Centos文件授权用户文件夹权限介绍
一、Linux文件权限介绍
在Linux中,一切皆为文件(目录也是文件),每个文件对用户具有可读(read)、可写(write)、可执行(excute)权限。目录的执行操作表示是否有权限进入该目录并操作执行该目录,文件都会从属于一个用户和一个用户组,每个文件针对文件的拥有者、所属组以及其他用户组具有特定权限。
1.1、查看文件权限示例
[root@hhm ssm]# ls -la
total 59596
drwxr-xr-x 2 root root 1024 Nov 18 15:44 .
drwxrwxr-x 6 zsitd zsitd 40 Nov 6 14:39 ..
-rw-r--r-- 1 root root 150 Jul 27 10:02 appsettings.Development.json
-rw-r--r-- 1 root root 542 Nov 3 13:52 appsettings.json
-rw-r--r-- 1 root root 32145 May 12 2020 dotnet-aspnet-codegenerator-design.dll
-rw-r--r-- 1 root root 21 Nov 6 14:27 host.json
-rw-r--r-- 1 root root 25674 Jun 17 22:02 Microsoft.AspNetCore.Authentication.JwtBearer.dll
权限说明:
可以看到文件的权限,-rw-rw-r-- ,一共有10位数.。
- 最前面那个 - 代表的是类型(-代表文件,d代表目录,l代表连接)
- 中间那三个 rw- 代表的是所有者(user)
- 然后那三个 rw- 代表的是组群(group)
- 最后那三个 r-- 代表的是其他人(other)
权限部分:
r 表示文件可以被读(read) ,用数字表示为:4
w 表示文件可以被写(write) ,用数字表示为:2
x 表示文件可以被执行(如果它是程序的话) ,用数字表示为:1
-表示相应的权限还没有被授予,用数字表示为0,
权限的不同组合,如rwx用数字表示则为7,r-x用数字表示则为5,以此类推。那么一个文件的权限(所有者、所属组及其他)就可能是如下的情况:
- -rw------- (600) 只有所有者才有读和写的权限
- -rw-r–r-- (644) 只有所有者才有读和写的权限,组群和其他人只有读的权限
- -rwx------ (700) 只有所有者才有读,写,执行的权限
- -rwxr-xr-x (755) 只有所有者才有读,写,执行的权限,组群和其他人只有读和执行的权限
- -rwx–x--x (711) 只有所有者才有读,写,执行的权限,组群和其他人只有执行的权限
- -rw-rw-rw- (666) 每个人都有读写的权限
- -rwxrwxrwx (777) 每个人都有读写和执行的权限
图解:

需要注意的一点是,一个目录同时具有读权限和执行权限才可以打开并查看内部文件,而一个目录要有写权限才允许在其中创建其它文件,这是因为目录文件实际保存着该目录里面的文件的列表等信息。
二、补充
特殊权限SUID、SGID、Sticky
在 linux 系统中还有三种与用户身份无关的三个文件权限属性。即SUID、SGID和Sticky。
SUID(Set User ID, 4):
该属性只对有执行权限的文件有效,对目录无效。执行具有SUID权限的程序时,引发的进程的所有者是程序文件的所有者,而不是启动程序的用户(除非二者是同一个人)。比如,如果一个程序的所有者是root且具有SUID属性,一个普通用户执行此程序时,如同root执行此程序一样。(请注意该属性对Shell脚本程序无效)该属性为一些特殊程序(如lpr)的启动带来了方便。但有时也带来了安全隐患:比如一个具有SUID属性的程序如果在执行时运行了一个shell,那么用户可以籍此得到系统的最高权限。SUID可用s表示,如:
$ ls -l /usr/bin/passwd
-rwsr-xr-x 1 root root 47032 Feb 16 2014 /usr/bin/passwd
SGID(Set Group ID, 4):
对于可执行文件,SGID与SUID类似,引发的进程的所有组是程序文件所属的组。对于目录,SGID属性会使目录中新建文件的所属组与该目录相同。SGID也可以用 s 表示,如:
$ ls -l /var
drwxrw s r-x 2 root staff 4096 Apr 10 2014 local
drwxrwxr-x 15 root syslog 4096 Apr 4 19:57 log
Sticky, 1:
仅对目录有效。带sticky属性的目录下的文件或目录可以被其拥有者删除或改名。常利用sticky属性创建这样的目录:组用户可以在此目录中创建新文件、修改文件内容,但只有文件所有者才能对自己的文件进行删除或改名。如系统中的/tmp文件夹。在属性字符串中,通常用 t 表示。
$ ls -l /
drwxrwxrw t 8 root root 4096 Apr 4 23:57 tmp
三、修改文件及文件夹对应用户权限操作
如果你有一个自己的文件不想被其他用户读、写、执行,那么就需要对文件的权限做修改。
3.1、加减赋值操作
u 代表所有者(user)
g 代表所有者所在的组群(group)
o 代表其他人,但不是u和g (other)
a 代表全部的人,也就是包括u,g和o
+ 和 - 分别表示增加和去掉相应的权限。+号一般不显示(初学练手时我还是会加上)
在终端输入:chmod o+w xxx.xxxchmod o w xxx.xxx 表示给其他人授予写xxx.xxx这个文件的权限
chmod go-rw xxx.xxx 表示删除xxx.xxx中组群和其他人的读和写的权限chmod ug-r xxx.xxx

Linux/Centos文件授权用户文件夹权限介绍的更多相关文章
- CentOS Linux SVN服务器 配置用户目录访问 权限 Authorization failed
SVN 修改 aurhz 文件设置用户目录访问权限格式: [/code] user=rw user 用户对code目录拥有读和写的权限. 但是访问 svn://192.168.1.59 的时候却提示A ...
- Linux Centos 通过虚拟用户访问FTP的配置
Linux Centos 通过虚拟用户访问FTP的配置 实验需求: 让下面4个虚拟用户使用系统用户ftpvu的权限来连接到Linux FTP服务器,并确保都锁定在 自己的虚拟用户目录,不能切换到其他目 ...
- linux CentOS中创建用户 无密码登录
首先点击左上角的 “应用程序” -> “系统工具” -> “终端”,首先在终端中输入 su ,按回车,输入 root 密码以 root 用户登录,接着执行命令创建新用户 hadoop: 接 ...
- linux —— 学习笔记(用户管理与权限控制)
目录:1.用户的创建和管理 2.组的创建和管理 3.文件执行权限的控制 4.不用密码执行sudo 1.用户的创建和管理 用户的创建和管理: useradd.usermod . userdel . ...
- Linux 服务器上建立用户并分配权限
查看用户 whoami #要查看当前登录用户的用户名 who am i #表示打开当前伪终端的用户的用户名 who mom likes who 命令其它常用参数 参数 说明 -a 打印能打印的全部 - ...
- Linux中给普通用户添加sudo权限
使用Linux系统时,经常会被要求使用超级权限,但是root的权限太过大了,一般慎用!!!因此可以通过给普通用户添加sudo权限,平常用普通用户进行操作,当需要root权限的时候进行sudo操作.以下 ...
- linux怎么设置vsftp用户访问目录权限
1.在指定的目录创建文件夹(访问的目录): mkdir picture 2.创建一个用户组(zdhgroup): groupadd zdhgroup 3.创建一个用户并指定路径和组: useradd ...
- Centos下普通用户设置sudo权限
若执行sudo命令的用户没有sodu权限,则会报以下错误 violet is not in the sudoers file.This incident will be reported 若想让vio ...
- 【linux】FTP添加用户,设置权限和目录
一.目的,新建一个用户 test2,登录ftp,它只有自己的主目录权限,其他同级和上级目录没有权限 二.ftp安装.配置 yum -y install vsftpd //通过yum来安装vsftpd ...
- Mac/Linux/Centos终端中上传文件到Linux云服务器
1.mac上传文件到Linux服务器 scp 文件名 用户名@服务器ip:目标路径 如:scp /Users/test/testFile test@www.linuxidc.com:/test/ ...
随机推荐
- linux下文件夹文件名称最大长度
今天突发奇想,如果创建一个文件,不写入内容,就如我们之前说的写入扩展属性能快速查找数据,但是在SSD下只能写4000个左右的字符,那么有没有更快速的方法存储这样的信息呢? 我想到可以同文件名来存储信息 ...
- Vulhub Apache Httpd漏洞复现
目录 前言 多后缀解析漏洞 换行解析漏洞(CVE-2017-15715) 2.4.49 路径穿越漏洞(CVE-2021-41773) 2.4.50 路径穿越漏洞(CVE-2021-42013) SSR ...
- 运维工具之Netdata
[导语]:Netdata 是一个开源.免费.预配置.高灵敏度的分布式实时监控系统. 简介 Netdata的分布式实时监视代理以零配置的方式,从系统.硬件.容器和应用程序收集数千个指标,它可以运行在所有 ...
- Flutter ListView报错RenderBox was not laid out: RenderViewport#680c1 NEEDS-LAYOUT NEEDS-PAINT
RenderBox was not laid out: RenderViewport#680c1 NEEDS-LAYOUT NEEDS-PAINT 使用ListView.builder()布局时,如果 ...
- Flutter TickerProvider使用
Flutter TickerProvider使用 当需要使用Animation controller时,需要在控制器初始化时传递一个vsync参数,此时需要用到TickerProvider,例如 cl ...
- 使用 Azure AI Studio 构建和部署使用提示流的问答助驾系统
使用 Azure AI Studio 构建和部署使用提示流的问答助驾系统 See: Build and deploy a question and answer copilot with prompt ...
- 【人工智能】【深度学习】CUDA与CUDNN安装
cuDA安装 基础 CUDA工具包 NVIDIA CUDA 工具包提供了开发环境,可供创建经 GPU 加速的高性能应用.借助 CUDA 工具包,您可以在经 GPU 加速的嵌入式系统.台式工作站.企业数 ...
- mysql命令行创建数据库并设置字符集
CREATE DATABASE test1 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
- 部署kubernetes-dashboard改成http免密登录
原始链接地址 https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml 修改S ...
- 解决Failed to load module canberra-gtk-module错误
在Ubuntu环境里,通过./triangulation 1.png 2.png 命令运行高翔的ch7的triangulation程序时报错: Gtk-Message: 09:10:26.571: F ...