Linux文件权限概念
一、Linux文件属性
1、第一列代表这个文件的类型与权限(permission): 共有10个字符
第一个字符代表这个文件的类型,是“目录,文件或链接文件等”:
[d]---->目录
[-]----->文件
[l]------>连接文件(linkfile)
[b]------>表示文件里面的可供存储的接口设备
[c]------>表示设备文件里面的串行端口设备,例如键盘,鼠标(一次性读取设备)
接下来的字符中,以3个为一组,且均为“rwx”的3个参数的组合。
[r]------>可读read
[w]------>可写write
[x]------->可执行execute
[-]-------->无权限
第一组为“文件所有者权限”
第二组为“同用户组的权限”
第三组为“其他非本用户组的权限”
2、第二列表示有多少文件名连接到此节点(i-node)
每个文件都会将他的权限与属性记录到文件系统的i-node中,不过我们使用的目录树却是使用文件名来记录,因此每个文件名就会连接一个i-node。这个属性记录的就是有多少不同的文件名连接到相同的一个i-node号码。
3、第三列表示这个文件(或目录)的“所有者账号”
4、第四列表示这个文件的所属用户组
在Linux系统下,你的账号会附属于一个或多个的用户组中。
5、第五列为这个文件的容量大小,默认单位为B。
6、第六列为这个文件的创建文件日期或者是最近的修改日期。
如果这个文件被修改的时间距离现在太久了,那时间部分就仅会显示年份。
如果想要显示完整的时间格式, 可以使用ls的参数,即“ls -l --full-time”
7、第七列为文件名
如果文件名之前多一个“.”,则这个为隐藏文件
二、如何改变文件属性与权限
chgrp------>改变文件所属用户组
chown-------->改变文件所有者
chmod-------->改变文件的权限
1、改变所属用户组:chgrp
要被改变的组名必须要在/ect/group文件内存在才行,否则就会显示错误。
语法:chgrp [-R] 用户组名 dirname/filename
选项与参数:
-R: 进行递归(recursive)的持续更改,即连同子目录下的所有文件,目录都更新为这个用户组
2、改变文件所有者:chown
要注意,用户必须是已经存在于系统中的账号,也就是在/etc/passwd这个文件中有记录的用户名称才能改变。
chown 还可以顺便直接修改用户组的名称。
语法: chown [-R] 用户名:用户组名 文件或目录
选项与参数:
-R: 进行递归(recursive)的持续更改,即连同子目录下的所有文件,目录都更新为这个用户组
什么时候要使用chown或chgrp呢?最常见的例子就是在复制文件给你之外的其他人时。如下将.bashrc文件复制成为.bashrc_test文件,并且是要给bin这个人
3、改变权限:chmod
设置权限有两种方法:使用数字或者符号进行权限的更改。
数字类型改变文件权限:
Linux文件的基本权限就有9个,分别是owner,group, others三种身份各有自己的read,write,execute权限。我们可以使用数字代表各种权限,
r:4 w:2 x:1
每种身份(owner, group, others)各自的三个权限(r,w,x)分数是需要累加的,如[-rwxrwx---], 分数则是:
owner=rwr=4+2+1=7
group=rwr=4+2+1=7
others=---=0+0+0=0
所以该文件权限是770
数字改变权限
chmod语法如下:chmod [-R] xyz 文件或目录
选项与参数:
xyz: 就是刚刚提到的数字类型的权限属性,为xyz属性数值的相加。
-R: 进行递归(recursive)的持续更改,即连同子目录下的所有文件,目录都更新为这个用户组
符号类型改变文件权限
通过u,g,o来分别代表user,group,others 3种身份。此外a代表all,即全部的身份。
chmod |
u g o a |
+(加入) -(除去) =(设置) |
r w x |
文件或目录 |
如下设置“-rwxr-xr-x”权限:
如果我不知道原先的文件属性,而我只想增加.bashrc这个文件的每个人均可写入的权限,那么我就可以用:
而如果是要将权限去掉而不更改其他属性,如去掉全部人的可执行权限,则:
三、目录与文件的权限意义
1、权限对文件的重要性:主要针对“文件的内容”
r(read): 可读取此文件的实际内容
w(write): 可以编辑、新增或者是修改该文件的内容(但不含删除该文,删除该文件与此文件的父目录是否有w权限有关)
x(execute): 该文件能否被执行。
2、权限对目录的中要性
目录主要的内容是记录文件名列表,文件名与目录有强烈的关联。
r(read contents in directory):
表示具有读取目录结构列表的权限,所以当你具有读取一个目录的权限时,表示你可以查询该目录下的文件名数据,所以你就可以利用ls这个命令将该目录的内容列表显示出来。
w(modify contents of directory):
具有更改该目录结构列表的权限:
新建新的文件与目录;
删除已存在的文件与目录;
将已存在的文件与目录进行重命名;
转移该目录内的文件、目录位置。
x(access directory):
目录的x代表的是用户能否进入该目录成为工作目录的用途,所谓的工作目录就是你目前所在的目录
与cd命令有关系
四、Linux文件种类与扩展名
1、文件
a、文件种类:
普通文件(regular file)
纯文本文件(ASCII):内容为我们可以直接读到的数据
二进制文件(binary)
数据格式文件(data): 有些程序在运行的过程中会读取某些特定格式的文件,那些特定格式的文件可以被称为数据文件。
b、目录(directory): 第一个属性为[d]
c、连接文件(link):类似Windows系统下面的快捷方式,第一个属性为 [l]
d、设备与设备文件(device)
与系统外设及存储等相关的一些文件,通常都集中在/dev这个目录。通常又分为两种:
块(block)设备文件:
就是一些存储数据,以提供系统随机访问的接口设备,例如硬盘,软盘等。你可以随机地在硬盘的不同快读写,这种设备就是成组设备,你可以自行查一下/dev/sda看看,会发现第一个属性为[b].
字符(character)设备文件:
一些串行端口的接口设备,例如键盘、鼠标等。这些设备的特征就是“一次性读取”,不能够截断输出。其第一个属性为[c]
套接字(sockets):
数据接口文件,这种文件通常被用在网络上的数据连接,其第一个属性为[s], 通常在/var/run这个目录中可看到这种文件类型。
管道(FIFO,pipe):
FIFO一种特殊的文件类型,它主要的目的在解决多个程序同时访问一个文件所造成的错误问题。FIFO--》first-in-first-out,第一个属性为[p]
2、Linux文件的扩展名
常用的扩展名:
a. *sh: 脚本或批处理文件(scripts),因为批处理文件为使用shell写成,所以扩展名就编成.sh
b. *Z、*.tar.gz、*.zip、*.tgz:经过打包的压缩文件。
c. *.html、*.php: 网页相关文件,分别代表HTML语法与PHP语法的网页文件。
3、Linux 文件名长度限制
使用默认的Ext2/Ext3文件系统时,针对文件的文件名长度限制为:
单一文件或目录的最大容许文件名为255个字符;
包含完整路径名称及目录(/)的完整文件名为4096个字符
4、 Linux文件名的限制
避免一些特殊字符: * ?< > ; & ! [ ] |\ ' " ` ( ) { } - +
Linux文件权限概念的更多相关文章
- CentOS学习笔记--文件权限概念
Linux 文件权限概念 当你的屏幕出现了『Permission deny』的时候,不要担心,『肯定是权限设定错误』啦!(以下节选自 鸟哥的 Linux 私房菜 第六章.Linux 的文件权限与目录配 ...
- Linux 文件权限于目录配置
用户与用户组 我們以王三毛為例,王三毛這個『檔案』的擁有者為王三毛,他屬於王大毛這個群組, 而張小豬相對於王三毛,則只是一個『其他人(others)』而已. 不過,這裡有個特殊的人物要來介紹的,那就是 ...
- 一、Linux文件权限与目录配置
行文结构如下: 用户和用户组 Linux文件权限概念 Linux目录配置 重点回顾 1.用户与用户组 Linux是个多用户.多任务的系统,可能有多人同时使用这台机器进行工作,为了考虑每个人的隐私和工作 ...
- Linux 文件权限总结
在 Linux 中最基本的任务之一就是设置文件权限.理解它们是如何实现的是你进入 Linux 世界的第一步.如您所料,这一基本操作在类 UNIX 操作系统中大同小异.实际上,Linux 文件权限系统就 ...
- Linux文件权限与属性详解 之 一般权限
目录 一般属性 1. iNode: 3152621 2. 文件类型 3.文件访问权限 4. 链接数目: 5. 文件所有者 6. 文件所属组 7. 文件大小 8. 修改时间 9. 文件名称 Linux文 ...
- Linux文件权限设置
基本概念 https://linux.cn/article-7418-1.html#3_8880 用户管理 文件权限设置 -添加用户账户08% -理解 /etc/passwd 中的内容12% -理解 ...
- 对Linux文件权限的理解
755,775,777,ugoa 等分别代表什么含义?这些数字是如何得到的? 1.常用的linux文件权限: 444 -r--r--r-- 600 -rw------- 644 -rw-r--r-- ...
- 修改linux文件权限
Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而禁 ...
- Linux:文件权限
Linux:文件权限 1.文件权限 ☆文件所有者 ☆用户组 ☆其他人 ☆ROOT 说明: Linux系统中默认所有系统上的账号与一般身份用户,还有那个root的相关信息记录在/etc/passwd文件 ...
随机推荐
- sql表结构和注释
SELECT 表名=case when a.colorder=1 then d.name else '' end, 表说明=case when a.colorder=1 then isnull(f.v ...
- secureCRT的一些小知识
secureCRT 是一个非常不错的终端软件,在嵌入式开发过程中经常使用到,所以了解一下其快捷键操作是非常有必要的,可以提高开发效率. 0.在secureCRT里切换不同的窗口:ctrl+tab. ...
- Android HandlerThread 的使用及其Demo (转)
转自http://www.cnblogs.com/hnrainll/p/3597246.html 介绍 首先我们来看看为什么我们要使用HandlerThread?在我们的应用程序当中为了实现同时完成多 ...
- ubuntu kylin 16.04系统的基本安装
系统版本:ubuntu kylin 16.04 硬件状况:500G HDD+120G SSD 已安装操作系统:WIN 10专业版(craked) ——WIN 10系统是装在SSD的第一个盘符内的.以前 ...
- js问题
1.原型链问题 1.js中万物皆对象,但对象也分为普通对象和函数对象,Object,Function都是js自带的函数对象,凡是通过 new Function() 创建的对象都是函数对象,其他的都是普 ...
- JS 中通过对象关联实现『继承』
JS 中继承其实是种委托,而不是传统面向对象中的复制父类到子类,只是通过原型链将要做的事委托给父类. 下面介绍通过对象关联来实现『继承』的方法: Foo = { // 需要提供一个 init 方法来初 ...
- BZOJ4724 [POI2017]Podzielno
4724: [POI2017]Podzielno Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 77 Solved: 37[Submit][Stat ...
- js内存泄露的几种情况
想解决内存泄露问题,必须知道什么是内存泄露,什么情况下出现内存泄露,才能在遇到问题时,逐个排除.这里只讨论那些不经意间的内存泄露. 一.什么是内存泄露 内存泄露是指一块被分配的内存既不能使用,又不能回 ...
- java中的集合类(Collection)中的Set
set集合不包含重复元素及与我们无关的排序!我说hibernate实体类中的集合都用Set呢,难道是因为这个?
- jquery checkbox的相关操作——全选、反选、获得所有选中的checkbox
1.全选 $("#btn1").click(function(){ $("input[name='checkbox']").attr("checked ...