新聞中心
如果您有多個(gè)磁盤或分區(qū)要用于一個(gè)媒體項(xiàng)目,而又不想丟失任何現(xiàn)有數(shù)據(jù),但又想將所有文件都放置或安裝在一個(gè)驅(qū)動(dòng)器下,該怎么辦?這時(shí)mergefs可以助您一臂之力!mergefs是一個(gè)聯(lián)合文件系統(tǒng),旨在簡(jiǎn)化眾多存儲(chǔ)設(shè)備中文件的存儲(chǔ)和管理。

我們提供的服務(wù)有:成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、寧德ssl等。為上千多家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的寧德網(wǎng)站制作公司
安裝和配置 mergefs
使用 sudo 安裝已下載的 mergefs 軟件包:
$ sudo dnf install mergerfs-2.29.0-1.fc31.x86_64.rpm
現(xiàn)在,你可以將多個(gè)磁盤掛載為一個(gè)驅(qū)動(dòng)器。如果你有一臺(tái)媒體服務(wù)器,并且希望所有媒體文件都顯示在一個(gè)地方,這將很方便。如果將新文件上傳到系統(tǒng),那么可以將它們復(fù)制到 mergefs 目錄,mergefs 會(huì)自動(dòng)將它們復(fù)制具有足夠可用空間的磁盤上。
這是使你更容易理解的例子:
$ df -hT | grep disk
/dev/sdb1 ext4 23M 386K 21M 2% /disk1
/dev/sdc1 ext4 44M 1.1M 40M 3% /disk2
$ ls -l /disk1/Videos/
total 1
-rw-r--r--. 1 curt curt 0 Mar 8 17:17 Our Wedding.mkv
$ ls -l /disk2/Videos/
total 2
-rw-r--r--. 1 curt curt 0 Mar 8 17:17 Baby's first Xmas.mkv -rw-rw-r--. 1 curt curt 0 Mar 8 17:21 Halloween hijinks.mkv
在此例中掛載了兩塊磁盤,分別為 disk1 和 disk2。兩個(gè)驅(qū)動(dòng)器都有一個(gè)包含文件的 Videos 目錄。
現(xiàn)在,我們將使用 mergefs 掛載這些驅(qū)動(dòng)器,使它們看起來(lái)像一個(gè)更大的驅(qū)動(dòng)器。
$ sudo mergerfs -o defaults,allow_other,use_ino,category.create=mfs,moveonenospc=true,minfreespace=1M /disk1:/disk2 /media
mergefs 手冊(cè)頁(yè)非常龐雜,因此我們將說(shuō)明上面提到的選項(xiàng)。
-
defaults:除非指定,否則將使用默認(rèn)設(shè)置。
-
allow_other:允許 sudo 或 root 以外的用戶查看文件系統(tǒng)。
-
use_ino:讓 mergefs 提供文件/目錄 inode 而不是 libfuse。雖然不是默認(rèn)值,但建議你啟用它,以便鏈接的文件共享相同的 inode 值。
-
category.create=mfs:根據(jù)可用空間在驅(qū)動(dòng)器間傳播文件。
-
moveonenospc=true:如果啟用,那么如果寫入失敗,將進(jìn)行掃描以查找具有最大可用空間的驅(qū)動(dòng)器。
-
minfreespace=1M:最小使用空間值。
-
disk1:第一塊硬盤。
-
disk2:第二塊硬盤。
-
/media:掛載驅(qū)動(dòng)器的目錄。
看起來(lái)是這樣的:
$ df -hT | grep disk
/dev/sdb1 ext4 23M 386K 21M 2% /disk1
/dev/sdc1 ext4 44M 1.1M 40M 3% /disk2
$ df -hT | grep media
1:2 fuse.mergerfs 66M 1.4M 60M 3% /media
你可以看到現(xiàn)在 mergefs 掛載顯示的總?cè)萘繛?66M,這是兩塊硬盤的總?cè)萘俊?/p>
繼續(xù)示例:
有一個(gè)叫 Baby’s second Xmas.mkv 的 30M 視頻。讓我們將其復(fù)制到用 mergerfs 掛載的 /media 文件夾中。
$ ls -lh "Baby's second Xmas.mkv"
-rw-rw-r--. 1 curt curt 30M Apr 20 08:45 Baby's second Xmas.mkv $ cp "Baby's second Xmas.mkv" /media/Videos/
這是最終結(jié)果:
$ df -hT | grep disk
/dev/sdb1 ext4 23M 386K 21M 2% /disk1
/dev/sdc1 ext4 44M 31M 9.8M 76% /disk2
$ df -hT | grep media
1:2 fuse.mergerfs 66M 31M 30M 51% /media
從磁盤空間利用率中可以看到,因?yàn)?disk1 沒(méi)有足夠的可用空間,所以 mergefs 自動(dòng)將文件復(fù)制到 disk2。
這是所有文件詳情:
$ ls -l /disk1/Videos/
total 1
-rw-r--r--. 1 curt curt 0 Mar 8 17:17 Our Wedding.mkv
$ ls -l /disk2/Videos/
total 30003
-rw-r--r--. 1 curt curt 0 Mar 8 17:17 Baby's first Xmas.mkv -rw-rw-r--. 1 curt curt 30720000 Apr 20 08:47 Baby's second Xmas.mkv
-rw-rw-r--. 1 curt curt 0 Mar 8 17:21 Halloween hijinks.mkv
$ ls -l /media/Videos/
total 30004
-rw-r--r--. 1 curt curt 0 Mar 8 17:17 Baby's first Xmas.mkv -rw-rw-r--. 1 curt curt 30720000 Apr 20 08:47 Baby's second Xmas.mkv
-rw-rw-r--. 1 curt curt 0 Mar 8 17:21 Halloween hijinks.mkv
-rw-r--r--. 1 curt curt 0 Mar 8 17:17 Our Wedding.mkv
當(dāng)你將文件復(fù)制到 mergefs 掛載點(diǎn)時(shí),它將始終將文件復(fù)制到有足夠可用空間的硬盤上。如果池中的所有驅(qū)動(dòng)器都沒(méi)有足夠的可用空間,那么你將無(wú)法復(fù)制它們。
文章名稱:通過(guò)mergefs增加虛擬存儲(chǔ)
新聞來(lái)源:http://m.5511xx.com/article/djghjoc.html


咨詢
建站咨詢
