2017年的折騰版NAS可謂一波三折,不過也實現了多年的願望,自己組建了一臺還效能不錯的 NAS。下面整理了本次折騰中踩的坑,以供維護參考。

家用NAS方案 (2017~2020)

硬體配置

安裝系統為 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 的驅動,並提示沒有支援的網絡卡。

家用NAS方案 (2017~2020)

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、迅雷下載。

沙盒:蜜汁操作。