不同的操作系統使用不同類型的文件系統
1、文件(管理)系統:是用來對文件和目錄進行管理、控制的數據結構的總稱。
Windows當中的文件系統: ntfs ,fat32 ,fat64
Solaris 當中的文件系統:ufs, zfs
Linux 當中的文件系統:ext3 ext4
Aix:jfs jis2 hp :hfs jfs
2、Solaris文件系統的類型:
1、磁盤文件系統 UFS(Unix file system )ZFS(zettabyte file system)
2、網絡文件系統 NFS network file system
3、swap文件系統 swap文件系統是一種內存替代的文件系統
4、/proc 進程文件系統 駐留在內存中
3和4 稱為虛擬文件系統,大多數基於內存,也有基於硬盤的。3是基於硬盤的。
通過df –h 進行查看詳細信息:
3、文件系統是一個層次結構,用於組織與存儲其他目錄與文件。
4、文件分類: 普通文件、設備文件、管道設備、鏈接文件、目錄文件。
5、文件系統的存儲結構:也是分塊的,有用戶數據,也有元數據(文件系統結構信息)。
文件系統的構成:0#塊:引導塊。1#超級塊。2----n塊。
每個文件對應一個i節點。
Ls -l 就是從i節點當中來的。 I節點 是對文件進行控制與管理的一種數據結構,存放文件說明信息。有 uid gid 文件大小,訪問時間,物理塊號等。
一個節點對應一個文件。
6、文件系統的訪問:
一步步往下尋找
7、幾個命令:
Ln 硬鏈接是備份,軟鏈接是快捷方式。
刪除比復制要快,刪除只是把節點刪掉了。復制的話,還需要復制數據。不能給目錄建立鏈接,只針對文件。因為硬鏈接指向數據的存儲位置。
分區就是 在磁盤中劃定 x---y 的范圍。硬鏈接與數據必須位於同一個分區中。
Df命令:獲取文件系統的信息
Du(disk xxx):輸出某個目錄或文件所占用的磁盤塊數
幾個文件系統簡介:
一、UFS文件系統:
分區、格式化、建立掛載點、將分區掛到掛載點下
分區:
Format:(格式化的意思)
分區的情況:
當沒有分區的時候,我們可以p一下,進入到partition當中(分區的意思)
可以 鍵入? ,看看可以填什麼。Cylinders 柱面。
注意柱面的序號,backup是備份的,不選。填完後q一下,退出,然後選擇 label 進行寫入到磁盤。
格式化區分:
Newfs /dev/rdsk/c1t0d0s3 默認為UFS文件系統。格式化的是一個裸設備
文件系統掛載: mount命令
將塊設備和目錄連接起來。可以掛載在空目錄下,也可以再已經建立好的目錄下進行掛載。
是文件系統的話,默認有一個lost+found 文件。且此文件下沒有file1了,隱藏了。我們可以umount。
當然,這些掛載都是暫時的,我們需要寫入到 /etc/vfstab 中,才可以永久存在。Vfs virtual file system。
fstype 根先啟動,不是由fs操作的,mount at boot 是否開機自動掛載。 fsck pass 1 表示串行檢查,2表示並行檢查。
當掛載成功的時候,我們只需要 mount /software 即可。因為它會自己加載剛剛更換的文件,/etc/vfstab 從這裡面尋找路徑。而不用像前面一樣。
停止進程訪問文件系統
以下是正規關閉進程的方式,kill容易造成系統死機。 fuser VS Kill
fuser 查看有誰在使用這個文件。 Fuser -c - k /software 就是把有人用的進程id給干掉。
文件系統維護
文件系統空間的擴充
清除系統日志文件
減少小文件的使用,節點數有限。增加文件系統i節點的數目。壓縮不常用的文件。
UFS文件系統不能在線擴充,只能增加某一個分區的大小。(其實是通過換更大硬盤的方式實現的) AIS支持。ZFS也支持。
二、ZFS文件系統
AIX\linux下面: 物理卷可以直接增加,卷組也隨之擴大。一袋面粉與一籠包子的關系。
而對於ZFS文件系統來說,我們通過存儲池來實現,比上面這種方式管理起來更加方便。而且具有自動回收資源的機制。
ZFS是一個128位文件系統,通過存儲池的方式來管理。(資源池)
分層方式來管理,創建快照等。文件系統開銷低,等效於管理一個目錄。
在創建文件時,ZFS會被占用,而創建文件系統的時候,反而不占用。也就是說不分配空間。而且,spool有資源回收的作用。類似於java裡面的資源回收機制。
創建文件系統的步驟:
Zfs備份與恢復
利用 Zfs send /receive 命令來實現
步驟:
Zfs不用來mount,不需要管理,會自動掛載。
Zpool add + ZFS池+磁盤,這樣可以添加磁盤。
Zpool status,查看狀態。
刪除比較麻煩, zpool remove testpool c1t3d0 這樣不行。
檢查zpool scrub testpool 檢查池 。
三、Swap交換分區
在windows裡面叫做虛擬內存。為了給有限的內存提供更大的空間,內存將不是激活態的程序放入到磁盤中,那麼磁盤中的這一部分叫做swap交換分區。當此程序變成激活態時,會從磁盤進入到內存。類似於緩存的東西。一般為內存的 1.5—2倍。需要最大可能的分步在多個磁盤上。如果放在某一個盤上的話,導致某一個磁盤負載比較大,所以,一般放到多個磁盤上,保存負載均衡。
常用命令:
Swap –l 查看swap分區情況
Vmstat report virtual memory statisics
回收 –d 即可。修改 /etc/vstab 就是把剛剛添加的記錄給刪除掉即可。