歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Mhddfs:將多個小分區合並成一個大的虛擬存儲

Mhddfs:將多個小分區合並成一個大的虛擬存儲

日期:2017/2/28 13:57:34   编辑:Linux教程

讓我們假定你有30GB的電影,並且你有3個驅動器,每個的大小為20GB。那麼,你會怎麼來存放東西呢?

很明顯,你可以將你的視頻分割成2個或者3個不同的卷,並將它們手工存儲到驅動器上。這當然不是一個好主意,它成了一項費力的工作,它需要你手工干預,而且花費你大量時間。

另外一個解決方案是創建一個 RAID磁盤陣列。然而,RAID在存儲可靠性,磁盤空間可用性差等方面聲名狼藉。另外一個解決方案,就是mhddfs。

Mhddfs——在Linux中合並多個分區

mhddfs是一個用於Linux的設備驅動,它可以將多個掛載點合並到一個虛擬磁盤中。它是一個基於FUSE的驅動,提供了一個用於大數據存儲的簡單解決方案。它可以將所有小文件系統合並,創建一個單一的大虛擬文件系統,該文件系統包含其成員文件系統的所有內容,包括文件和空閒空間。

你為什麼需要Mhddfs?

你的所有存儲設備會創建為一個單一的虛擬池,它可以在啟動時被掛載。這個小工具可以智能地照看並處理哪個存儲滿了,哪個存儲空著,以及將數據寫到哪個存儲中。當你成功創建虛擬驅動器後,你可以使用SAMBA來共享你的虛擬文件系統。你的客戶端將在任何時候都看到一個巨大的驅動器和大量的空閒空間。

Mhddfs特性

  • 獲取文件系統屬性和系統信息。
  • 設置文件系統屬性。
  • 創建、讀取、移除和寫入目錄和文件。
  • 在單一設備上支持文件鎖和硬鏈接。
mhddfs的優點mhddfs的缺點 適合家庭用戶 mhddfs驅動沒有內建在Linux內核中 運行簡單 運行時需要大量處理能力 沒有明顯的數據丟失 沒有冗余解決方案 不需要分割文件 不支持移動硬鏈接 可以添加新文件到組成的虛擬文件系統 可以管理文件保存的位置 支持擴展文件屬性

Linux中安裝Mhddfs

在Debian及其類似的移植系統中,你可以使用下面的命令來安裝mhddfs包。

  1. #apt-get update &&apt-get install mhddfs

安裝Mhddfs到基於Debian的系統中

在RHEL/CentOS Linux系統中,你需要開啟epel倉庫,然後執行下面的命令來安裝mhddfs包。

  1. #yum install mhddfs

在Fedora 22及以上系統中,你可以通過dnf包管理來獲得它,就像下面這樣。

  1. # dnf install mhddfs

安裝Mhddfs到Fedora

如果萬一mhddfs包不能從epel倉庫獲取到,那麼你需要解決下面的依賴,然後像下面這樣來編譯源碼並安裝。

  • FUSE頭文件
  • GCC
  • libc6頭文件
  • uthash頭文件
  • libattr1頭文件(可選)

接下來,只需從下面建議的地址下載最新的源碼包,然後編譯。

  1. #wget http://mhddfs.uvw.ru/downloads/mhddfs_0.1.39.tar.gz
  2. #tar-zxvf mhddfs*.tar.gz
  3. #cd mhddfs-0.1.39/
  4. #make

你應該可以在當前目錄中看到mhddfs的二進制文件,以root身份將它移動到/usr/bin/和/usr/local/bin/中。

  1. #cp mhddfs /usr/bin/
  2. #cp mhddfs /usr/local/bin/

一切搞定,mhddfs已經可以用了。

我怎麼使用Mhddfs?

1、 讓我們看看當前所有掛載到我們系統中的硬盤。

  1. $ df-h

Check Mounted Devices

樣例輸出

  1. FilesystemSizeUsedAvailUse%Mounted on
  2. /dev/sda1 511M132K511M1%/boot/efi
  3. /dev/sda2 451G92G336G22%/
  4. /dev/sdb1 1.9T161G1.7T9%/media/avi/BD9B-5FCE
  5. /dev/sdc1 555M555M0100%/media/avi/Debian8.1.0 M-A 1

注意這裡的‘掛載點’名稱,我們後面會使用到它們。

2、 創建目錄‘/mnt/virtual_hdd’,所有這些文件系統將會在這裡組織到一起。

  1. #mkdir/mnt/virtual_hdd

3、 然後,掛載所有文件系統。你可以通過root或者FUSE組中的某個用戶來完成。

  1. # mhddfs /boot/efi,/, /media/avi/BD9B-5FCE/,/media/avi/Debian\ 8.1.0\ M-A\ 1/ /mnt/virtual_hdd -o allow_other

在Linux中掛載所有文件系統

注意:這裡我們使用了所有硬盤的掛載點名稱,很明顯,你的掛載點名稱會有所不同。也請注意“-o allow_other”選項可以讓這個虛擬文件系統讓其它所有人可見,而不僅僅是創建它的人。

4、 現在,運行“df -h”來看看所有文件系統。它應該包含了你剛才創建的那個。

  1. $ df-h

驗證虛擬文件系統掛載

你可以像對已掛在的驅動器那樣給虛��文件系統應用所有的選項。

5、 要在每次系統啟動創建這個虛擬文件系統,你應該以root身份添加下面的這行代碼(在你那裡會有點不同,取決於你的掛載點)到/etc/fstab文件的末尾。

  1. mhddfs# /boot/efi,/, /media/avi/BD9B-5FCE/,/media/avi/Debian\ 8.1.0\ M-A\ 1/ /mnt/virtual_hdd fuse defaults,allow_other 00

6、 如果在任何時候你想要添加/移除一個新的驅動器到/從虛擬硬盤,你可以掛載一個新的驅動器,拷貝/mnt/vritualhdd的內容,卸載卷,彈出你要移除的的驅動器並/或掛載你要包含的新驅動器。使用mhddfs命令掛載全部文件系統到Virtualhdd下,這樣就全部搞定了。

我怎麼卸載Virtual_hdd?

卸載virtual_hdd相當簡單,就像下面這樣

  1. #umount/mnt/virtual_hdd

卸載虛擬文件系統

注意,是umount,而不是unmount,很多用戶都輸錯了。

到現在為止全部結束了。我正在寫另外一篇文章,你們一定喜歡讀的。到那時,請保持連線。請在下面的評論中給我們提供有用的反饋吧。請為我們點贊並分享,幫助我們擴散。


via: http://www.tecmint.com/combine-partitions-into-one-in-linux-using-mhddfs/

作者:Avishek Kumar 譯者:GOLinux 校對:wxy

本文由 LCTT 原創翻譯,Linux中國 榮譽推出

Copyright © Linux教程網 All Rights Reserved