Linux关于目录的二三事

       以笔者个人的理解,目录的产生是为了更方便我们管理计算机中的文件,文件与目录在很多地方和指令的使用上是相同的,但目录是对根据文件的用途等分类整合之后的归档,或者通过目录来划分不同功能的工作区间,所以笔者在学习Linux的时候将两者分开总结。

目录属性

       权限的概念在文件中就存在,目录是对文件的归档,目录的权限含义不同于文件,所用到的权限更改命令大致与文件相同,目录中也有所属用户和所属用户组的概念。

目录权限

       文件是存放实际数据的所在,目录主要的内容是记录文件名列表,文件名与目录有强烈的关联。
- r:表示具有读取目录结构列表的权限
- w:表示具有更改该目录结构列表的权限——新建新的文件与目录;删除已经存在的文件与目录(不论该文件或目录的权限如何);将已存在的文件或目录进行重命名;转移该目录内的文件、目录位置。
- x:表示用户能否进入该目录成为工作目录的用途
       由上面的描述可知,开放一个目录最基本的权限要有r和x,w权限的设置要慎重。
       改变目录属性与权限的命令:
- chgrp:改变目录的所属用户组
- chown:改变目录所有者
- chmod:改变目录的权限
       以上的三个命令的用法可以参照笔者之前的总结。

目录的隐藏属性

       涉及到的命令有两个:chattr和lsattr。其中的隐藏属性和命令的用法可以参照笔者之前的总结。

目录的特殊权限

       文件的特殊权限包括SUID、SGID,对于目录的特殊权限是SGID和SBIT。

Set GID

       当s标志在目录用户组的x时则称Set GID,SGID。当一个目录设置了SGID的权限后,它将具有以下功能:
- 用户若对此目录具有r和x的权限时,该用户能够进入此目录;
- 用户在此目录下的有效用户组将会变成该目录的用户组;
- 若用户在此目录下具有w的权限,则用户所创建的新文件的用户组与此目录的用户组相同。

Sticky Bit

       当t标志出现在其他人x位置上时为Sticky Bit,SBIT。目前只针对目录有效,对于文件已经没有作用了,SBIT对于目录的作用是:当用户在该目录下创建文件或目录时,仅有自己与root才能删除该文件。

特殊权限的设置

       与r、w、x权限相同,SGID和SBIT也能用数字形式来表达,SGID为2,SBIT为1,使用chmod指令设置这两个权限,在原来的三个数字前再加上一个数字就能设置文件的特殊权限了。 有时候我们会注意到设置了特殊权限之后,出现了大写的S或者T字符,这里表示的是原来的目录不具有x的权限,所以设置了特殊权限之后,我们没有实际获得该特殊权限,大写表示为“空的”。

Linux目录配置

       在安装不同版本的Linux distribution时,系统包含的目录大部分都是相同的,这是因为存在一套标准依据的,即Filesystem Hierarchy Standard(FHS)标准。正是因为Linux有一个统一的目录架构,所以我们不管在哪种Linux系统中都能够很快的上手操作。具体的FHS标准可以查阅官方文件,笔者在此不做赘述。

目录和路径

       路径PATH指的是用户达到某一文件或目录中经过的目录的表示,其存在绝对路径和相对路径两种表示方法。
- 绝对路径:路径的写法一定有根目录/写起,路径的正确度比较高。
- 相对路径:路径的写法不一定由根目录/写起,书写 比较方便,较为直观的表示与当前工作空间的关系。
       任意目录中都存在两个目录:
- .:代表本目录
- ..:代表上层目录
       正是由于存在上面的这两个目录,所以才存在相对路径的表示方法。

目录操作的相关命令

ls:查看目录

       具体的内容可参照笔者之前的总结。

cd:切换目录

cd [目录的相对路径或绝对路径]
说明:
cd是change directory的缩写,目录名称与命令之间存在一个空格。在进行目录切换的时候有几个快捷的符号:
-   -:代表前一个工作目录;
-   ~:代表“目前用户身份”所在的主文件夹
-   ~username:username是用户名称,代表进入该用户的主文件夹

pwd:显示目前所在目录

pwd [-P]
参数含义:
-P:显示出当前的路径,不使用链接(link)路径
说明:
pwdprint working directory的缩写。
如果用户所在的目录空间是连接到另一目录时,通过-P的参数可以显示出正确的路径,即该目录连接到的目录的路径。

mkdir新建目录与rmdir删除目录

mkdir [-mp] 目录名称
参数含义:
-m:配置文件的权限,直接设置,不受默认权限(umask)的限制
-p:递归的创建一系列的目录
rmdir [-p] 目录名称
参数含义:
-p:递归的将一系列的目录删除
说明:
该命令只能用于删除空目录,即目录下面不能包含任何文件,否则就会删除失败

rm:移除目录

rm [-fir] directoryname
参数设置:
-f 忽略不存在的目录,不会出现警告信息
-i 互动模式,在删除前询问用户是否执行操作
-r 递归删除子目录即包含的文件

mv:移动目录或更名

mv [-fiu] source destination
mv [options] source1 source2 source3… directory
参数设置:
-f 如果目标目录已经存在,不会询问而直接覆盖
-i 若目标目录已经存在时,就会询问是否覆盖
-u 若目标目录已经存在,且source比较新才会更新
说明:
不添加参数,可以直接将目录重命名

权限与命令间的关系

       在了解了文件和目录的相关知识之后,权限对用户的重要性不言而喻,在Linux系统中,要妥善设置相关的权限,如果设置有误,那么就会造成各种问题,而Linux系统的所有操作又是根据各种命令来实现的,所以明白权限与命令间的关系尤为重要。
- 用户能进入某目录成为“可工作目录”的基本权限是什么?
       用户对于该目录至少具有x的权限,如果要查询文件名,则还需要r权限。
- 户在某个目录内读取一个文件的基本权限是什么?
       用户对该目录至少需要x权限,对文件需要r权限。
- 用户可以修改一个文件的基本权限是什么?
       用户对文件所在的目录具有x权限,对该文件具有r和w权限。
- 一个用户可以创建一个文件的基本权限是什么?
       用户对该目录具有w和x权限。
- 用户进入某目录并执行该目录下的某个命令的基本权限是什么?
       用户对该目录和命令文件具有x权限。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值