Просто: Ви шукаєте mhddfs .
Він видає себе великою файловою системою, записує на диски в тому порядку, де вони згадуються, і врешті-решт переміщує великі файли на інший пристрій, якщо перший був занадто повним. Насправді він також може використовувати підпапки на дисках, що забезпечує однаковий функціонал.
Окремі диски потрібно встановити спочатку і залишатися доступними. Він взагалі не змінює файлову систему і не байдуже, яка файлова система знаходиться на місці (доки файлова система вільно повідомляє про вільний простір). Якщо диск загублений, вам доведеться ще раз (з льоту) підготувати mhddfs, і дані на ньому не будуть.
Використання:
mhddfs /dir1,/dir2[,/path/to/dir3] /path/to/mount [-o options]
або в /etc/fstab
mhddfs#/path/to/dir1,/path/to/dir2 /mnt/point fuse defaults 0 0
Складні та потужні: Ви хочете, щоб об'єдналися .
Хоча mhddfs є приємним і надзвичайно простим, у мене виникли проблеми з дозволом на файли при наданні іншим доступу через SSH. Я не зміг знайти жодного рішення, але знайшов unionfs.
Unionfs також дозволяє монтувати кілька папок у різних файлових системах в одну, але це магія в дозволах. Ви можете об'єднати кілька папок лише для читання та одну, яку можна записати, разом, так що вона відображається як одна. Люди, з якими ви поділилися з’єднаною вашою папкою, можуть записувати в папку лише для читання - як це їм здається - але файли залишаються в одній записаній. Завантажувальні компакт-диски Linux працюють так, диск, що записується, - це рамковий диск. Люди можуть навіть видаляти файли в папках, які лише читають, що насправді не видаляє файл, але створює прихований файл білого списку у своєму каталозі запису. Якщо ви скористаєтеся всіма параметрами, ви можете в основному використовувати вашу файлову систему як бідний SVN .
Якщо ви занадто багато використовуєте параметри, подібні до SVN, ви можете пропустити дані, які існують двічі (неможливо у вашому сценарії, але можливо), в той час як ваша папка, що записується, заповнюється крихітними прихованими білими файлами. Крім цього, він зберігає ваші диски чистими та індивідуальними. Що станеться, якщо файл занадто великий для диска, я ще не знаю.
Використання:
unionfs-fuse -o cow,max_files=32768 \
-o allow_other,use_ino,suid,dev,nonempty \
/path/to/dir1=rw:/path/to/dir2=ro:/dir3
/u/union/etc
де =rw
папка читає та записується для редагування та =ro
робить її лише для читання, навіть якщо в дозволах буде вказано інше. В etc/fstab
цьому є
unionfs-fuse#/path/to/dir1=rw:/path/to/dir2=ro:dir3 /path/to/mount fuse cow,allow_other 0 0