aufs安裝及替換overlay的可行性分析
阿新 • • 發佈:2018-12-05
概述:
https://blog.csdn.net/qq_37788558/article/details/84346641
在上面但文章裡,使用聯合檔案系統的一種實現:overlayfs 遇到問題,嘗試換用另一種實現:aufs
(具體是什麼問題可以看上面的文章)
aufs介紹
aufs是一種實現了聯合掛載(union mount)的檔案系統,同unionfs類似,它能夠將不同型別的檔案系統透明地層疊在一起,實現一個高效的分層檔案系統。說白了aufs就是能將不同的目錄掛載到某一目錄下,並將各個源目錄下的內容聯合到目標目錄下,這裡每個源目錄對應aufs中的一層,使用者在目標目錄讀寫時,感覺不到此目錄是聯合而來的。aufs中的每一層都可以有不同的許可權(只讀,讀寫),這個特性使得它在很多開源專案中有應用,比如Knoppix,Live CD, Docker等等。
實踐過程
檢測系統是否支援aufs
# grep aufs /proc/filesystems
#
發現不支援
aufs預設沒有合入核心,據說被拒絕多次,此生無望。
升級核心
cd /etc/yum.repo.d # 下載檔案 wget https://yum.spaceduck.org/kernel-ml-aufs/kernel-ml-aufs.repo # 安裝 yum install kernel-ml-aufs #編輯 grub.conf 檔案,修改 Grub 引導順序 vim /etc/grub.conf #重啟 reboot #再次檢視 uname -r 3.10.5-3.el6.x86_64 grep aufs /proc/filesystems nodev aufs #成功
aufs配置
mkdir a b uniondir
mount -t aufs -o br=/mnt/test/a:/mnt/test/b none /mnt/test/uniondir
執行正常。
總結
同時結合對overlay的使用的比較,發現aufs相當於只設置了多個疊加的下層,相當於overlay的lowdir=./a:./b,那麼可能overlay也可以只設置多個疊加下層,不設定upperidr、workdir兩項。
mount -t overlay overlay -olowerdir=/mnt/mybucket:/mnt/source
/mnt/merged
overlay中,upper可寫,lower只讀,都在lower層,則不可寫,所以無法使用(沒嘗試都在upper層)
aufs中,多層會寫最上層