认识 Linux 文件权限
Linux 之所以是比较安全的操作系统,和它丰富的文件权限设定是有关系的,学习 Linux 操作系统一定要懂文件的权限识别和设置。通过这篇博文我们了解 Linux 操作系统的文件权限。
拥有者 / 群组 / 其他人
拥有者:谁创建了这个文件,谁就是文件的拥有者
群组:文件创建者所在的群组,就是文件的群组,文件群组的权限,不是指这个群组的组织对文件的权限,而是在群组里面的成员拥有的权限。
其他人:出去文件拥有者和群组外的人,就是文件权限中的其他人。
这儿举个例子来说明下者三个概念:两个帮派,帮派 A 、帮派 B。帮派 A 里面有 张无忌、乔峰、杨过。帮派 B 里面有 鹤笔翁、鹿杖客、田伯光。这时候 张无忌自创了一套武功,降龙十九掌,那么张无忌就是这套武功的拥有者,帮派 A 就是这套武功的群组,乔峰和杨过就是帮派 A 的权限。剩下的人就是其他人了。
文件权限
我们先通过 ls -al 来看一下权限

1、文件类型和权限:下图足以表达出权限中的含义

1)第一个字符档案类型,分别有 文件、目录或者连接文件等,下面列出来具体的内容
- 当为[ d ]则是目录,例如上表文件名为“.config”的那一行
- 当为[ - ]则是文件,例如上表文件名为“initial-setup-ks.cfg”那一行
- 若是[ l ]则表示为链接文件(link file)
- 若是[ b ]则表示为设备文件里面的可供储存的周边设备(可随机存取设备)
- 若是[ c ]则表示为设备文件里面的序列埠设备,例如键盘、鼠标(一次性读取设备)
2、第二栏表示有多少文件名链接到此节点(i-node)
每个文件都会将他的权限与属性记录到文件系统的i-node中,不过,我们使用的目录树却是使用文件名来记录, 因此每个文件名就会链接到一个i-node啰!这个属性记录的,就是有多少不同的文件名链接到相同的一个i-node号码去就是了。 关于i-node的相关数据我们会在第七章谈到文件系统时再加强介绍的。(这个还不是太了解,待第七章江西了解下)
后面几项都好理解,这儿就不在介绍。
改变文件属性与权限
既然有文件权限,那么肯定也应该可以修改的,权限的修改主要有一下两种:
- chgrp:改变文件所属群组。
- chown:改变文件拥有者
- chmod:改变文件的权限。
为了更好的演示这三个命令,我们先来看一下另外一个命令:touch(新建文件,用法:touch [fileName]),mkdir (新建目录,用法:mkdir [fileName])。我们在 admin 账号主文件夹下创建一个 mydir 目录。然后在这个文件里面创建 两个文件:mytstfile、mytstfile2,创建好的目录和文件如下图:

1、chgrp:chgrp [群组] [文件名]
把 mytstfile 文件群组由 root 修改为 admin。命令如下:chgrp admin mytstfile 。
如果是修改目录,那么 中间加 R 就表示所有文件都要修改。
*** 需要注意的是,要修改到的群组,在 /etc/group 文件中必须存在。*******
2、chown:chgrp [拥有者] [文件名] 用法如修改群组
*** 需要注意的是,要修改到的拥有者,在 /etc/passwd 文件中必须存在。*******
3、chmod:权限我们知道除了第一个表示文件类型外,后面的都是三个一组的,三组分别是 拥有者/群组/其他人。而每种权限又是 r 读、w 写、x 执行 - 无权限 中一个或几个。其中我们可以用数字来代表各个权限,如:r = 4,w = 2,x = 1,- = 0。而权限就可以根据数据来表示,比如:
[-rwxr-xrw-] own = rwx = 4+2+1 = 7;group = r-x = 4+0+1 = 5 ;others = rw- = 4+2+0 = 6 。那么这个权限用数字表示就是 756
1) 、数字类型修改文件权限。
根据这个表示,我们接下来设置权限,就可以根据数字来表示了。修改权限为:chmod 命令数字,如: chmod 777 mytstfile 。具体看例子:

2) 符号类型修改文件权限
权限中的的分组是:users、group、others三组身份。那么就用 u 代表 users,g 代表 group,o 代表 others。另外 a 代表全部的身份。读写执行权限就用 r w x 来表示。设置权限命令:
chmod u=rwx,g=rx,o=r filename
##原来的文件权限
[admin@bogon mydir]$ ls -al
-rwxrwxrwx. admin admin 12月 : mytstfile ##修改命令
[admin@bogon mydir]$ chmod u=rw,g=rx,o=r mytstfile ##修改后的权限
[admin@bogon mydir]$ ls -al
总用量
-rw-r-xr--. admin admin 12月 : mytstfile
也可以统一来加某项命令,或者减某项命令
##所有的加上执行的权限
[admin@bogon mydir]$ chmod a+x mytstfile
[admin@bogon mydir]$ ls -al
总用量
-rwxr-xr-x. admin admin 12月 : mytstfile ##所有的去掉可写的权限
[admin@bogon mydir]$ chmod a-w mytstfile
[admin@bogon mydir]$ ls -al
总用量
-r-xr-xr-x. admin admin 12月 : mytstfile ##给使用者加上 可写的权限
[admin@bogon mydir]$ chmod u+w mytstfile
[admin@bogon mydir]$ ls -al
总用量
-rwxr-xr-x. admin admin 12月 : mytstfile ##给群组和其他人加上可写的权限
[admin@bogon mydir]$ chmod g+w,o+w mytstfile
[admin@bogon mydir]$ ls -al
总用量
-rwxrwxrwx. admin admin 12月 : mytstfile
小结
此博文主要减少文件权限操作方面的一些知识。到此就结束了。学习权限方面的知识,还是需要多多操作,在电脑上安装一个虚拟机,然后安装一个 Linux 操作系统是最好的办法。
认识 Linux 文件权限的更多相关文章
- 修改linux文件权限
Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而禁 ...
- Linux:文件权限
Linux:文件权限 1.文件权限 ☆文件所有者 ☆用户组 ☆其他人 ☆ROOT 说明: Linux系统中默认所有系统上的账号与一般身份用户,还有那个root的相关信息记录在/etc/passwd文件 ...
- Linux 文件权限总结
在 Linux 中最基本的任务之一就是设置文件权限.理解它们是如何实现的是你进入 Linux 世界的第一步.如您所料,这一基本操作在类 UNIX 操作系统中大同小异.实际上,Linux 文件权限系统就 ...
- Linux&shell 之Linux文件权限
写在前面:案例.常用.归类.解释说明.(By Jim) Linux文件权限用户useradd test (添加用户test)userdel test (删除用户test)passwd test(修改用 ...
- linux文件权限整理
网上对linux文件权限的已经很多,不过还是要自己整理一下,不然每次都要查资料. linux下所有东西都是文件,包括设备,所以这里的文件也包括文件夹. 先是查看文件权限:ls -lh xzc@xzc- ...
- 修改linux文件权限命令:chmod 【转载】
Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. chmod 命令可以改变所有子目录的权限,下面有2种方法 改变一个文件的权限: chmod ...
- linux文件权限总结(创建root不可以删除文件、只可追加的日志文件等)
文件类型 对于文件和目录的访问权力是根据读访问,写访问,和执行访问来定义的. 我们来看一下 ls 命令的输出结果 [root@iZ28dr6w0qvZ test]# ls -l 总用量 72 -rw- ...
- Linux 文件权限于目录配置
用户与用户组 我們以王三毛為例,王三毛這個『檔案』的擁有者為王三毛,他屬於王大毛這個群組, 而張小豬相對於王三毛,則只是一個『其他人(others)』而已. 不過,這裡有個特殊的人物要來介紹的,那就是 ...
- Linux文件权限与属性详解 之 SUID、SGID & SBIT
Linux文件权限与属性详解 之 一般权限 Linux文件权限与属性详解 之 ACL Linux文件权限与属性详解 之 SUID.SGID & SBIT Linux文件权限与属性详解 之 ch ...
- Linux文件权限与属性详解 之 一般权限
目录 一般属性 1. iNode: 3152621 2. 文件类型 3.文件访问权限 4. 链接数目: 5. 文件所有者 6. 文件所属组 7. 文件大小 8. 修改时间 9. 文件名称 Linux文 ...
随机推荐
- select2 3.5.3 二级下拉及搜索
select2 [3.5.3]版本 select2 插件地址 http://select2.github.io/select2/ 支持搜索: JS代码,如果Group不需要勾选,goup不加id就可以 ...
- 解决Ajax请求后台Servlet接口拿不到JSON数据问题
前端Ajax请求代码如下: window.onload=function() { var url='http://127.0.0.1:8080/testpj/ErrorlogServlet'; $.a ...
- python测试工程师高端基础面试题整理
面试总括篇 技术技能 开发语言:python 数据库:mysql 操作系统;linux 网络协议基础 测试技能:自动化(UIselenium+接口)+性能 业务知识 测试工程师执业规划 初级--> ...
- eclipse安装cucumber插件
help-install new software-add name= c location= http://cucumber.github.com/cucumber-eclipse/update-s ...
- python之路(3)函数和匿名函数
函数 函数与过程 过程 def test(): "注释" print('1 am chen') test() : 过程调用 def : 定义函数的关键字 test : 函数名 pr ...
- IDEA+Maven+Spring MVC HelloWorld示例
用Maven创建Web项目 选择webapp模板 创建成功后点Enable Auto-Import idea给我们创建出来的结构是这样的,这还不标准,需要自己修改. 在main文件夹下创建java文件 ...
- SpringBoot项目打成jar包后上传文件到服务器 目录与jar包同级问题
看标题好像很简单的样子,但是针对使用jar包发布SpringBoot项目就不一样了.当你使用tomcat发布项目的时候,上传文件存放会变得非常简单,因为你可以随意操作项目路径下的资源.但是当你使用Sp ...
- H5_0007:使用base64做为背景图片
page { overflow:hidden; position:fixed; /* background-image:url('http://p0d5ombx1.bkt.clouddn.com/lo ...
- 075、配置Virtualbox backend(2019-04-22 周一)
参考https://www.cnblogs.com/CloudMan6/p/7617211.html Rex-Ray 支持多种backend,本节学习如何配置 virtualbox的backend ...
- C++常见问题解答博客合集
1 关于宏 https://blog.csdn.net/hanchaoman/article/details/8809951