[ О чём есть притча...]Жил-был армянин, Акопян. Каждый вечер он садился под чинарой, закуривал и смoтрел на звезды. Однажды ему скучно стало сидеть одному.
Тогда он купил себе собаку, научил курить, и теперь каждый вечер они вдвоем курили под чинарой и смотрели на звезды.
Как-то с утра к нему пришли соседи и сказали:
- Акопян! У тебя такая умная собака! Да на собачьих бегах в Ереване она завоюет первый приз!
Акопян и повез собаку на бега. Дали старт - собака бежит последней. Первый круг, второй - приходит последней.
Акопян берёт собаку, везёт к себе в деревню, садятся под чинарой, закуривают..
- Ну и что ж ты? Ты же могла завоевать первый приз?
А собака смотрит на него, затягивается и отвечает:
- Акопян, а оно нам надо?..
На первый взгляд zfs датасет - это папка. Выглядит точно также. Но папка с множеством хитростей под капотом, поэтому называют ей файловой системой. Датасетам в индивидуальном порядке можно задавать компрессию, менять точку монтирования, задавать предельный размер и пр. Ман команды zfs, управляющий датасетами - многостраничный.
Но главная магия zfs датасетов связана с созданием и использованием снимков, они же снапшоты. Снимок создаётся мгновенно и занимает только то место, которое занимает разница между снимком и текущим состоянием файловой системы. То есть снимки, в принципе, можно хранить хоть за каждую секунду дня, минуту недели, день года. Удалять их, монтировать, вытаскивать оттуда файлы. Откатывать систему к сохранённому снимку. Пример как это помогает против атаки вируса-шифровальщика на сетевой том.
Далее, снимки (или разницу между ними) можно преобразовывать в поток командой zfs send и принимать из потока командой zfs receive. То есть осуществлять полный (или инкрементальный) бекап датасета на локальный или сетевой zfs пул. Пример.
Поэтому IMHO удобно хранить разные типы данных на разных датасетах. Не претендуя не то, что на истину в последней инстанции, но даже на правильность, всё же приведу для примера ту структуру датасетов, которая выросла именно у меня
1. Медиатека, разбитая по типу содержимого. Кино, музыка, фото, книги, бекап с компов. Есть вариант выделить сериалы и музыкальное видео в отдельный тип. Фотки, возможно музыку и книги бекапить по zfs send-receive на бекап NAS.
Pool/Media 13.4T 2.75T 13.4T /mnt/Pool/Media
Pool/Music 687G 2.75T 687G /mnt/Pool/Music
Pool/Photo 48.0G 2.75T 48.0G /mnt/Pool/Photo
Pool/Backup 657G 2.75T 657G /mnt/Pool/Backup
Pool/Books 3.34G 2.75T 3.34G /mnt/Pool/Books
2. Рюшечки и расширения. По возможности каждое - в своём датасете. Что-то напортачил - откатился.
Pool/Ext 121G 2.75T 55.0M /mnt/Pool/Ext
Pool/Ext/Extensions 1010M 2.75T 549M /mnt/Pool/Ext/Extensions
Pool/Ext/Finch 104G 2.75T 70.2G /mnt/Pool/Ext/Finch
Pool/Ext/Jails 4.59G 2.75T 2.38G /mnt/Pool/Ext/Jails
Pool/Ext/Jails/BaseJail 307K 2.75T 307K /mnt/Pool/Ext/Jails/BaseJail
Pool/Ext/Jails/Template 307K 2.75T 307K /mnt/Pool/Ext/Jails/Template
Pool/Ext/Jails/owncloud 125M 2.75T 125M /mnt/Pool/Ext/Finch/usr/jails/owncloud
Pool/Ext/Jails/tm 324K 2.75T 307K /mnt/Pool/Ext/Jails/tm
Pool/Ext/Jails/torrentmonitor 1.77G 2.75T 1.16G /mnt/Pool/Ext/Jails/torrentmonitor
Pool/Ext/VirtualBox 11.3G 2.75T 10.7G /mnt/Pool/Ext/VirtualBox
3. На отдельном диске - датасеты под закачку торрентов и под лог
WD2T/Files 1.47T 290G 1.47T /mnt/WD2T/Files
WD2T/log 884K 290G 884K /mnt/WD2T/log