QNAP 威聯通磁盤分區探索與數據導出

之前曬了一單Qnap的TS-231,並且講了我的一些基本偏好設置。這篇文檔打算介紹一下Qnap的磁盤分區情況以及在NAS突然掛掉的情況,如何使用移動硬盤盒來緊急導出內容。

QNAP 威聯通磁盤分區探索與數據導出QNAP 威聯通 TS-231 NAS存儲 開箱及評測近些年家用NAS市場越來越火爆,選擇也越來越多。相比於移動硬盤來說,NAS對於家庭中大容量的存儲也更加實用,尤其是現在家裏智能設備越來越多,智能電視的功能也越來越強,有一個NAS來爲家庭提供影音存儲從而作爲家庭一體化智能解決方案的後端也是個必備的選擇。1.TS-231入手緣由之前在美國的時候在WD官網用學生優惠買了個WDMyCloud4TB小白,就是下圖這個:當時各種薅羊毛最後只花了不到2...whyiamhere|144評論130收藏584查看詳情

 

(如果想看如何緊急恢復數據請直接跳轉到第二章)

一、Qnap磁盤分區的探索

Qnap的磁盤分區採用的是md RAID+LVM2的兩層組織結構,即使我使用的是Single模式分區也是一樣的結構。我覺得這樣是因爲比較容易統一管理。我們打開TS-231的ssh登錄上去就可以探索一下磁盤的分區情況。首先看一下磁盤分區信息(兩塊盤分別被識別爲/dev/sda和/dev/sdb,兩塊盤的分區完全相同,這裏只列出sda)

QNAP 威聯通磁盤分區探索與數據導出

可以看到磁盤被分成了五個區,分別對應/dev/sda1、/dev/sda2、/dev/sda3、/dev/sda4、/dev/sda5,接下來看一下mount信息和RAID信息:

QNAP 威聯通磁盤分區探索與數據導出

QNAP 威聯通磁盤分區探索與數據導出

可以看到sda1和sdb1被做成了RAID1,掛載在/mnt/HDA_ROOT上;sda4和sdb4也被做成了RAID1,被掛載到了/mnt/ext上。這兩個QTS系統運行時所有必備應用所在位置。通過上面的parted命令還可以看到這兩個分區在RAID之上也是直接格式化成了ext3格式,如果搞壞了系統文件可以直接在RAID上掛載sda1和sda4就行了。

但是我們發現最關鍵的分區,/dev/sda3,並不是這麼簡單組織的,而這個分區中才真正存儲的NAS中的數據,我們希望恢復的也是這個分區。通過上面mdstat中可以看到,sda3被做成了單盤的RAID1(其實就是沒有做RAID),設備文件是md1。接下來看一下LVM2中的物理卷情況:

QNAP 威聯通磁盤分區探索與數據導出

可以看到/dev/md1被做成了物理卷vg1,對應sdb3的md2被做成了物理卷vg2。OK接下來看一下邏輯卷的情況:

QNAP 威聯通磁盤分區探索與數據導出

這裏每個物理卷分別對應了兩個邏輯卷,其中20G的那個邏輯卷是預留出來的,沒有用。3.6TB的那個纔是我們真正需要的,也就是圖中ACTIVE的兩個vg1/lv1和vg2/lv2。這兩個邏輯卷就是被格式化成ext4格式,可以直接掛載到某個文件夾上。

細心的值友可能發現,上面mount'信息中mount到/share/CACHEDEV1_DATA上的並不是/dev/vg1/lv1,而是/dev/mapper/cachedev1。這是因爲在邏輯卷之上Qnap爲了提高性能又加了一層flashcache,可以通過dmsetup命令看到flashcache的狀況。

QNAP 威聯通磁盤分區探索與數據導出

可以看到cachedev1就是/dev/mapper/vg1-lv1的flashcache,而/dev/vg1/lv1是/dev/mapper/vg1-lv1的符號鏈接。

所以總結來說,我們如果通過Linux自己掛載磁盤分區的化,需要先掛載好RAID,然後再掛載LVM邏輯卷。不過幸好目前很多Linux的發行版(比如我用的是Ubuntu 14.04)可以支持自動掛載,大家只要準備好環境即可。

 

二、把硬盤裝進硬盤盒

首先得有一個能夠把硬盤連到USB的設備。我這裏選擇的是SSK的一個USB 3.0的硬盤盒,就是下面這個:

QNAP 威聯通磁盤分區探索與數據導出

QNAP 威聯通磁盤分區探索與數據導出

只需要把硬盤的sata結構對準硬盤盒托架上的sata接口插好,然後在北面用硬盤盒自帶的螺絲(一共4個)固定好即可。注意3.5寸的硬盤需要硬盤盒帶供電接口,單純依靠USB口的供電一般是帶不起來3.5寸的硬盤的。

安裝好之後連上數據線插到PC的USB接口上就行了。

 

三、在Linux環境下掛載數據分區

上文提到Ubuntu可以支持自動掛載分區,唯一需要做的是準備好RAID和LVM2相關的軟件包。打開Terminal執行以下命令:

sudo apt-get install lvm2 mdadm

在Ubuntu下如果想自動掛載分區需要執行玩上述命令安裝好RAID和LVM2支持之後再插上USB。一般情況下系統可以自動識別該硬盤的情況並將數據分區自動掛載好,如圖所示:

QNAP 威聯通磁盤分區探索與數據導出

掛載好之後會在桌面上有一個DataVol2,裏面就是我們需要的數據了。

如果在一個沒有自動掛載的Linux下,或者是自動掛載出了一些問題,那麼還可以使用手動掛載的方式。採用手動掛載的方式之前,首先要能夠獲得root權限(如何獲得root權限請百度):

首先看一下設備情況,執行指令:

mdadm --examine --scan /dev/sdc3

QNAP 威聯通磁盤分區探索與數據導出

我的電腦識別的是/dev/sdc,大家需要確定到底是sda3、sdb3還是sdc3,也有可能是sdd3,總之就是都試一下,直到某個盤能夠識別出RAID來打印出上述信息爲止,那塊盤就是我們需要的數據盤。

之後執行指令:

mdadm -A --verbose --run /dev/md100 /dev/sdc3

執行之後,就可以執行 cat /proc/mdstat看到我們準備好的RAID了。

執行:lvdisplay 命令,可以看到目前已經準備好的邏輯卷。由於我拆下來的是第二塊盤,所以識別的物理卷是vg2,邏輯卷是lv2,如圖:

QNAP 威聯通磁盤分區探索與數據導出

然後執行指令:

mkdir /mnt/nas_tmp

mount /dev/vg2/lv2 /mnt/nas_tmp

之後,就可以在/mnt/nas_tmp文件夾中看到所有的數據了。我使用rsync拷貝了下數據,在我破電腦USB 2.0接口上最快只有30MB/s的速度,使用USB 3.0的化會更快一些。

QNAP 威聯通磁盤分區探索與數據導出

上面就是用Linux掛載Qnap NAS磁盤的全過程。此外需要注意上述過程只適用於Single或者RAID1的方式,不適合其它RAID。

 

四、在Windows環境下掛載數據分區

在Windows下也可以掛載數據分區並且讀出文件,唯一的差別是在Windows下並不方便向磁盤寫文件,並且需要第三方的軟件支持。

首先,需要下載DiskInternals Linux Reader,官方下載頁面:鏈接

其次,需要將硬盤盒的USB接口插到Windows電腦上。這是Windows會識別出五塊硬盤,但是分區格式都不能識別出來,所以會出現格式化的提示,此時一定要點取消!!!

QNAP 威聯通磁盤分區探索與數據導出

之後打開Linux Reader軟件,該軟件會識別出各種格式的分區,如下圖所示:

QNAP 威聯通磁盤分區探索與數據導出

可以看到第一排第二個大小爲3696GB,名爲DataVol2的就是我們需要的數據分區。點擊左邊欄第二個DataVol2,即可進入到其中:

QNAP 威聯通磁盤分區探索與數據導出

QNAP 威聯通磁盤分區探索與數據導出

之後選擇你需要讀出來的數據,先點擊左鍵選擇,再點擊右鍵選擇保存即可。

QNAP 威聯通磁盤分區探索與數據導出

然後遵循引導的流程將數據保存在本機的位置就可以了。

以上介紹瞭如何用硬盤盒在Linux和Windows上導出Qnap NAS磁盤中的數據。目前我還沒有找到在Mac上導出磁盤數據的方式,所以Mac用戶可以運行一個虛擬機虛擬Linux或者Windows環境來做這件事情。上述Windows環境下的測試就是在Mac上PD10虛擬出來的Win 7下面進行測試的。

最後還是希望大家永遠都不需要我上面介紹的這些恢復手段QNAP 威聯通磁盤分區探索與數據導出 

 

謝謝觀看。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章