Linux培训
达内IT学院

400-111-8989

Linux文件和目录管理相关命令(三)

  • 发布:Linux培训
  • 来源:#/xiaoluo501395377/archive/2013/04/26/3043862.html
  • 时间:2018-04-08 15:43

通过前两篇的文章分享大家是否对Linux文件和目录管理的相关命令有所了解了呢?今天小编将继续为大家带来Linux文件和目录管理相关命令的第三篇文章,想要做Linux运维工程师的小伙伴,来看一看,希望能对你有帮助哦~

一、修改文件时间与创建新文件

每个文件在Linux下面都会记录3个主要的修改时间:

modification time (mtime): 当该文件的 内容数据 变更时,就会更新这个时间!内容数据指的是文件的内容,而不是文件的属性或权限!

status time (ctime): 当该文件的 状态(status) 改变时,就会更新这个时间,例如如果像是权限与属性被更改了,都会更新这个时间啊。

access time (atime): 当 该文件的内容被修改 时,就会更新这个读取时间(access)。举例来说,我们使用cat去读取/etc/passwd, 就会升级该文件的atime。

Linux培训

在默认情况下,ls显示的是该文件的mtime,也就是这个文件的内容上次更改的时间。

在Linux系统中,文件的时间非常的重要,因为如果误判文件时间,可能就会造成某些程序无法顺利运行。但是,万一我们发现一个文件的时间不对头,例如时间变成了未来的某个时间(这种现象在我们安装Linux系统时会出现这个情况),此时我们如何将该文件的时间变成"现在"的正常时间呢?这里就要用到本篇要介绍的第一个命令了——touch命令。

1. touch命令(修改文件时间与创建新文件)

Linux培训

接下来我们通过一些实例来看一下touch命令的这几个参数的使用方法:

Linux培训

Linux培训

通过touch这个命令,我们就可以轻松的改变文件的日期和时间,并且会建立一个空文件。

【注意】:当我们复制一个文件,并且复制了文件的所有属性,也没有办法改变该文件的ctime属性。ctime可以记录文件最近改变状态的时间。不过我们平常看到的文件属性中,我们最常关心的还是该文件的mtime,即该文件最近被修改的时间。

touch命令最常用的情况:

创建一个空的文件;

将某个文件日期修改为目前(mtime与atime)

二、文件与目录的默认权限与隐藏权限

1.umask (文件默认权限)

在之前的文章当中我们已经学习了如何建立或者是改变一个目录或文件的属性了。但是,我们是否有考虑过这样一个问题,当建立一个新的文件或者目录时,它的默认权限是什么?

这就要跟现在所讲解的umask命令扯上关系了。通常,umask就是指定"目前使用者在创建文件或目录时候的权限默认值".那么我们如何设置umask呢?首先我们来查看一下我们系统里默认的umask是什么样的

Linux培训

查看方式有两种,一种可以直接输入umask,就可以看到数字型态的权限配置分数,一种则是加入-S (Symbolic)这个选项,就会以符号类型的方式来显示出权限了! 这里显示的umask 有四组数字,第一组是特殊权限用的,我们先不要理他,先看后面三组数字。

在默认权限的属性上,目录与文件是不一样的。由于我们不希望文件具有可执行的权限,默认情况下,文件是没有可执行(x)权限的。因此:

若使用者创建为 文件 则默认【没有可运行( x )权限】,亦即只有rw这两个权限,也就是最大为666分,默认权限如下: -rw-rw-rw-

若使用者创建为 目录 ,则由于x与是否可以进入此目录有关,因此默认为所有权限均开放,亦即为777分,默认权限如下: drwxrwxrwx

umask 指定的是【该默认值需要减掉的权限!】因为r、w、x分别是4、2、1,也就是说,当要拿掉能写的权限,就是输入2分,而如果要拿掉能读的权限,也就是4分,那么要拿掉读与写的权限,也就是6分,而要拿掉执行与写入的权限,也就是3分,如果我拿掉5分的话,那就是拿掉读与执行的权限啦!如果以上面的例子来说明的话,因为umask为022,所以user并没有被拿掉属性,不过group与others的属性被拿掉了2 (也就是w这个属性),那么由于当使用者:

建立档案时:(-rw-rw-rw-)–(-----w--w-) ==> -rw-r--r--

建立目录时:(drwxrwxrwx)–(d----w--w-) ==> drwxr-xr-x

我们可以通过实例来看一下:

Linux培训

所以,umask与文件和目录的默认权限是有很大关系的。如果我们希望编写的文件具有的权限是-rw-rw-r--权限,则此时应该将umask改成002才对。例如如下例子:

Linux培训

在默认的情况中,root的umask会拿掉比较多的属性,root的umask默认是022,这是基于安全的考量。至于一般身份使用者,通常他们的umask为002,亦即保留同群组的写入权力!关于默认umask的配置可以参考/etc/bashrc这个文件的内容,不过,不建议修改该文件。

、文件隐藏属性

我们通过ls -l命令来查看文件的信息时,一般列出来的文件属性只有9个,但是文件是有隐藏属性的,隐藏属性对系统有很大的帮助,尤其是系统安全性方面,非常的重要。

1.chattr (设置文件隐藏属性)

Linux培训

Linux培训

这个命令是很重要的,尤其是在系统的数据安全上面!由於这些属性是隐藏的性质,所以需要以 lsattr命令 才能看到该属性!其中,最重要的当属+i与+a这个属性了。+i可以让一个文件无法被更改,对于需要强烈的系统安全的人来说,这两个属性是最重要的!

2. lsattr (显示文件的隐藏属性)

Linux培训

使用chattr设置了文件的隐藏属性后,我们可以通过lsattr这个命令来查看该文件的隐藏属性。

以上就是小编今天与大家分享的Linux文件和目录管理相关命令(三),希望看过本文之后能对你有帮助,欢迎来达内Linux官网关注Linux文件和目录管理相关命令后面的内容,想了解更多Linux系统相关知识也要来达内官网哦~小编在这里等你。

预约申请免费试听课

填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:Linux文件和目录管理相关命令(二)
下一篇:Linux文件和目录管理相关命令(四)

Linux发行版本有哪些?

哪些当前主流的技术与Linux相关?

云计算的概念是由什么提出的?

云计算是啥意思?

  • 扫码领取资料

    回复关键字:视频资料

    免费领取 达内课程视频学习资料

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省