07-Linux文件权限管理
文件的类型
Linux的哲学思想:一切皆文件。
Linux的文件分为多种类型。
可以通过ll命令查看文件的类型:
ll
#输出:
-rw-------. 1 root root 1266 2月 29 11:42 anaconda-ks.cfg
#解释:
第一个字段中的第一个字符表示文件的类型:这里为-,表示这是普通文件。
Linux常见的文件类型:
- #普通文件(如.txt文件)
d #目录
c #字符文件(比如键盘)
b #block文件(比如硬盘)
l #软链接(类似于Windows快捷方式)
权限分类
基本文件权限分为几种:
- r表示读权限,用4表示。
- w表示写权限,用2表示。
- x表示执行权限,用1表示。
若文件为普通文件:
- r表示可以读取文件内容。
- w表示可以修改文件内容。
- x表示可以执行这个文件,比如二进制文件、脚本文件。
若文件为目录:
- r表示可以用ls查看目录
- w可以在目录里操作文件(如创建,删除和移动文件)
- x表示可以用cd进入目录
可以通过ll命令查看文件的权限:
ll
#输出:
-rwxrw-r--. 1 root root 1266 2月 29 11:42 anaconda-ks.cfg
解释:
文件类型后面的字符rwxrw-r–表示文件权限,分为属主、属组和其他用户的权限。
比如这里rwxrw-r–表示:属主的权限为rwx,属组的权限为rw-,其他用户的权限为r–。
文件有所属主和所属组。即这个文件属于哪个用户,属于哪个组。
举例:
- 文件的主人操作此文件,权限为rwx。
- 文件的所属组操作此文件,权限rw-。
- 其他用户的权限为r–。
权限管理
chmod命令
此命令用于改变文件的权限
#增加文件权限
chmod +x 123.txt #给这个文件添加执行权限(给所属主、所属组和其他用户都添加了x权限)
chmod u+x 123.txt #给这个文件的所属主添加x权限。
chmod g+x 123.txt #给这个文件的所属组添加x权限。
chmod o+x 123.txt #给这个文件的其他用户添加x权限。
#去除文件权限的命令类似
chmod o-x 123.txt #去除这个文件的其他用户的x权限。
- 利用数字来修改文件权限
r用4表示。w用2表示。x用1表示。那么,这些数字就能唯一确定文件的权限。
比如:0表示无任何权限。
比如:1表示只有x权限。
比如:2表示只有w权限。
比如:3表示有w和x权限(2+1=3)。
比如:4表示只有r权限。
比如:5表示有r和x权限(4+1=5)。
比如:6表示有r和w权限(4+2=6)。
比如:7表示有r、w和x权限(4+2+1=7)。
chmod 644 hello.txt #将文件的权限修改为rw-r--r--。
chown
用来改变文件的所属主和所属组
- 可以使用
ll命令查看文件的所属主和所属组:
ll
输出:
-rwxrwx--- 1 root root 27 3月 7 14:25 123 #这个文件的所属主和所属组分别是root和root。
- 使用chown命令改变文件的所属主和所属组:
chown user1:user1 123 #将文件的所属主和所属组都改为user1
chown :root 123 #将文件的所属组改为user1
注意:如果文件是目录,要使用
-R参数递归修改。
facl
chmod命令按照文件的所属主、所属组和其他用户来管理文件权限。
facl可以不仅可以做到按照文件的所属主、所属组和其他用户来管理文件权限,还能按照根据某个用户来管理。
- getfacl:用于查看文件的权限
getfacl 123.txt
#输出
# file: 123.txt #文件名
# owner: user1 #所属主
# group: root #所属组
user::rwx #所属主的权限
group::rw- #所属组的权限
other::r-- #其他用户的权限
- setfacl:用于修改文件的权限
setfacl -m u:xiaoming:r-x,g::r--,o::--- 123.txt
#参数-m表示修改
# u:xiaoming:r-x 表示用户xiaoming的权限为r-x
# g::r-- 表示所属组的权限为r--
# o::--- 表示其他用户的权限为---
07-Linux文件权限管理的更多相关文章
- Linux 文件权限管理
1.文件权限的概述 在Linux系统下,使用权限来保护资源的安全将是一种不错的选择.系统中每个文件的权限都有可读(r).可写(w)和可执行(x)这三种权限,它们分别对应权限数值4.2 和1.系统为每个 ...
- 《linux文件权限管理大总结》RHEL6
在linux系统下文件的权限通常会以下面的格式显示出来: Chmod文件权限: 权限的管理chmod -a 所有的权限 -u 文件所有者的权限 -g 组权限 -o 其他用户的权限 可以使用运算符来设 ...
- 一个故事看懂Linux文件权限管理
前情回顾: 我通过open这个系统调用虫洞来到了内核空间,又在老爷爷的指点下来到了sys_open的地盘,即将开始打开文件的工作. 详情参见:内核地址空间大冒险:系统调用 open系统调用链 我是一个 ...
- Linux文件权限管理(持续更新)
文章是从我的个人博客上粘贴过来的, 大家也可以访问我的主页 www.iwangzheng.com 以root身份登录linux以后, ls -al 可以看到 -rw-rw-r-- 1 wangzhe ...
- Linux文件权限管理
一.设置文件所属的用户以及所属的组(chown,chgrp) chgrp用来更改文件的组拥有者,其一般格式为:chgrp [option] group file(1)把文件test的组拥有者改为zfs ...
- Linux常用命令之文件权限管理
Linux文件权限管理1.改变文件或目录的权限:chmod命令详解命令名称:chmod命令所在路径:/bin/chmod执行权限:所有用户语法:chmod [{ugoa}{+-=}{rwx}] [文件 ...
- Linux的文件权限管理
Linux文件权限管理介绍 一:Ubuntu 简介 1 .什么是Ubuntu Ubuntu是基于Debian开发的一个开源的Linux操作系统,Ubuntu这个名字名称来⾃⾮洲南部某种语言的一个词语, ...
- linux用户管理,linux用户口令管理,linux用户组管理,linux用户权限管理详解
linux用户管理 http://www.qq210.com/shoutu/android 用户账号的添加(新加用户需添加用户口令) :增加用户账号就是在/etc/passwd文件中为新用户增加一条记 ...
- 5.Linux文件权限
Linux用户类别 root:这是系统特权用户类,他们都有访问root登录账号的权限 owner:这是实际拥有文件的用户 group:这是共享文件的组访问权的用户类的用户组名称 world:这是不属于 ...
- (大数据工程师学习路径)第一步 Linux 基础入门----用户及文件权限管理
用户及文件权限管理 实验介绍 1.Linux 中创建.删除用户,及用户组等操作. 2.Linux 中的文件权限设置. 一.Linux 用户管理 Linux 是一个可以实现多用户登陆的操作系统,比如“李 ...
随机推荐
- WPF 界面打不开提示 System.ArithmeticException Overflow or underflow in the arithmetic operation 异常
本文告诉大家如何解决界面打不开,抛出 System.ArithmeticException: Overflow or underflow in the arithmetic operation 异常的 ...
- 简说Python之flask初体验
目录 flask初体验 1.安装Flask 2.创建"Hello, World" Flask应用 3.执行结果 flask是python web的轻量框架,简单的几条命令就可以创建 ...
- 简说Python之循环语句
目录 Python的运算逻辑 Python条件语句 Python循环语句 Python while循环 Python for 循环 条件语句和循环语句是程序常用的一种基础语法,从语言上来说,能说清楚的 ...
- next-route
在目录结构中,我们精心创建的每一个文件最终都会经过处理,转化为相应的页面路由.然而,值得注意的是,某些特殊文件格式在生成过程中并不会被当作路由路径来处理. app |-auth login page. ...
- Selenium4自动化测试6--控件获取数据--下拉框级联选择、checkbox选择、时间选择器
4-下拉框级联选择 import time from selenium.webdriver.support.select import Select #pip install selenium fro ...
- AIRIOT物联网低代码平台如何配置OPC DA驱动?
AIRIOT物联网低代码平台提供了丰富的驱动,兼容了市面上95%以上的传感器.控制器及数据采集设备等,并且在持续增加中,能够快速.便捷地实现数据采集与控制功能. AIRIOT物联网低代码平台如何配置O ...
- mongodb的replication与shard分片结合使用详解
部署脚本 #!/bin/bash #复制集配置 IP='10.0.0.12' #主机ip NA='rs3' #复制集名称 if [ "$1" = "reset" ...
- 安装node-sass失败原因及解决办法汇总
node-sass 安装过程 npm 拉下 node-sass包: 根据node版本和node-sass版本拉取对应的binding.node编译器,原因是sass的编译语言比较特殊,需要下载对应版本 ...
- 图解JDK7及其早期版本HashMap扩容死锁问题
在JDK7及其早期版本中HashMap在多线程环境下会发生扩容死锁的问题. HashMap中在创建时默认会有16个桶,有一个默认加载因子0.75,如果Map中的Entry数量达到阈值(16*0.75) ...
- Swoole 源码分析之 WebSocket 模块
首发原文链接:Swoole 源码分析之 WebSocket 模块 大家好,我是码农先森. Swoole 源码分析之 WebSocket 模块 引言 WebSocket 是一种在单个 TCP 连接上进行 ...