Linux运维学习笔记之六:Linux中的文件类型、属性、正则表达式、权限体系

第十章 Linux中的文件类型

一、扩展名:

   windows利用文件扩展名来区分文件类型

   Linux中文件扩展名和文件类型没有关系

    为了容易区分和兼容用户使用windows的习惯,Linux中也会用扩展名来表示文件类型

二、常见文件扩展名:

    .tar、.tar.gz、.tgz、.zip、.tar.bz:表示压缩文件,创建命令一般是tar、gzip、zip等

    .sh:表示shell脚本,使用shell写成的。

    .pl:表示perl语言文件

    .py:表示python语言文件

    .html、.htm、.php、.jsp、.do:表示网页文件

    .conf:表示系统服务的配置文件

    .rpm:表示rpm安装包文件

三、运维开发语言:

shell/python/php三者之一(perl快被淘汰),至少一个,最好两个  

四、LINUX中的七种文件类型

    Linux中,一切皆文件。常见的有:普通文件、目录、字符设备文件、块设备文件、符号链接文件等

     七种文件类型

    d  目录文件。

    l  符号链接(指向另一个文件,类似于瘟下的快捷方式)。

    s  套接字文件。

    b  块设备文件,二进制文件。

    c  字符设备文件。

    p  命名管道文件。

    -  普通文件(3种),或更准确地说,不属于以上几种类型的文件

        纯文本文件(ASCII):内容可直接读取,字母,数字等。如配置文件等,Linux中绝大多数文件是纯文本文件。

       file a.txt

           ASCII text

        二进制文件(inary):Linux中的可执行文件,如命令文件等

       file /bin/cat

           ELF 64-bit LSB executable

        数据格式的文件(data):具有特定格式的

       file /var/log/wtmp

           data

   

     ls -l 的结果中的第一个字符表示文件类型

    ls-l

        -rw-r--r-- 1 root root  2 03-27 02:00   fonts.scale

        drwxr-xr-x 2 root root  4.0K 04-19 10:53 mydir

 

    ls-la /dev/hda1

        brw-r----- 1 root disk 3, 1 2006-04-19/dev/hda1

   

    ls-lh /var/lib/mysql/mysql.sock

        srwxrwxrwx 1 mysql mysql 0 04-19 11:12/var/lib/mysql/mysql.sock

        

    ls-lh setup.log

        lrwxrwxrwx 1 root root 11 04-19 11:18setup.log -> install.log

   

    find/var/spool -type p | xargs ls -l  

           prw--w--w-. 1 postfix postfix 0 Jan 2 17:08 pickup

           prw--w--w-. 1 postfix postfix 0 Jan 2 17:08 qmgr

               

    ln-s kernel-6.15-1.2025_FC5.i686.rpm kernel.rpm  #创建链接文件

    ls-lh kernel*

        -rw-r--r-- 1 root root 14M 03-16 07:53kernel-6.15-1.2025_FC5.i686.rpm

        lrwxrwxrwx 1 root root  33 04-19 11:27 kernel.rpm ->kernel-6.15-1.2025_FC5.i686.rpm

第十一章 Linux中的文件属性

一、查看文件属性

    ls-lhi

    inode 文件类型及权限硬链接数 属主  属组  文件/目录大小最后修改时间(月日时间)   文件名

    403848 -rw-------.   1      root root   2.5K       Jan 2  00:00   anaconda-ks.cfg

    403862drwxr-xr-x.    2      root  root    4.0K       Jan 1  16:03   Desktop

    403866drwxr-xr-x.    2      root  root    4.0K       Jan 1  16:03   Documents

    403863drwxr-xr-x.    2      root root    4.0K       Jan  1  16:03  Downloads

 

二、各属性说明
1、inode: 索引节点(index node)
(1)理解inode

     文件储存在硬盘上(硬盘格式化后分为inode和block两部分,inode存文件信息,block存文件数据),硬盘

    的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。操作系统读取硬盘的时候,

    不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个"块"(block)。

    这种由多个扇区组成的"块",是文件存取的最小单位。"块"的大小,最常见的是4KB,即连续八个 sector组成

    一个 block。文件数据都储存在"块"中,那么很显然,我们还必须找到一个地方储存文件的元信息,比如文件

    的创建者、文件的创建日期、文件的大小等等。这种储存文件元信息的区域就叫做inode,中文译名为"索引节点"。

 

(2)inode的内容

    inode包含文件的元信息,具体来说有以下内容,但不包含文件名:

      * 文件的字节数

      * 文件拥有者的User ID

      * 文件的Group ID

      * 文件的读、写、执行权限

      * 文件的时间戳,共有三个:ctime指inode上一次变动的时间,mtime指文件内容上一次变动的时间,

atime指文件上一次打开的时间。

      * 链接数,即有多少文件名指向这个inode

      * 文件数据block的位置(指针,inode节点和block的对应关系)

   

(3)inode的特殊作用

    由于inode号码与文件名分离,这种机制导致了一些Unix/Linux系统特有的现象。

      1.有时,文件名包含特殊字符,无法正常删除。这时,直接删除inode节点,就能起到删除文件的作用。

      2.移动文件或重命名文件,只是改变文件名,不影响inode号码。

      3.打开一个文件以后,系统就以inode号码来识别这个文件,不再考虑文件名。因此,通常来说,系统无

法从inode号码得知文件名。

          第3点使得软件更新变得简单,可以在不关闭软件的情况下进行更新,不需要重启。因为系统通过inode

号码,识别运行中的文件,

       不通过文件名。更新的时候,新版文件以同样的文件名,生成一个新的inode,不会影响到运行中的文件。等

到下一次运行这个软件的时候,

       文件名就自动指向新版文件,旧版文件的inode则被回收。

       

(4)查看系统inode的大小:

    dumpe2fs /dev/sda3 | grep -i "Inodesize"

    CentOS6's / inode size 256

    CentOS6's boot inode size 128

   

    CentOS5's / inode size 128

   

(5)查看到系统inode的总量和使用量

    df -i

   

(6)inode小结

      (a)磁盘分区格式化文件系统后,会分为inode和block两部分内容

      (b)inode存放文件的属性以及指向文件实体的指针,文件名不在inode里,一般在上级目录的了block里

      (c)访问文件的过程:文件名--->inode(判断权限等)--->blocks

      (d)inode一般情况默认大小256B,block大小1 2 4K,默认4K。引导分区等特殊分区一般为inode128B,Block 1K

      (e)通过df -i查看inode的数量及使用情况,dumpe2fs /dev/sda? 来查看分区的inode和block的大小和数量

      (f)一个文件至少要占用一个inode和一个block,多个文件可以占用同一个inode(硬链接)

      (g)一个block只能被一个文件使用,如果文件很小而block很大,剩余空间浪费,无法被其它文件使用

      (h)block不是越大越好,要根据业务的文件大小进行选择,一般默认为4K

      (i)可以在格式化磁盘时改变indoe和block的大小

          mkfs.ext4-b 2048 -l 2048 /dev/sdb1

          dumpe2fs/dev/sdb1 | grep "Block size"

          dumpe2fs/dev/sdb1 | grep "Inode size"

 

2、文件权限

 drwxr-xr-x.

    第一个字符代表文件(-)、目录(d),链接(l)

    其余字符每3个一组(rwx),读(r)、写(w)、执行(x)、无权限(-)

    第一组(第2、3、4位):  rwx,文件所有者的权限是读、写和执行

    第二组(第5、6、7位):  r-x,与文件所有者同一组的用户的权限是读、执行,但不能写

    第三组(第8、9、10位): r-x,不与文件所有者同组的其他用户的权限是读、执行,但不能写

    也可用数字表示为:r=4,w=2,x=1  因此rwx=4+2+1=7      

就是在权限的最后面有一个.(英文句号)这个符号,CentOS6中才有,CentOS5 没有。这个符号与SELinux 有关。关闭SELinux后再创建的文件就不会有这个符号了。

   

3、硬链接数
(1)硬链接介绍     

    硬链接是指通过索引节点(Inode)来进行链接,是文件的又一个入口,是已经存在的文件的一个别名,当原文件删除时,新建的文件仍然可以使用。inode信息中有一项叫做"硬链接数",记录指向该inode的文件名总数࿰

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值