1. 程式人生 > >第六天:文件系統

第六天:文件系統

自動掛載 code super 硬鏈接 tun device 編號 rtp block

1,存儲空間:數據區&元數據區 -----> 命令stat

2,元數據:文件名,大小,時間戳,權限,屬主,屬組,對應的數據存儲在磁盤塊---->Index node(元數據編號:ls -i),

3,目錄:數據區存儲的是文件名和對應的inode編號。格式化是為了創建文件系統

4,bitmap ,superblock

5,鏈接文件:一個inode可以被引用很多次,當計數器降為0的時候,標記為未用,兩個路徑的文件名,指向同一個inode的時候,一個文件就成為另一個文件的硬鏈接。

6,創建:ln -sv src dst

  硬鏈接:不能對目錄創建,不能跨分區,會增加inode引用計數

  符號鏈接:可以對目錄創建,沒有分區限制,不會增加引用計數

7,文件刪除,復制,剪切

  刪除:inode標記空閑,指向的block塊標記空閑。如果計數為大於0,意味文件刪除僅刪除一個訪問路徑

  復制:創建新文件,將源文件的數據在新文件指向的磁盤塊中再寫一次。

  剪切:同分區,改變的是訪問路徑。跨分區,新分區創建文件,把數據復制過去,刪除原分區數據。

8,特殊文件----> 設備文件---->只有inode,沒有數據。關聯到一個驅動,和硬件設備打交道。

9,命令:fdisk -->p,n,d,t,l,w,q centos5-->partprobe [device] centos7 --->partx -a [device]

10,文件系統創建:mkfs -t fstype == mkfs.fstype

11,Linux內核是模塊化的,支持動態裝載,文件系統直接打包到內核,也可以編譯成內核模塊 --> lsmod

12,mke2fs

mke2fs:
     -t {ext2|ext3|ext4}:指定文件系統 
     -b {1024|2048|4096}:指定塊大小
     -L LABEL: 打標
     -j: 相當於 -t ext3
     -i #: 每多少字節給創建一個inode,此字節數不應該少小塊大小
     -N #: 直接指定可用的inode數;
     -m #: 指定預留空間占整個分區空間的百分比;默認為5;
     
-O:指定分區特性
mke2fs -t ext3 -b 4096 -L ‘data‘ /dev/sda2
blkid /dev/sda2
e2label /dev/sda2

13,tune2fs --->修改分區屬性

tune2fs:
    -l/h :查看超級塊信息
    -j : ext2轉變為ext3
    -L :修改卷標
    -m:修改預留百分比
    -o :開啟指定的掛載選項:[^]
    -i :設置強制自檢的時間間隔
tune2fs -c 30 /dev/sda2
tune2fs -i 10d /dev/sda2
tune2fs -o acl,user_xattr /dev/sda2
參考:https://www.aliyun.com/jiaocheng/linux?spm=5176.100033.1.3.7b5c598aA6l38d
   http://www.361way.com/category/linux-unix-mac

14,fsck:離線修復最好

fsck -t fstype -a自動 -r 交互式

e2fsck -y(回答yes/no) -f 強制檢測

15,掛載mount

mount 通過查看/etc/mtab文件來顯示當前系統已經掛載的設備
mount 【option】    device     mpoint
device:(設備文件/dev/sda2,卷標:-L lable ,UUID: -U uuid , 偽文件系統:proc,sysfs,devtmpfs,configfs)

mpoint:存在的空目錄

-t : 指定掛載設備上的文件系統
-r/w : 只讀/ 讀寫掛載
-n: 不更新/etc/mtab
-a: 自動掛載所有支持自動掛載的設備/etc/fstab
註意查看內核追蹤的所有設備:cat /proc/mounts

-o options
    async/sync: 異步或者同步掛載
    atime/noatime:
    diratime/nodiratime:目錄的訪問時間戳
    auto/noauto:是否支持自動掛載
    exec/noexec:是否支持文件系統上應用程序運行進程
    dev/nodev:是否支持文件系統上使用設備文件
    suid/nosuid: 是否支持文件系統上使用設備文件。
    ro/rw/remount:只讀、讀寫, 重新掛載
    user/nouser:是否容許普通用戶掛載
    acl:啟用文件系統上ACL功能
default:rw,suid,dev,exec,auto,nouser,async

16,fuser: 查看正在訪問指定文件系統的進程

#fuser -v mpoint

#fuser -km mpoint

17,交換分區swap

swapon

https://blog.csdn.net/daydayup654/article/details/78788310

第六天:文件系統