文件系統

文件系統
    1.所謂文件系統,就是文件數據在計算機硬件上以何種形式存放,組織及管理的
      文件數據:1.元數據(metadate):屬性信息
            2.數據
           Attention:這兩種數據是分開存放的
        元數據:inode
          1.本身是個數據結構,佔有獨立的磁盤塊
          2.主要用來存放屬性信息,包括:權限,屬主,屬組,大小,類型,存儲這個文件或目錄的真正的磁盤塊編號
         Attention:ls -i 查看inode號,以及使用情況
        數據:
          1.文件數據都是放在磁盤塊上的
          2.在linux下,目錄也是以文件的形式存放的,其中存放的是,文件名和inode的對應關係
         例如:查找/var/log/messages
            /(根,是一個特殊的inode節點,特殊之處在於可以自我引用)————通過內部的磁盤編號,找到根目錄的磁盤塊號————>
            根目錄文件中找到,var目錄和其inode的對應條目----以此找到var的inode節點--->在var的inode中找到,var目錄的磁盤塊號
            ----->找到磁盤塊,在其內部找到log目錄和其inode的對應條目——————以此找到log目錄的inode————>在log的inode中找到,log目錄的磁盤塊號
            ----->找到磁盤塊,在其內部找到messages文件和其inode的對應條目——————>以此找到messages的inode————>在messgaes的inode中找打,messages的磁盤塊號
            ——————>找到磁盤塊,讀取其中數據
        inode和磁盤塊的位圖 bitmap 1.0表示空閒
                      2.1表示已用
                 Attention:1.爲了方便管理,將磁盤分成多個inode表和磁盤塊表配套的獨立管理的空間
                           2.mv 移動文件 只是將對應的磁盤塊號和inode的對應條目放到對應的目錄磁盤塊中去了
    2.鏈接
    硬鏈接:不同路徑的文件指向同一個inode
        1.不能跨分區存在
        2.不能對目錄創建硬鏈接,避免循環調用
      刪除硬鏈接:減少文件對應的inode被引用的次數,而不動文件本身
     軟鏈接:是獨立的文件,有獨立的inode號
         文件權限爲777,但不表示源文件的權限也是777,所以更應關注源文件的權限
                1.可以跨分區存在
                2.可以對目錄創建        
        Attention
           1.軟鏈接文件的大小是鏈接的源文件的路徑字符數
             例如:在/tmp下創建一個軟鏈接文件,鏈接的是當前目錄下的inittab到/tmp/s,軟鏈接文件的大小就是inittab的字符數7b
                在/tmp下創建一個軟連接文件,鏈接的是/root目錄下的inittab到/tmp/d,軟鏈接文件的大小就是/root/inittab的字符數13b              
                    2.刪除軟鏈接的源文件,鏈接損壞,創建一個與源文件同名的文件,鏈接可用,因此,鏈接只識別路徑
                    3.刪除軟鏈接,源文件不動        
      創建鏈接:#ln [options] srcFILE destDIR
               默認創建硬鏈接
               -s 創建軟鏈接文件
         特殊文件:c 字符設備文件
               b 塊設備文件
               標識文件大小的位置:因爲此文件不佔磁盤空間,而顯示的設備號
      3.文件系統類型
            ext2,ext3,ext4
            xfs,reiserfs,iso9660,swap
            GFS2,OCFS2,NFS,SMBFS
            VFAT,NTFS
      4.VFS:Virtual FileSystem
          解決:在不同文件系統下可以執行同一命令,而不用程序員關心
      5.文件管理命令
          ls /etc -ldh 查看/etc的權限等(-l)信息,其中文件大小以可讀形式(單位換算,-h) 查看目錄本身信息(-d)
          du [options] dir 顯示目錄下各個目錄大小,和文件大小
                 file 顯示文件大小
            -s      顯示總和
            -h      單位換算,可讀模式
            -sh
          df 顯示每個分區(也就是每個文件系統)的使用情況
            其中有個tmpfs 是僞文件系統
            -h 可讀模式,單位換算
            -i 顯示inode使用情況
            -ih
            Attention
            ls -i 也可以查看inode的使用情況
          fdisk -l 列出當前系統上每一個磁盤及其使用情況
文件系統檢測
     檢測文件系統是否存在不一致性(inode條目在,而文件卻不完整,通常是由系統故障產生的)
   fsck (filesystem check,文件系統檢測)
     fsck [options] 設備文件 /dev/sdb1
        -t fstype 默認檢測/boot 和/
   e2fsck [options] 設備文件 專門檢測ext2和ext3文件系統
       -f  強行檢測,即使文件系統不一致
       -a  自動修復文件系統不一致
       -B  指定塊大小
   dumpe2fs [options] 設備文件  詳細顯示ext2,ext3文件系統信息
        -f    強行顯示,即使文件系統不一致,如果不一致,默認是不顯示的
        -h    只顯示超級塊信息
       Attention:顯示Filesystem features has journal  表示有文件系統有日誌功能
   tune2fs [options] 設備文件 建立好文件系統之後,修改屬性信息
       -j    ext2升級爲ext3 (安全方式,不會改動文件)
       -m    預留給超級用戶的磁盤空間百分比
       -r    直接指定多少磁盤塊給超級用戶
       -L    設置卷標
       -V    顯示超級塊信息(不顯示塊組)=dumpe2fs -h
       -c    調整多少次掛載之後自動檢測文件系統
            0,-1代表關閉此功能
       -i num{d|m|w(eek)}  
            調整多少時間之後自動檢測文件系統
       -u  user 指定哪個超級用戶
       -o(小) 設定和調整掛載選項
       -o   acl  打開掛載的訪問控制列表功能
            ext系列有acl功能,掛載時默認不支持,
            需要通過此命令開啓
     Attention:磁盤在文件系統創建好之後不能被修改,所以在創建之時一定要慎重!!!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章