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文件属性和权限管理的更多相关文章

  1. Linux 文件属性及权限_007

    Linux一切皆文件: Llinux系统的文件或目录的属性主要包括:索引节点.文件类型.文件权限.链接数.所属的用户和用户组.最近修改时间等. Llinux文件属性及权限图形说明: Linux文件属性 ...

  2. Linux用户组和权限管理

    Linux用户组和权限管理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.   一.Linux的安全模型 1>.安全3A 这并不是Linux特有的概念,在很多领域都有3A的概念 ...

  3. Linux 服务器用户权限管理改造方案与实施项目

    Linux 服务器用户权限管理改造方案与实施项目 在了解公司业务流程后,提出权限整改方案改进公司超级权限root泛滥的现状. 我首先撰写方案后,给boss看,取得boss的支持后,召集大家开会讨论. ...

  4. Linux用户和权限——管理文件权限的命令

    Linux用户和权限——管理文件权限的命令 摘要:本文主要学习了Linux中修改文件权限的命令. chown命令 chown命令,主要用于修改文件(或目录)的所有者,除此之外,这个命令也可以修改文件( ...

  5. Linux用户和权限——管理用户和用户组的命令

    Linux用户和权限——管理用户和用户组的命令 摘要:本文主要学习了在Linux系统中管理用户和用户组的命令. useradd命令 useradd命令可以用来创建新用户. 基本语法 useradd [ ...

  6. Linux用户和权限管理看了你就会用啦

    前言 只有光头才能变强 回顾前面: 看完这篇Linux基本的操作就会了 没想到上一篇能在知乎获得千赞呀,Linux也快期末考试了,也有半个月没有写文章了.这篇主要将Linux下的用户和权限知识点再整理 ...

  7. linux 文件属性与权限

    内容源于: 鸟哥的linux私房菜 链接如下: Linux 的文件权限与目录配置 Linux 磁盘与文件系统管理 Linux 文件与目录管理 目录 Linux文件属性 [文件属性解析(SUID/SGI ...

  8. 简单的Linux的用户权限管理

    企业生产环境用户权限集中管理方案案例 建立中要添加如下的项目经验: 在了解公司业务流程后,提出权限整改解决方案,改进公司超级用户Root权限泛滥的问题. 我首先写好方案后,给老大看,取得老大的支持后, ...

  9. linux笔记:linux常用命令-权限管理命令

    一个文件的权限只有root和所有者可以更改. 权限管理命令:chmod(改变文件或目录的权限) 权限的数字表示: 用权限加减的方式改变权限(u代表所有者,g代表所属组,o代表其他人,a代表所有人): ...

随机推荐

  1. 【原创】MVC项目中使用JQuery的upladify图片上传插件相关问题的解决方案

    一. 关于Uploadify Uploadify是一个jQuery插件,你可以很容易的为你的网站添加多个文件上传功能.有两个不同的版本(HTML5和Flash)允许你灵活选择为您的网站和回退方法正确实 ...

  2. WebGL——osg框架学习四

    这篇我们接着来看一下DrawEntityActor类,我们来看看这个继承DrawActor的类到底做了什么事.我们之前学习了Drawable对应的DrawActor,那么我们类比的来看Drawable ...

  3. load和loads的区别

    相同点 load 和loads 都是实现"反序列化" 区别 1.loads loads针对内存对象 loads: 将 字符串 转换为 字典 # 这是一个字符串'{"b&q ...

  4. InnoDB表优化

    InnoDB表存储优化 适时的使用 OPTIMIZE TABLE 语句来重组表,压缩浪费的表空间.这是在其它优化技术不可用的情况下最直接的方法. OPTIMIZE TABLE 语句通过拷贝表数据并重建 ...

  5. IP地址相关知识

    IP地址基本概念                                                                                            ...

  6. 【推荐系统】neural_collaborative_filtering(源码解析)

    很久没看推荐系统相关的论文了,最近发现一篇2017年的论文,感觉不错. 原始论文 https://arxiv.org/pdf/1708.05031.pdf 网上有翻译了 https://www.cnb ...

  7. PHP中你应该知道的require()文件包含的正确用法

    以前看一些PHP框架源码的时候,很奇怪在文件包含的时候,会用dirname(__FILE__)来拼凑文件路径,不知道这样做有什么好处,后来终于发现了其中的缘由. 我们来看一个简单的例子: 有a,b,c ...

  8. 随手记录-linux-常用命令

    转自:https://www.cnblogs.com/yjd_hycf_space/p/7730690.html linux目录结构:http://www.cnblogs.com/fat39/p/72 ...

  9. IntelliJ 10.0.1设置系统的JDK

    IntelliJ 10.0.1设置JDK: File-->Project Structure: project SDK--New a jsdk.

  10. Scrum Meeting 4 -2014.11.8

    开始了apec的放假,希望大家能处理好工作与休息的时间分配,不要玩疯了啊. 各任务都开始实现了自己的算法,需要部署的服务器我也进去看了看情况,希望最后能部署成功. 最近发现的一些关于上一届实现的问题, ...