首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 教學

Solaris 檔案系統管理深度解析:UFS、ZFS、NFS 與虛擬檔案系統

     編輯:Oracle 教學

Solaris 檔案系統管理深度解析

Solaris 支援多種檔案系統類型,各有適用場景。本文系統整理 UFS、ZFS、NFS、swap 及 /proc 等檔案系統的特性、管理指令與實務操作。

檔案系統類型對照表

類別檔案系統特性適用場景
磁碟型UFS傳統 Unix 檔案系統,成熟穩定傳統應用、根分割區
ZFS128位、儲存池、快照、壓縮、去重、自我修復現代企業儲存、資料庫、虛擬化
網路型NFS網路檔案系統,跨主機共享叢集共享、家目錄集中管理
虛擬型swap磁碟支援的虛擬記憶體記憶體擴充、休眠支援
/proc記憶體駐留,進程資訊介面系統監控、除錯、核心參數調整

UFS 檔案系統結構與管理

磁碟佈局

  • 0 號區塊:開機區塊
  • 1 號區塊:超級區塊,含檔案系統關鍵中繼資料
  • 2~n 號區塊:inode 表、資料區塊

每個檔案對應一個 inode,儲存 UID/GID、權限、時間戳、區塊指標等中繼資料。

核心管理指令

# 分割與格式化
format                    # 進入互動模式分割
newfs /dev/rdsk/c1t0d0s3  # 格式化為 UFS(操作原始裝置)

# 掛載管理
mount /dev/dsk/c1t0d0s3 /software
umount /software

# 永久掛載 /etc/vfstab 格式
# 裝置          掛載點      FS型別  fsck次序  掛載選項  掛載狀態
/dev/dsk/c1t0d0s3 /software ufs     2         yes       -

# 空間擴充(UFS 不支援線上擴充,需離線或更換大磁碟)
growfs -M /software /dev/rdsk/c1t0d0s3  # 僅限同分割區擴充

# 檔案系統維護
fsck -F ufs /dev/rdsk/c1t0d0s3  # 掃描修復
fuser -cu /software             # 查找佔用進程
fuser -ck /software             # 強制釋放佔用進程

ZFS 進階特性與操作

儲存池架構

ZFS 採用分層架構:實體裝置 → vdev (mirror/raidz) → 儲存池 → 資料集/檔案系統。資源池概念類似記憶體管理,具備自動回收機制。

常用操作指令

# 建立儲存池與檔案系統
zpool create datapool mirror c1t0d0 c1t1d0
zfs create datapool/appdata
zfs set compression=lz4 datapool/appdata
zfs set quota=100G datapool/appdata

# 快照與備份
zfs snapshot datapool/appdata@daily_$(date +%Y%m%d)
zfs send datapool/appdata@daily_20240101 > /backup/appdata.zfs
zfs receive backuppool/appdata < /backup/appdata.zfs

# 線上擴充
zpool add datapool mirror c1t2d0 c1t3d0

# 狀態與健康檢查
zpool status -v datapool
zpool scrub datapool  # 資料完整性掃描

# 移除裝置(受限,需冗餘配置)
zpool remove datapool c1t3d0  # 僅支援移除熱備、log、cache 裝置

Swap 交換空間最佳實踐

  • 大小建議:實體記憶體 1.5~2 倍
  • 分散配置:跨多個磁碟建立多個 swap 區,達到負載平衡
  • 管理指令:swap -l 列表、swap -a /dev/dsk/... 新增、swap -d /dev/dsk/... 移除
  • 監控工具:vmstat 觀察 si/so(swap in/out)、sar -w

/proc 進程檔案系統應用

掛載於 /proc,提供進程即時資訊介面:

  • /proc/PID/as:位址空間
  • /proc/PID/status:進程狀態
  • /proc/PID/cmdline:啟動命令列
  • ps、prstat、pgrep 等工具皆由此讀取

硬連結與符號連結差異

特性硬連結符號連結
本質指向相同 inode 的目錄項獨立檔案,含路徑字串
跨檔案系統不可可
連結目錄不可可
刪除源檔影響資料保留,連結計數-1連結失效
建立指令ln file linkln -s file link

磁碟空間分析指令

df -h              # 檔案系統級空間使用
du -h /var/log     # 目錄遞迴空間使用
du -sh /var/log/*  # 顯示各子目錄總計
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved