Linux文件属性和权限管理
Linux系统为多用户系统,分为三种不同类型的用户:
1. 所有者(User): 文件的拥有者,即创建文件的用户。
2. 同组用户(Group): 与所有者同一组的用户。
3. 其他用户(Others): 除了所有者和同组用户外的其他用户。
一、查看文件属性和权限
Linux系统下,文件的权限有三种: 读、写、执行。
查看文件的权限(和文件的其他属性)
ls -al #隐藏文件(文件名或目录名第一个字符为 . 的文件)也会显示

第一列即为该文件的类型和权限,总共有10个字符位:
第 1 个字符位:表示文件的类型, d 表示目录; - 表示文件; l 表示链接文件; b 表示块设备文件,如硬盘;
c 表示字符设备文件; p 表示命名管道文件; s 表示套接字文件。常见的也就目录 d 和文件 -
第2-4个字符位:表示所有者的权限,分别为读(r)、写(w)、执行(x),- 表示没有该权限
第5-7个字符位:表示同组用户的权限,分别为读(r)、写(w)、执行(x)
第8-10个字符位:表示其他用户的权限,分别为读(r)、写(w)、执行(x)
二、改变文件属性和权限
1. chgrp:即 change group 的简写。改变文件所属群组。
chgrp [-R] groupname dirname/filename # -R 表示递归该目录下的所有子目录和文件
例子:修改文件test.py的所属组为 users,该组名不存在则报错
chgrp users test.py
2. chown:即change owner 的简写。改变文件所有者,此外,还可以顺便修改所属组。
chown [-R] ownername dirname/filename
例子:修改文件test.py的所有者为 delav
chown delav test.py #顺便修改所属组为root
chown delav:root test.py
3. chmod:改变文件权限
第一种方法:使用数字
chmod [-R] xyz dirname/filename
Linux文件的基本权限有9个,分别是 user/group/others 三种身份拥有各自的 read/write/execute 权限。
这三种权限可以使用数字来表示:
read: 4
write: 2
execute: 1
当使用数字来表示权限时,每一种身份各自的权限数字代表需要累加,最大数字为 7 。
例如:
user = rwx = ++ =
group = r-x = ++ =
others = --- = ++ =
改变文件test.py的权限为上面的,即为
chmod test.py
第二种方法:使用字符
三种身份 user/group/others 使用字符表示:
user: u
group: g
others : o
all : a (全部身份)
三种权限 read/write/execute 使用字符表示:
read: r
write: w
execute: x

例如:
设置文件test.py的权限为 750
chmod u=rwx,g=rx,o=--- test.py
或
chmod u=rwx,g=rx,o-rwx test.py
设置文件test.py的权限为 755
chmod w=rwx,go=rx
把所有的执行权限去除,增加群组的写权限
chmod u-x,g+w test.py
把所有人的写权限去除
chmod a-w test.py
三、目录和文件的权限意义
对于文件,rwx是针对【文件的内容】来设计权限。
read(r):可读取文件的实际内容
write(w):可修改文件内容
execute(x):可被系统执行
对于目录,rwx是针对【目录内的文件名列表】来设计权限。
read(r):可读取目录的文件列表,即查询该目录下的文件名数据
write(w):可在该目录下新建文件或目录;可删除该目录下文件或目录;可重命名该目录下的文件或目录;可移该目录下的文件或目录
execute(x):可进入该目录进行操作

Linux文件属性和权限管理的更多相关文章
- Linux 文件属性及权限_007
Linux一切皆文件: Llinux系统的文件或目录的属性主要包括:索引节点.文件类型.文件权限.链接数.所属的用户和用户组.最近修改时间等. Llinux文件属性及权限图形说明: Linux文件属性 ...
- Linux用户组和权限管理
Linux用户组和权限管理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Linux的安全模型 1>.安全3A 这并不是Linux特有的概念,在很多领域都有3A的概念 ...
- Linux 服务器用户权限管理改造方案与实施项目
Linux 服务器用户权限管理改造方案与实施项目 在了解公司业务流程后,提出权限整改方案改进公司超级权限root泛滥的现状. 我首先撰写方案后,给boss看,取得boss的支持后,召集大家开会讨论. ...
- Linux用户和权限——管理文件权限的命令
Linux用户和权限——管理文件权限的命令 摘要:本文主要学习了Linux中修改文件权限的命令. chown命令 chown命令,主要用于修改文件(或目录)的所有者,除此之外,这个命令也可以修改文件( ...
- Linux用户和权限——管理用户和用户组的命令
Linux用户和权限——管理用户和用户组的命令 摘要:本文主要学习了在Linux系统中管理用户和用户组的命令. useradd命令 useradd命令可以用来创建新用户. 基本语法 useradd [ ...
- Linux用户和权限管理看了你就会用啦
前言 只有光头才能变强 回顾前面: 看完这篇Linux基本的操作就会了 没想到上一篇能在知乎获得千赞呀,Linux也快期末考试了,也有半个月没有写文章了.这篇主要将Linux下的用户和权限知识点再整理 ...
- linux 文件属性与权限
内容源于: 鸟哥的linux私房菜 链接如下: Linux 的文件权限与目录配置 Linux 磁盘与文件系统管理 Linux 文件与目录管理 目录 Linux文件属性 [文件属性解析(SUID/SGI ...
- 简单的Linux的用户权限管理
企业生产环境用户权限集中管理方案案例 建立中要添加如下的项目经验: 在了解公司业务流程后,提出权限整改解决方案,改进公司超级用户Root权限泛滥的问题. 我首先写好方案后,给老大看,取得老大的支持后, ...
- linux笔记:linux常用命令-权限管理命令
一个文件的权限只有root和所有者可以更改. 权限管理命令:chmod(改变文件或目录的权限) 权限的数字表示: 用权限加减的方式改变权限(u代表所有者,g代表所属组,o代表其他人,a代表所有人): ...
随机推荐
- Python学习过程笔记整理(三)
函数 -函数使用 -函数需要先定义,定义不会执行函数 -使用函数,俗称调用 -定义函数 -格式:def 函数名称(参数=默认值):,函数名称不能用大驼峰,参数可以没有 -调用函数 -格式:函数名(参数 ...
- weblogic在linux和window下的安装
weblogic在linux和window下的安装 weblogic下载地址 Windows server2008 一直下一步没什么坑 centos6.5 使用rpm安装jdk8 JDK下载 安装jd ...
- Mysql试题集锦
1.一张表,里面有 ID 自增主键,当 insert 了 17 条记录之后,删除了第 15,16,17 条记录,再把 Mysql 重启,再 insert 一条记录,这条记录的 ID 是 18 还是 1 ...
- LINUX系统下跑分测试脚本:unixbench.sh
linux 系统跑分测试脚本: 一.下载脚本: wget http://teddysun.com/wp-content/uploads/unixbench.sh 二.更改权限: ...
- HackRF 升级固件到新版本
本文内容.开发板及配件仅限用于学校或科研院所开展科研实验! 淘宝店铺名称:开源SDR实验室 HackRF链接:https://item.taobao.com/item.htm?spm=a1z10.1- ...
- k8s环境搭建--基于minik8s方法
minik8s 安装 关闭selinux.开启ipv6 sudo bash selinux_ipv6.sh 下载kubectl和minikube 下载minikube,因为国外的源被墙了,所以只能用阿 ...
- webpack入门指南-step02
webpack 安装 1)安装前的准备:webpack是基于node环境的项目,所以使用前必须先安装node和npm. 在安装 Webpack 前,你本地环境需要支持 node.js.如果电脑没有装过 ...
- 常用算法Java实现之希尔排序
希尔排序严格来说是基于插入排序的思想,又被称为缩小增量排序. 具体流程如下: 1.将包含n个元素的数组,分成n/2个数组序列,第一个数据和第n/2+1个数据为一对... 2.对每对数据进行比较和交换, ...
- linux下使用pip在虚拟环境下安装tensorflow-gpu
1. 查看已安装包库 pip list 2. linux下下载虚拟环境 sudo apt-get install python-virtualenv 3.建立全新的virtualenv环境 virtu ...
- mvc 路由配置-学习2
public class RouteConfig { public static void RegisterRoutes(RouteCollection routes) { r ...