8.1Linux文件系统基础概念

每一个扇区大小为512字节
块的大小通常是扇区的2^n倍
每一个块都属于一个文件,一个文件能够包含多个块
Linux文件系统:
    存储空间:数据区,元数据区node

        stat命令:查看元数据信息
            文件名,大小,时间戳,权限,属主、属组,对应的数据存储在哪些磁盘块上;
   
    文件名是存储在目录上,目录是路径映射符号
       
            index node 索引节点: 索引区域中每一个文件元数据条件
                每一个inode都有其编号:ls -imysql

                若是某inode指向的常见类型的文件(f, d),指定向磁盘的数据区中的某个或某
                些个磁盘块sql

                目录:数据区存储的是(直接附属于此目录)文件名,以及与其对应的inode编号,
                    dentry: 目录项
              根是自引用的
             
        寻找/var/log/messages文件的过程?
      先找到内核,内核把根的位置信息提供出来,根对应有一个inode,由此就能够找到根所在设备的
      元数据区,在元数据区找到根对应的inode,在inode中除了根的信息外,还有指向的磁盘块,在磁盘
      块上就能够找到附属于根的文件名,此时就能够找到var inode号,由inode号,再来查表就能够找
      到var对应的inode,var的inode也会指向磁盘块,由此就能够找到log,再这样依此查找到messages
     
            格式化过程:建立文件系统  把磁盘空间划分为数据区和元数据区      网络

            bitmap:位图索引
                是inode位图app

                block bitmap:块位图索引分布式

        块:块组  多个块组合成为一个块组索引

        super block:保存了当前系统上各块组的信息 是有备份,在不一样的块中进行备份
        tune2fs -l /dev/sdan
        dumpe2fs  /dev/sdanci

        连接文件:
            /var/log/messages
            /tmp/log/abc inode: /var/log/messagesit

            一个inode能够被引用屡次,其有计数器:在引用次数降为0以前是不会被标记为未用的。sed

            两个路径的文件名:指向同一个inode,此时,一个文件就称为另外一个文件的硬连接

        建立连接:
            ln [-sv] SRC DEST
            ln - make links between files
      -s, --symbolic
         make symbolic links instead of hard links
[root@localhost tmp]# mkdir links
[root@localhost tmp]# touch hardlinks
[root@localhost tmp]# ls -i hardlinks
399569 hardlinks
[root@localhost tmp]# ln hardlinks hard
[root@localhost tmp]# ls -il
total 4           硬链接数增长了,两个inode都是同样的
399569 -rw-r--r--. 2 root root    0 Dec  2 13:03 hard
399569 -rw-r--r--. 2 root root    0 Dec  2 13:03 hardlinks
396996 drwxr-xr-x. 2 root root 4096 Dec  2 13:03 links
393219 -rw-------. 1 root root    0 Dec  1 15:48 yum.log
[root@localhost tmp]# ln links hard2
ln: `links': hard link not allowed for directory
[root@localhost tmp]# pwd
/tmp
[root@localhost tmp]# df -lhP
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/vg_lvm-lv1   9.8G  1.8G  7.5G  20% /
tmpfs                    495M     0  495M   0% /dev/shm
/dev/sda1                190M   50M  130M  28% /boot
/dev/mapper/vg_lvm-lv2   9.8G   98M  9.2G   2% /var
/dev/mapper/vg_lvm-data  9.8G   51M  9.2G   1% /mysql
[root@localhost tmp]# ln hardlinks /var/hello
ln: creating hard link `/var/hello' => `hardlinks': Invalid cross-device link

注意硬链接文件的权限都是644 

            无效的跨设备链接
            硬连接:
                不能对目录文件建立硬连接;
                硬连接不能跨分区
                建立硬连接会增长inode引用计数

            符号连接:
                能够对目录建立
                不受分区限制
                对文件建立符号连接不会增长引用计数
[root@localhost tmp]# ls
[root@localhost tmp]# touch softfile
[root@localhost tmp]# mkdir softdir
[root@localhost tmp]# ls -li
total 4
396996 drwxr-xr-x. 2 root root 4096 Dec  2 13:09 softdir
393219 -rw-r--r--. 1 root root    0 Dec  2 13:09 softfile
[root@localhost tmp]# ln -sv softfile file1
`file1' -> `softfile'
[root@localhost tmp]# ls -il
total 4
399569 lrwxrwxrwx. 1 root root    8 Dec  2 13:10 file1 -> softfile
396996 drwxr-xr-x. 2 root root 4096 Dec  2 13:09 softdir
393219 -rw-r--r--. 1 root root    0 Dec  2 13:09 softfile    
[root@localhost tmp]# ln -sv softdir /var/dir1
`/var/dir1' -> `softdir'
[root@localhost tmp]# ls -l /var/dir1
lrwxrwxrwx. 1 root root 7 Dec  2 13:11 /var/dir1 -> softdir
[root@localhost tmp]# ls -l
total 4
lrwxrwxrwx. 1 root root    8 Dec  2 13:10 file1 -> softfile
drwxr-xr-x. 2 root root 4096 Dec  2 13:09 softdir
-rw-r--r--. 1 root root    0 Dec  2 13:09 softfile

注意软链接文件目录的权限都是777
可是,实际文件的访问权限只与源文件权限有关,与链接文件无关
       
        文件删除:inode被标记为空闲,此inode指向的磁盘块被标记为空闲;
            若是inode被引用了屡次,且这次删除未使得其引用计数下降为0的话,这意味着文件被删除仅删除了一个访问路径;

        文件复制:建立一个新文件,并原文件中数据在新文件指向的磁盘块中再写一次的过程;

        文件移动:
            在同一个分区移到:移动文件仅是改变了文件访问路径;
            跨分区移到:在新分区建立文件,把数据复制过去,删除原分区数据;

    Linux的文件系统的类型:
        ext(2,3,4), xfs, ffs, ufs, reiserfs, jfs, vfat(fat32), ntfs

        交换文件系统:swap

        网络文件系统:nfs, smbfs(cifs)

        分布式文件系统:ceph

        光盘文件系统:iso9660

        btrfs,

相关文章
相关标签/搜索