鸟哥的Linux私房菜10.13 档案与目录管理

第7章 Linux档案与目录管理

**相对路径与绝对路径**

绝对路径:路径的写法一定由根目录写起,例如:/usr/share/doc这个目录

相对路径:路径的写法不是由根目录写起,例如由/usr/share/doc要到/usr/share/man可以写成:cd ../man

相对路径可以减少寻找路径时的输入量,而绝对路径可以保证正确性

***目录的相关操作:  .代表此层目录; ..代表上一层目录; -代表前一个工作目录; ~代表目前用户的根目录; ~account代表account这个用户的根目录

根目录的上一层和自己是同一个目录,属性和权限完全一致

处理目录的指令:     cd:变换目录;      pwd:显示当前目录;     mkdir:建立一个新的目录;     rmdir:删除一个空的目录

关于 -p

如果写出    mkdir -p /home/bird/testing/test1的指令能自动建立一系列的目录……但是这样如果打错字很容易造成目录的比较严重的错误,所以还是一个个按顺序自己建立吧

umask能让我们了解到新建目录的权限

rmdir只能删除“空”的目录哦,目录要从底到上一层层地删除, 如果要清空当前目录,用  rm -r test就好,不过比较危险的说

执行文件路径的变量:$PATH————————————————————————————

PATH是为了要下达一些指令比如说ls这样的,就搜寻一个目录里面可以执行的文件显示给用户了

用户当前目录是不会假如PATH搜寻的目标目录的,因为要防止恶意用户了

1、不同身份的用户默认的PATH不同,默认能够随意执行的指令也不同

2、PATH是可以修改的,所以一般用户可以通过修改PATH来执行某些位于/sbin或者/usr/sbin下的指令来查询

3、使用绝对路径或相对路径指定某个指令的文件名来执行,会比搜寻PATH来得正确

4、指令要放在正确的目录下,执行才会比较方便

5、本目录(.)最好不要放到PATH当中

-----------------------------------------------------------------------------------------------

档案和目录的查看: ls

ls在linux系统中,就相当于dir在windows系统中

要复制档案的话,就使用cp指令

不过cp也不是能够随便执行的了,在复制之前必须了解清楚被复制文件是否需要完整保留,是否为连接档,是否为特殊档案,是否为目录等

rm(移除档案或目录)       mv(移动档案或目录,或更名)    -u可以用来测试新旧档案,rename可以用来更改文件名

 basename +路径,得到的是档案名,dirname +路径,得到的是目录名

------------------------------------------------------------------------

档案内容查阅:

cat(concatenate)         由第一行开始显示档案内容(后面可以加一些选项与参数的哦)

-A:    相当于 -vET的整合选项,可列出一些特殊字符而不是空白而已
-b:    列出行号,仅针对非空白行做行号显示,空白行不标行号
-E:    将结尾的断行字符$显示出来
-n:    打印出行号,连同空白行也会有行号,与-b的选项不同
-T:    将【tab】按键以^I显示出来
-v:     列出一些看不出来的特殊字符

tac         从最后一行开始显示,可以看出tac是cat的倒写

nl           显示的时候,顺便输出行号

  -b (a  列出空行行号; b  不列出空行行号) -n (ln左方显示;rn右方显示不加0;rz右方显示加0) -w (行号占用位数)

more    一页一页的显示档案内容
less      与more相似,但是比more更好的是,他可以往前翻页
head     只看头几行
tail         只看最后几行
od          以二进制的方式读取档案内容

------------------------------------------

修改档案时间或新建档案: touch

一个档案下面,是有三个主要的时间哦——modification time(mtime)内容数据status time(ctime)状态时间access time(atime)读取时间

touch这个指令最常被用来使用:建立一个空的档案,将某个档案日期修订为目前

------------------------------------------------------------------

档案与目录的默认权限与隐藏权限

chattr可以设定系统的隐藏属性,而lsattr可以用来查看……

 关于权限问题,看一下第六章的一个内容:如果系统有一个一般用户dmtsai,他的群组属于users,他的家目录在/home/dmtsai,作为root如果想要将~/.bashc复制给他,那么可以执行如下指令:   复制档案: cp ~/.bashrc ~dmtsai/bashrc       修改属性:chown dmtsai:users ~dmtsai/bashrc

chmod是什么指令呢?说是前一章有比较详细的介绍,不知道哦……待会儿去看看吧。?????

----------------------------------------------------------------------------

档案默认权限:umask(关于分数的一些计算方法)

直接输入这个指令出来一个四位数字表示数字形态的权限设定分数(一般权限有关的是后三位),加入一个-S(Symbolic)就会以符号类型的方式来显示出权限了。

若用户建立【档案】,则默认没有可执行权限x,那么最大值为666分     -rw-rw-rw-;

若用户建立【目录】,则默认为所有权限都开放,那么最大值为777分 drwxrwxrwx;

umask指的是“该默认值需要减掉的权限”,因为r、w、x分别是4、2、1分,所以输入的分数对应该位置上要禁止的权限。

----------------------------------------------------------------------------

档案的隐藏属性(chattr指令——配置文件隐藏属性只能在Ext2/Ext3文件系统上生效)

lsattr(显示文件隐藏属性)          lsattr [-adR] 文件或目录

-a:显示隐藏文件的属性

-d:如果连接的是目录,仅列出目录本身的属性而非目录内的文件名

-R:同子目录的数据也一并列出来

----------------------------------------------------------------------------

档案特殊权限:SUID,SGID,SBIT

Set UID,即SUID是当s这个标志出现在档案拥有者的x权限上时。对于目录无效……它的限制与功能如下:1、SUID权限仅对二进制程序有效,2、执行者对于该程序需要具有x的权限,3、本权限仅在执行该程序的过程中有效,4、执行者将具有该程序拥有者的权限

Set GID,即SGID是当s这个标志出现在群组的x权限上时。它对于档案的限制与功能如下:1、SGID仅对二进制程序有效,2、程序执行着对于该程序具备x的权限,3、执行者在执行程序的过程中将会获得该程序群组的支持。           对于目录的功能:1、用户若对此目录具有r与x权限时,该用户能够进入此目录,2、用户在此目录下的有效群组将会变成该目录的群组,3、若用户在此目录下具有w的权限(可以新建档案),新档案的群组与该目录的群组相同。

Sticky Bit,即SBIT只对目录有效。它的限制与功能有:1、当用户对于此目录具有w和x权限,亦即具有写入的权限时,2.当用户在该目录下建立档案或目录时,仅有自己与root才有权力删除该档案

SUID/SGID/SBIT的权限设定   

数字设定方法就是在三位数字形态的权限前面加一个数字:4为SUID,2为SGID,1为SBIT

------------------------------------------------------------------------

观察文件类型:file

脚本文件名的搜寻: which   type(cd)

档案名称的搜寻:   通常使用whereis或者locate来检查,实在不行采用find

whereis和locate是在数据库中搜寻文件,相当快速,但是数据库的建立默认是经常有更新(不同distribution不一样,CentOS 5.x是每天一次),所以可能搜不到

手动更新数据库:updatedb

***********************************************************************************%¥#@

权限与指令间的关系:(极重要)

一、让用户能进入某目录成为【可工作目录】的基本权限:

        1.可使用的指令,2.目录所需权限(至少x),3.额外需求

二、用户在某个目录内读取一个档案的基本权限:

        1.可使用的指令,2.目录所需权限(至少x),3.档案所需权限(用户需要r)

三、让用户可以修改一个档案的基本权限:

        1.可使用的指令,nano或vi等,2.目录所需权限(至少x),3.档案所需权限(用户至少需要r和w)

四、让用户可以建立一个档案的基本权限:

        1.目录所需权限(用户在该目录需要x,w的权限,重在w)

五、让用户进入某目录并执行该目录下的某个指令的基本权限:

        1.目录所需权限(至少x),2.档案所需权限(至少x)

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值