mergefs 用來幹啥,看下圖:
mergerfs 是乙個聯合檔案系統,旨在簡化儲存和管理眾多商業儲存裝置上的檔案。
安裝和配置 mergefs
$ sudo dnf install mergerfs-2.29.0-1.fc31.x86_64.rpm
這是使你更容易理解的例子:
$ 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。兩個驅動器都有乙個包含檔案的 videos 目錄。
現在,我們將使用 mergefs 掛載這些驅動器,使它們看起來像乙個更大的驅動器。
$ sudo mergerfs -o defaults,allow_other,use_ino,category.create=mfs,moveonenospc=true,minfreespace=1m /disk1:/disk2 /media
mergefs 手冊頁非常龐雜,因此我們將說明上面提到的選項。
defaults:除非指定,否則將使用預設設定。看起來是這樣的:allow_other:允許 sudo 或 root 以外的使用者檢視檔案系統。
use_ino:讓 mergefs 提供檔案/目錄 inode 而不是 libfuse。雖然不是預設值,但建議你啟用它,以便鏈結的檔案共享相同的 inode 值。
category.create=mfs:根據可用空間在驅動器間傳播檔案。
moveonenospc=true:如果啟用,那麼如果寫入失敗,將進行掃瞄以查詢具有最大可用空間的驅動器。
minfreespace=1m:最小使用空間值。
disk1:第一塊硬碟。
disk2:第二塊硬碟。
/media:掛載驅動器的目錄。
$ 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
你可以看到現在 mergefs 掛載顯示的總容量為 66m,這是兩塊硬碟的總容量。
繼續示例:
$ 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/
這是最終結果:
$ 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
從磁碟空間利用率中可以看到,因為 disk1 沒有足夠的可用空間,所以 mergefs 自動將檔案複製到 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
當你將檔案複製到 mergefs 掛載點時,它將始終將檔案複製到有足夠可用空間的硬碟上。如果池中的所有驅動器都沒有足夠的可用空間,那麼你將無法複製它們。 linux 使用檔案增加虛擬記憶體 swap
之前買了個雲伺服器玩,不過是最低配置的1核1g,後來發現這個記憶體太小了,隨便裝幾個軟體就不行了,記憶體消耗較大的像 redis 執行起來很多問題。這些時間了解了下 docker 容器,去嘗試了下發現 mysql 就掛了,而且怎麼樣也啟動不了了,後來發現是記憶體實在是不夠了 後來網上了解,如果伺服器...
Ketama演算法增加虛擬節點對分布式儲存帶來的問題
測試 public class usertest if file.exists filewriter writer new filewriter file.getabsolutepath true writer.write key system.getproperty line.separator ...
apache增加虛擬目錄
用記事本開啟 d xampp apache conf httpd.conf 在最後面加上 alias phpwebsite e phpwebsite allowoverride none options indexes order allow,deny allow from all 即增加了物理目錄...