AIX 5L支持的5種文件系統:JFS,JFS2,NFS,CDRFS,UDFS

JFS(Journaled File System):          日誌型文件系統
JFS2(Enhanced Journalted File System): 增強的日誌型文件系統
NFS(Network File System):              網絡文件系統
CDRFS(CD-ROM File System):          CD-ROM文件系統
UDFS(DVD-ROM File System):          DVD-ROM文件系統


系統中所有文件和目錄都存儲在樹根(/)之下,根文件系統存在於rootvg中。
其他文件系統都獨立於根文件系統。
手工安裝本地/遠程文件系統: mount
卸載本地/遠程文件系統:        umount
root文件系統位於/dev/hd4邏輯捲上,所有權屬性:
(1)AIX Ver4.3.3及以前:bin.bin
(2)AIX Ver5.1L:        root.system(防止root用戶的Dead Letter寫入根文件系統)
顯示文件系統中超級塊的內容,i節點的映射表和磁盤映射表。
#dumpfs /dev/hd1        (文件系統更新失敗用fsck命令修復)
AIX4以上的日誌型文件結構中引入“碎片”(Fragment)概念。目的:減少磁盤空間的浪費。
AIX4之前的系統:數據存儲的最小單元是邏輯塊,有“碎片”之後,則以Fragment爲最小單位。
碎片的大小在文件系統創建時指定並存於超級塊中。JFS支持大小:512,1024,2048和4096字節。
巨型文件系統有兩種碎片大小:32*4096字節(128K)和4096字節。文件大於4MB,則128K大碎片,否則使用4096字節的Fragment。
碎片並非越小越好,因爲太小可能增加I/O操作成本,而且可能造成大量殘片。
使分散碎片連續化:defragfs(可能對文件系統的性能產生影響)。
每個文件或目錄都有一個i節點(Index Node),i節點包含文件或目錄的基本信息,如文件類型、訪問權限、主用戶ID、組ID和文件的連接數。(i節點本質上是一個指向文件數據塊的指針。)
i節點數量由nbpi(Number of Bytes Per i-node 每個i節點擁有的字節數)參數來指定。
日誌型文件系統支持的nbpi值:512,1024,2048,4096(默認值),8192,16384,[32768,65536,131072,僅AIX4.2及以後版本適用]。


分配位圖Allocation Bitmap:
(1)碎片分配映射圖 Fragment Allocation Map (記錄文件系統中每個碎片的分配狀態)
(2)磁盤i節點位圖 Disk i-node Bitmap    (記錄每個i節點的狀態)


分配組(AG:Allocation Group)
三種大小:(1)碎片分配組大小
      (2)磁盤i節點分配組大小
      (3)每個分配組中磁盤i節點數
默認分配組大小:8MB(AIX V4.1固定爲:8MB)
AG的可能值;8MB,16MB,32MB,64MB(AIX4.2及以後適用,最大爲64MB)
查看文件系統碎片大小和分配組的大小:
#dumpfs /dev/mylv
文件系統大小一般限制爲:nbpi*2^24或碎片大小*2^28。
1byte = 8bits
1KB = 1024bytes
1MB = 1024KB
....


+---------------------------------------------------------+
| B     KB MB GB TB PB EB ZB     YB     |
+---------------------------------------------------------+
| Byte Kilo Mega Giga Tera Peta Exa Zetta Yotta |
+---------------------------------------------------------+
| 10^ 3     6     9     12 15 18 21     24     |
+---------------------------------------------------------+


IBM宣佈支持最大的文件大小爲:1024GB,即1TB。
查看文件系統的範圍:
#lsfs -q /home
AIX Ver4.3開始,支持壓縮文件系統。但JFS2文件系統不支持數據壓縮。不能壓縮根(/)文件系統和/usr文件系統。


AIX Ver3.1之後,JFS日誌(Log)已是一個可恢復的文件系統。
AIX使用特殊的邏輯卷(JFS日誌設備)來記錄文件系統對元數據(Meta-Data)的修改情況。
邏輯卷(JFS日誌設備)是一個循環日誌表,系統異常中斷時,用此事務日誌來恢復文件系統。
sync命令:把內存緩衝區內容及時送入磁盤
filemon命令:監視文件系統的性能、報告文件、虛擬內存段、邏輯卷和物理卷的I/O活動。
簡單規則:4GB的文件系統對應2MB的JFS日誌設備。
由於i節點的結構有很大的區別,所以:JFS使用直接地址和間接地址塊來尋址,而JFS2使用B+樹來尋址。


#date >now.txt    (通過date命令產生now.txt文件)
#cat now.txt        (通過cat命令查看now.txt的內容)
#istat now.txt    (用istat命令查看now.txt的i節點內容)
#ls -ial /dev/hd3 (顯示文件所在文件系統的設備)
link命令或symlink函數把一個i節點鏈接給許多文件名。
單次間接尋址可存取1024*4096字節(4MB)大小的文件。
二次間接尋址可存取512*1024*4096(2GB)大小的文件。
read(),write()系統調用函數所允許的最大文件大小是2GB-1(即2^31 - 1)。
JFS2類型文件系統可創建一個內嵌(Inline)式的日誌,每個JFS2類型的文件系統擁有一個它自己的日誌設備而不必使之共享。
在多硬盤多文件系統時,增加了可靠性(Reliability),可用性(Availability)和可維護性(Serviceability),簡稱RAS。
#mount 安裝本地/遠程文件系統


JFS2兩種日誌:
(1)獨立日誌(Outline Log)
(2)內嵌日誌(Inline Log)


AIX 5.2L之前的版本(不含5.2),默認:
Outline Log Max Size : 1GB
Inline Log Max Size : 32MB
AIX 5.2L及之後版本:
Inline Log Size: 256K~16TB (默認Inline Log Size = 文件系統大小 * 0.4%) [但不能超過10%]
Outline Log Size(獨立日誌)大小可變; 32位內核:Outline Max Size: 1GB; 64位:64GB
mklv支持巨型邏輯卷:32位:Max: 1 TB
                   64位:Max: 128 TB
32位機器上JFS2文件系統大小最大可至1TB; 64位:16TB。


SMIT創建JFS 類型的文件系統: #smit jfs
--------JFS2--------------: #smit jfs2


添加新文件系統:crfs命令
#crfs -v VfsType                   VfsType: jfs或jfs2
   {-g VolumnGroup | -d Device} VolumnGroup:卷組 Device:已存在,未使用的邏輯卷組
   [-l LogParititions]          LogParititions:日誌邏輯卷的大小,邏輯分區的數量
   -m MountPoint                MountPoint:安裝點,一般是絕對路徑
   [-n NodeName]                指定文件系統的遠程主機名,僅適用於遠程虛擬文件系統或NFS
   [-u MountGroup]                 批量安裝一組的所有文件系統
   [-A {yes | no }]             啓動系統時是否自動安裝該文件系統
   [-p {ro | rw }]             文件系統的權限(ro:只讀,rw:可讀寫)
   [-a Attribute=Value...]       虛擬文件系統的屬性及對應值多種屬性時,每個前加-a分隔
   [-t {yes | no }]             是否被記帳子系統處理,yes爲打開記帳功能。


從AIX Ver5.2L開始,cfrf,chfs,mkfs在指定文件系統大小時,可用MB,GB爲單位。


在已存在的設備上建立文件系統:mkfs(在指定設備上建立)
實際上,crfs命令首先調用了mklv創建邏輯卷,再用mkfs命令在邏輯捲上建立文件系統,同時創建安裝點,最後在/etc/filesystems文件記錄新創建的文件系統。


mkfs:將指定設備做成文件系統;它只在邏輯捲上建立文件系統,不會建立安裝點,也不會在/etc/filesystems文件做記錄。
#mkfs [-b Boot]          0號塊開始
   [-l label]           指定標籤
   [-i i-Nodes]       指定初始的i節點數
   [-o Options]       類似crfs的-a Attribute=Value,多項時用逗號分隔
   [-p Prototype]    指定原型文件名
   [-s Size]          指定文件系統大小
   [-v VolumnLabel]     指定卷標
   [-V VfsName]       指定類型(必須是/etc/vfs文件中的一條記錄)
   Device             (1)塊設備名(2)裸設備名(3)文件系統名


用SMIT添加JFS類型文件系統:           smit crjfsstd (?)
用SMIT添加JFS2類型文件系統:       smit crjfs2std
用SMIT在已存在的邏輯捲上創建文件系統:smit crjfslvstd
創建RAM disk文件系統(內存中創建JFS):提高讀寫速度,改善程序的執行性能。


#mkramdisk [-u]                   使用此選項時,表示內存頁不會固定在指定區域中
          size [M|G]             RAM Disk的大小,默認爲512字節的塊;M:MB; G:GB。
每個系統最多64個RAM Disk。


一旦創建,就可以象普通設備文件一樣通過open(),read(),write和close()來調用。
刪除RAM Disk: #rmramdisk       (系統重啓後,RAM Disk會被刪除!)
#mkramdisk 40000                 (創建40000*512節字,約20M的RAM Disk)
#ls -l|grep ramdisk             (檢查創建的RAM disk設備文件)
#mkfs -V jfs /dev/ramdisk0        (建立JFS類型的文件系統)
#mkdir /ramdisk                (建立文件系統的安裝點)
#mount -V jfs -o nointegrity /dev/ramdisk0 /ramdisk (安裝新建的RAM Disk文件系統)
#mount                         (檢查新文件系統是否已安裝)
#cd /home/peter/data
#ls -l datafile
#cp datafile /ramdisk          (把datafile文件複製到RAM Disk文件系統中)
#df -k                         (檢查RAM Disk空間的使用情況)
#ls -l /ramdisk


文件系統的所有信息都集中放在/etc/filesystems文件[Stanza(節)格式]中,許多維護文件系統的命令都從此文件中獲取文件系統的默認屬性。
在/etc/vfs文件中描述系統中已安裝虛擬文件系統(Virtual File System, VFS)的類型。mount,fsck,mkfs,umount,fsdb,df,ff命令使用這些信息。(一個ASCII碼文件,一行一條記錄)
%defaultvfs jfs nfs          (定義默認的本地VFS類型和遠程的VFS類型)
列舉系統已定義的各種文件系統: lsfs
列舉系統已安裝的文件系統:    mount
檢查文件系統空間的使用情況: df


                                       單位                         文件名
                                    +----+----+    安裝點、設備名等 -------
                        +- 圖形方式 |KB |MB |GB ----------------- |
                        |           | | |          |          |
                        |           | | |          |          |
#df [[-P]|[-I | -M | -i | -t | -v]] [-k] [-m] [-g] [-s] [FileSystem... | File...]
   | | | |       |                   |
   | | | +-        +- 所有信息 +-------+----------------------+
   | | |                         |     從特殊文件系統助手中得到 |
   | | +- 安裝點顯示在第2列       | 信息,不加-s時,則調用statfs() |
POSIX格式 |                               | 命令得到。                |
         +- 已使用i節點數                +------------------------------+
            i節點使用率               



eg. df -m /usr


顯示文件的大小:#du [-a | -s] [-k] [-m] [-g] [File...]
                  | | -------------- |
                  | | (單位,同上) +- 可以是文件,也可以是目錄
                  | |
                  | +- 只列總塊數
遞歸所有目錄和文件 -+


$pwd 顯示當前目錄
$du 顯示當前目錄下的所有子目錄的大小


安裝文件系統: #mount (SMIT快捷:smit mountfs)
eg. #mount /johnsonfs (如/johnsonfs文件系統的相關信息在/etc/filesystem文件有記錄,直接安裝)


解決衝突:
#mount -o -busy /johnsonfs (保證安裝文件系統前沒有程序或用戶使用安裝點目錄)
#mount /dev/lv01 /mnt    (在邏輯卷設備/dev/lv01上直接安裝在/mnt目錄)
#mount all(或-a)          (安裝所有在/etc/filesystems文件中mount選項爲true的所有文件系統)
#mount -r /johnsonfs        (只讀方式安裝)
自動裝載文件系統:
(1)/etc/filesystems文件中mount屬性值爲automatic。
(2)Shell程序/etc/rc調用mount all (umount all 卸載這個文件系統)
卸載文件系統:umount (smit快捷:smit umountfs)


刪除文件系統:
A. SMIT工具:
原則:
(1)重要文件先備份,後刪除;
(2)先卸載文件系統(umount),後刪除。
SMIT快捷: smit rmjfs


B. 使用rmfs命令
#rmfs [-r|-i] FileSystem
       | |
       | +- 警告、確認框(AIX5.2L以上纔有)
       |
       +- 刪除安裝點


增加文件系統的空間:chfs (實質是修改其屬性)
[SMIT快捷:smit chjfs或chjfs2]
步驟:
(1)df -k(顯示當前大小)
(2)計算增加快數(512字節/塊),計算文件系統的使用率
(3)chfs -a size=新塊數 FileSystemName (AIX 5.2L以上時)

from:http://www.zcpxw.com/viewthread.php?tid=778


發佈了23 篇原創文章 · 獲贊 6 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章