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,

相關文章
相關標籤/搜索