2017年的折騰版NAS可謂一波三折,不過也實現了多年的願望,自己組建了一臺還效能不錯的 NAS。下面整理了本次折騰中踩的坑,以供維護參考。
硬體配置
安裝系統為 Windows Server 2016,用自帶的 Hyper-V 虛擬化一臺 CentOS 7 直接掛載 RAID5 物理磁碟裝置,檔案系統採用 XFS。
Intel I219-V 驅動
根據 Intel 的產品簡介,I219-V 和 I219-LM 的差異只有三項:vPro 支援、SIPP 支援和伺服器作業系統支援。可以理解為只有驅動上有區別,實際硬體功能相等。而在 Windows Server 2016 中,透過 Intel 提供的驅動程式並不能安裝 I219-V 的驅動,並提示沒有支援的網絡卡。
Seagate Enterprise Capacity 7200。5
我這次選購的硬碟型號為希捷企業級 7200 轉 SATA 盤的第五代產品,容量 4T,扇區格式 512n,出廠時韌體版本 TN02。上機之後工作時發出有規律異響,振動較大。經過一番搜尋,在Chiphell 上的一帖子找到了合理的提示,更新至希捷官方 2017 年 2 月釋出的新韌體 TNC2,工作時振動狀態恢復至正常水平。
韌體下載
ST4000NM0035 1V4107 TNC2
提取碼:
bwj3
透過 StorCLI 更新硬碟韌體
我的 4 塊硬碟都接在 RAID 控制卡上,Seagate 提供的韌體升級工具無法識別硬碟,可使用StorCLI 更新韌體。
# 確認控制器序號
storcli show
# 確認磁碟櫃編號和磁碟槽編號。其中 x 為編號(例如:控制器 0 則為 /c0)
storcli /cx/eall/sall show
# 更新指定磁碟的韌體。執行完成需額外等待一段時間再執行下一磁碟的更新,否則下一磁碟韌體
# 更新會失敗,在 RAID 控制器日誌中報 Microcode update failed 警報。
storcli /cx/ex/sx download alt="家用NAS方案 (2017~2020)" data-isLoading="0" src="/static/img/blank.gif" data-src=/path/to/fireware。lod
StorCLI 下載
v1。21。16
提取碼:
xgzd
檔案系統
因為存在一些合集檔路徑長度超出 Windows 中
MAX_PATH
的 255 個字元限制,因此實際儲存的檔案系統選擇了 CentOS 7 預設配備的 XFS。
在執行
mkfs。xfs
時,需匹配陣列實際引數以最佳化效能。
XFS 在 RAID 上的最佳化
(參照 XFS FAQ)
XFS 支援在掛載引數上針對給定的 RAID 條帶單元(條帶大小)和條頻寬度(資料磁碟的數目)調優。
有些情況下,這些引數可以自動檢測,不過對大多數硬體 RAID 仍然需要手動計算這些引數。
計算這幾個引數值很簡單。
su = sw = <資料磁碟的數目(不包含奇偶校驗盤)> 那麼,如果你的 RAID 控制器條帶大小是 64KB,並且已經配置好 8 塊磁碟的 RAID-6。 su = 64k sw = 6 RAID 條帶 256KB 的 16 塊磁碟的 RAID-10。 su = 256k sw = 8 此外,你也可以用 sunit 和 swidth 代替 su 和 sw ,此時單位是 512B 扇區的個數。 注意, xfs_info 和 mkfs。xfs 會把 sunit 和 switch 按 512B 扇區的個數解釋,但在報告時卻以 bsize 為單位。 假設這樣的例子:執行 mkfs。xfs 指定 swidth 為 1024, bsize 為 4096, mkfs。xfs 執行結果顯示 swidth 為 128。128 x 4096 = 1024 x 512。 在硬體 RAID 上的 LVM 中建立 XFS 時,使用與在硬體 RAID 上直接建立 XFS 時一樣的 sunit 和 swidth 引數。 現狀(2020) 現已升級到 i5-7500T、512G NVMe SSD、32G 記憶體。常駐 3 臺虛擬機器: 儲存:CentOS 7,提供內網 SMB、NextCloud 服務。 下載機:Windows 7,百度雲、115、迅雷下載。 沙盒:蜜汁操作。