Что такое zfs при установке linux



Как использовать файловую систему ZFS в Linux

В результате многие в предприятии клянутся им в верности и используют его для размещения триллионов байтов данных.

Несмотря на свою популярность, пользователи Linux не смогут наслаждаться этим из коробки.

Вместо этого те, кто хочет проверить это и использовать его в качестве основной файловой системы хранилища, должны будут установить его.

Установка ZFS немного отличается от других файловых систем, и в зависимости от того, что вы используете, может потребоваться небольшое ноу-хау.

Если вы новичок в этой файловой системе, лучше всего идти по маршруту Ubuntu.

Начиная с Ubuntu 16.04, Canonical упрощает работу с ZFS.

Еще лучше, Ubuntu – безусловно самая безопасная реализация ZFS в Linux, с простой настройкой и процессом сборки, который, как известно, очень надежный (в то время как другие дистрибутивы Linux имеют высокий риск нарушения ZFS).

Примечание. Хотя можно использовать ZFS для одного жесткого диска, это не очень хорошая идея, и вы, вероятно, пропустите все функции, которые делают эту файловую систему отличной.

Точкой файловой системы является создание избыточности, путем растяжения данных на нескольких жестких дисках.

Прежде чем продолжить, убедитесь, что у вас более 1 жесткого диска для ZFS.

Настройка ZFS

Файловая система ZFS работает, объединяя множество разных жестких дисков вместе, чтобы создать один большой центр хранения.

Это звучит слишком сложно, и это так. Тем не менее, результат – превосходное хранилище с большим пространством.

Создание новой файловой системы ZFS немного сложнее, чем просто открытие редактора разделов Gparted.

Вместо этого вам нужно будет взаимодействовать с ним на уровне командной строки. В

окне терминала запустите команду lsblk. Запуск команды «list block» выведет все накопители на вашем ПК Linux.

Пройдите и решите, какие жесткие диски использовать для вашего Z-пула, и помните имена. В этом учебнике наши три диска в пуле ZFS: /dev/sdb, /dev/sdc и /dev/sdd.

Затем вам нужно полностью обнулить жесткие диски, выбранные для Z-пула, чтобы у них больше не было данных. Используя команду dd, перезапишите каждый из дисков. Это займет некоторое время.

Примечание: измените /dev/sdX с идентификатором диска, найденным с помощью команды lsblk (sdb и т. д.).

Когда dd закончит работу, запустите команду fdisk.

Запуск fdisk покажет много информации о жестких дисках, включая информацию о файловой системе для каждого.

Просмотрите показания и убедитесь, что ни один из дисков, которые вы удалили, не имеет файловой системы.

Этот шаг имеет решающее значение, поскольку ZFS не использует традиционный формат разбиения.

Если вывод fdisk выглядит хорошо, безопасно создайте новый Z-poll ZFS.

Для базовой настройки Z-пула выполните следующие действия:

Базовая установка позволит большинству пользователей удовлетворить свои потребности в хранилищах.

Однако те, которые ценят свои данные и нуждаются в защите, не должны идти по пути установки с такой базовой настройкой.

Вместо этого подумайте о создании пула ZFS с RaidZ.

Использование RaidZ в сочетании с вашим ZFS-пулом гарантирует, что ваши данные будут избыточными, с множеством резервных копий.

Чтобы создать пул ZFS с RaidZ, запустите:

Чтобы добавить файлы в новый пул хранения ZFS, откройте диспетчер файлов и перейдите в корень файловой системы.

Поместите файлы внутри папки с именем ZFS Zpool.

Добавить диски в ZFS Zpool

ZFS предназначен для хранения большого количества данных, но это не значит, что ваши оригинальные диски не будут заполняться.

Наступит время, когда потребуется больше места для хранения.

К счастью, поскольку ZFS не использует разделы, добавление большего количества хранилища в систему прост.

В этом примере мы добавим еще два диска в Zpool (/dev/sde и /dev/sdf).

Примечание: если ваша установка ZFS не использует RaidZ, удалите ее из команды.

Удалить пул ZFS

Зачастую объемы ZFS ломаются и становятся непригодными.

Когда это произойдет, вам может потребоваться удалить пул хранения.

Чтобы удалить пул хранения, откройте терминал и используйте команду zfs destroy.

Запуск zpool destroy занимает довольно много времени, в зависимости от того, сколько данных находится в вашем пуле хранения.

Вы узнаете, что Zpool полностью уничтожен, когда терминал снова будет доступен для использования.

Проверить статус ZFS

Быстрый способ проверить статус вашего Zpool с помощью команды zpool status.

С его помощью пользователи могут видеть базовое считывание тома ZFS, как он это делает и имеются ли какие-либо ошибки.

Источник

Лучшая файловая система — ZFS

Сегодня мы рассмотрим усовершенствованную файловую систему ZFS. Мы обсудим, откуда она взялась, что она из себя представляет и почему она стала так популярна.

В США, её название произносят как «ZedFS» вместо «ZeeFS» (по их мнению так оно звучит круче). Вы можете произносить его, как вам нравится.

Примечание. Вы увидите, что само слово «ZeeFS» очень много раз повторяется в статье. Когда я говорю о функциях и о установке, я говорю об OpenZFS. ZFS (разработанна Oracle) и OpenZFS начала развиваться энтузиастами с того момента как Oracle закрыло проект OpenSolaris (позже я расскажу об этом подробнее).

История ZFS

Файловая система Z (ZFS) была создана Мэтью Аренсом и Джеффом Бонвиком в 2001 году. ZFS была разработана как файловая система нового поколения для OpenSolaris от Sun Microsystems. В 2008 году ZFS был портирована во FreeBSD. В том же году был запущен проект для переноса ZFS на Linux. Однако, поскольку ZeeFS получает лицензию в рамках общих правил получения лицензии на разработку и распространение, которая несовместима с GNU General Public License, она не может быть включена в ядро ​​Linux. Чтобы обойти эту проблему, большинство дистрибутивов Linux предлагают различные методы установки ZFS.

Читайте также:  Установка деревянного забора воронеж

Вскоре после того, как Oracle приобрела Sun Microsystems, OpenSolaris стала проприетарной. Все дальнейшее развитие ZFS стало также проприетарным. Многие разработчики ZFS были недовольны этим поворотом событий. Из-за этого решения две трети основных разработчиков ZFS, включая Аренса и Бонвика, покинули Oracle. Они присоединились к другим компаниям и создали проект OpenZFS в сентябре 2013 года. Проект позиционировался как разработка ZeeFS с открытым исходным кодом.

Вернемся к проблеме с лицензией, упомянутой выше. Поскольку проект OpenZFS уже разрабатывался отдельно от Oracle, некоторые, вероятно, задаются вопросом, почему они не поменяют лицензию на что-то совместимое с GPL, чтобы OpenZFS могла быть включена в ядро ​​Linux. Согласно информации с сайта OpenZFS, изменение лицензии предполагает обращение к КАЖДОМУ, кто создавал код для текущей реализации OpenZFS (включая исходный, общий код ZFS до OpenSolaris) и получить разрешение на изменение лицензии. Поскольку эта работа почти невозможна (потому что некоторые участники могут быть мертвы или их попросту невозможно найти), они решили сохранить имеющуюся у них лицензию.

Что такое ZFS? Каковы её особенности?

Как я уже говорил, ZeeFS — это расширенная файловая система. Таким образом, у неё есть множество интересных функций. Таких как:

  • Объединенное хранилище
  • Copy-on-write
  • Моментальные снимки
  • Проверка целостности данных и автоматическое исправление неисправностей
  • RAID-Z
  • Максимальный размер файла 16 Exabyte
  • Максимальный размер хранилища 256 Quadrillion Zetwabytes

Давайте разберём парочку этих функций.

Объединенное хранилище

В отличие от большинства файловых систем, ZeeFS сочетает в себе функции файловой системы и диспетчера томов. Это означает, что в отличие от других файловых систем, ZFS может создавать файловую систему, которая охватывает множество дисков или пулов. ZFS поддерживает разделение и форматирование.

Copy-on-write

Copy-on-write — еще одна интересная (и классная) функция. В большинстве файловых систем, когда данные перезаписываются, они теряются навсегда. В ZeeFS новая информация записывается в другой блок. По завершении записи метаданные файловых систем обновляются, чтобы указать на новую информацию. Это гарантирует, что если система выйдет из строя (или что-то еще произойдет) во время записи, старые данные будут сохранены. Это также означает, что системе не нужно запускать fsck после сбоя системы.

Моментальные снимки

Copy-on-write приводит нас к другой интересной функции ZFS: моментальные снимки (Snapshots). ZFS использует моментальные снимки для отслеживания изменений в файловой системе. Снимок содержит исходную версию файловой системы, а в самой файловой системе происходят какие-либо изменения, сделанные с момента создания моментального снимка. Дополнительное пространство не используется. Когда в файловую систему записываются новые данные, для хранения этих данных выделяются новые блоки. Когда файл удаляется, ссылка на моментальный снимок также удаляется. Таким образом, снимки в основном предназначены для отслеживания изменений в файлах, но не для добавления и создания файлов.

Снимки можно монтировать в формате «только для чтения», чтобы была возможность восстановить прошлую версию файла. Также можно откатить систему из текущего состояния на состояние из предыдущего снимка. Все изменения, сделанные после моментального снимка, будут потеряны.

Проверка целостности данных и автоматическое восстановление

Всякий раз, когда новые данные записываются в ZFS, создается контрольная сумма для этих данных. Когда эти данные считываются, контрольная сумма проверяется. Если контрольная сумма не соответствует, то ZFS знает, что обнаружена ошибка. Затем ZFS автоматически попытается исправить возникшую ошибку.

RAID-Z

ZFS может обрабатывать RAID, не требуя дополнительного программного или аппаратного обеспечения. Неудивительно, что ZFS имеет собственную версию RAID: RAID-Z. RAID-Z на самом деле является версией RAID-5. Для использования базового уровня RAID-Z (RAID-Z1) вам нужно как минимум два диска для хранения и один для контроля четности. Для RAID-Z2 требуется как минимум два накопителя и два диска для контроля четности. Для RAID-Z3 требуется как минимум два накопителя и три диска для контроля четности соответственно.

Огромный потенциал хранения

Когда ZFS был создан, она была разработана как «последнее слово» среди файловых систем. В то время, когда большинство файловых систем имело 64-битный формат, создатели ZFS решили перейти сразу к 128-битной версии. Это означает, что ZFS «вмещает 16 миллиардов-миллиардов 32-разрядных или 64-разрядных систем». Джефф Бонвик (один из создателей) сказал, что заполнение «полное заполнение 128-битного пула памяти в буквальном смысле потребует больше энергии, чем энергии необходимой для кипячения океанов».

Как установить ZFS?

Если вы хотите использовать ZFS, вам потребуется установка либо FreeBSD, либо операционной системы с использованием ядра illumos. illumos — это форк ядра OpenSolaris.

Если вы хотите попробовать ZFS в Linux, вы можете использовать его только в качестве файловой системы хранилища. Насколько мне известно, ни один дистрибутив Linux не дает вам возможности установить ZFS на свой root непосредственно из коробки. Если вы заинтересованы в настройке ZFS в Linux, в этой статье по установке ZFS на Linux есть ряд советов о том, как это сделать.

Предостережение

Эта статья воспевала преимущества ZFS. Теперь позвольте мне рассказать вам о основной проблеме связной с использованием ZFS. Использование RAID-Z может быть дорогостоящим из-за количества дисков, которые необходимо приобрести для добавления пространства для хранения.

Читайте также:  Высота установки оросителей пожаротушения

Спасибо за уделенное время на прочтение статьи!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Источник

Настройка ZFS в Ubuntu 20.04

После того, как вы закончили установку ZFS в Ubuntu 20.04 , следующим шагом будет выполнить некоторую настройку ваших жестких дисков. ZFS предлагает множество возможностей, и то, что вы решите сделать, будет зависеть от того, сколько дисков у вас доступно и каковы ваши цели хранения. Например, вы бы предпочли, чтобы ваш массив хранения фокусировался на скорости или избыточности? У вас есть 3 диска или 20? Как насчет шифрования?

Какой бы тип конфигурации вы ни выбрали, в этом руководстве мы покажем, как начать работу. Продолжайте читать, как мы рассматриваем основные команды использования в ZFS и настройку zpools, RAID-Z, шифрование и многое другое.

  • Как установить ZFS на Ubuntu 20.04
  • Как создавать и уничтожать zpools
  • Настроить разные уровни RAID и RAID-Z
  • Как использовать шифрование с ZFS

ZFS на Ubuntu 20.04

Требования к программному обеспечению и соглашения о командной строке Linux

категория Требования, соглашения или используемая версия программного обеспечения
система Установленная или модернизированная Ubuntu 20.04 Focal Fossa
Программное обеспечение ZFS Utilities
Другой Привилегированный доступ к вашей системе Linux от имени пользователя root или с помощью sudo команды.
Условные обозначения # — требует, чтобы данные команды linux выполнялись с правами root либо напрямую как пользователь root, либо с помощью sudo команды
$ — требует, чтобы данные команды linux выполнялись как обычный непривилегированный пользователь

Предпосылки

Единственное, что вам нужно, чтобы начать работу с ZFS и следовать нашему руководству, — это Ubuntu 20.04 Focal Fossa, некоторые жесткие диски, которые вы хотели бы использовать в своих массивах хранения, и утилиты ZFS, установленные в вашей системе. Если у вас еще не установлена ​​ZFS, вы можете открыть терминал и установить zfsutils-linux пакет с помощью этих двух команд:

Вы можете проверить, установлен ли ZFS с помощью следующей команды в терминале:

Проверьте версию ZFS, чтобы убедиться, что ZFS установлена ​​в вашей системе

Основы использования и команды ZFS

В нашей тестовой системе есть несколько жестких дисков, которые мы планируем использовать с ZFS. В этом разделе мы покажем вам, что вы можете с ними сделать.

Когда вы подключаете новые жесткие диски в свою систему, ZFS обращается к ним по имени устройства — обычно что-то /dev/sda похожее или похожее. Вы можете использовать fdisk команду, чтобы увидеть, какие жесткие диски у вас есть.

Команда fdisk показывает нам все жесткие диски в нашей системе, которые можно использовать в zpools

Создание и уничтожение пулов хранения ZFS

ZFS работает путем объединения дисков в пул. Эти пулы (обычно называемые «zpools») могут быть настроены для различных уровней RAID.

Первый zpool, который мы рассмотрим, это RAID 0. Это работает, разбивая ваши данные на несколько дисков. Когда файл считывается или записывается в пул хранения, все диски будут работать вместе, чтобы представить часть данных. Это дает вам повышение скорости чтения и записи, но ничего не делает для избыточности. На самом деле, любой сбой диска в пуле приведет к полной потере данных.

Команда zpool status показывает наш RAID 0 чередующийся zpool

Эта команда создала пул хранения ZFS с именем «mypool» с двумя жесткими дисками /dev/sdb и /dev/sdc . Вы можете просмотреть подробную информацию о своих пулах хранения в любое время, выполнив эту команду:

И вы можете увидеть более краткий отчет о ваших пулах хранения ZFS, выполнив:

Вывод команды zpool list

Ваш вновь созданный пул будет автоматически смонтирован для вас, и вы сможете сразу начать его использовать. Приятной особенностью ZFS является то, что вам не нужно проходить длительное разбиение (при использовании целых дисков) или процесс форматирования. Хранилище просто доступно сразу.

Используйте команду df, чтобы увидеть ваш смонтированный zpool

Если вы хотите добавить еще один жесткий диск в пул, посмотрите на эту команду, где мы добавляем жесткий диск /dev/sdd в наш ранее созданный mypool пул хранения:

Вы можете видеть, что диск был добавлен в zpool с помощью zpool status команды.

Новый жесткий диск был добавлен в наш zpool

Мы можем уничтожить наш zpool в любое время с помощью следующей команды:

Уничтожая наш зпул

В случае RAID 0 zpools вы не можете удалить ни один диск из пула, не уничтожив пул полностью и не потеряв все данные. У ZFS есть много разных опций, некоторые из которых позволяют удалять или отказывать диски, сохраняя целостность пула.

Другие типы пулов хранения ZFS создаются таким же образом, как мы показали выше, но zpool при создании пула необходимо указать дополнительный аргумент в команде. Давайте посмотрим на некоторые примеры.

Зеркальный пул хранения — это ZFS, эквивалентный RAID 1. Это обеспечивает избыточность, поскольку все ваши данные зеркально отображаются с одного жесткого диска на один или несколько других. Чтобы создать зеркальный пул хранения, используйте следующий синтаксис команды:

Создание зеркального (RAID 1) zpool

Конечно, в пул можно добавить больше дисков для создания дополнительной избыточности.

Теперь давайте посмотрим на пулы RAID-Z. RAID-Z очень похож на RAID 5, но улучшает его с большей скоростью и избегает некоторых распространенных ошибок, связанных с RAID 5.

RAID-Z обеспечит вам скорость плюс избыточность благодаря использованию чередования на уровне блоков и распределенной четности. Существует три типа RAID-Z, в зависимости от желаемой четности.

  • raidz1 (или просто raidz) — одинарный паритет
  • raidz2 — двойной паритет
  • raidz3 — тройной паритет

Вот как вы можете создать пул RAID-Z. Используйте raidz2 или raidz3 вместо of raidz в этой команде, если вы хотите большей четности (имейте в виду, что в этом случае вам также понадобятся дополнительные диски):

Создание RAID-Z Zpool

Шифрование на ZFS

После создания пула хранения ZFS вы можете настроить шифрование с помощью следующих команд. В этом примере мы все еще используем наш пул RAID-Z с тремя дисками с именем mypool.

Вам будет предложено ввести пароль дважды для шифрования.

Настройка шифрования с ZFS

В нем создается новый каталог /mypool/encrypted , и все в этом каталоге шифруется. Всякий раз, когда вы перезагружаетесь, вам нужно вручную монтировать зашифрованный набор данных. Обязательно используйте -l флаг при монтировании зашифрованных наборов данных. Вам будет предложено ввести пароль, который вы выбрали ранее.

Монтирование зашифрованного набора данных ZFS

Вывод

ZFS — это файловая система, ориентированная на высокую доступность и целостность данных. Он идеально подходит для серверов хранения / NAS и любой среды, где скорость чтения и записи имеет решающее значение наряду с избыточностью жесткого диска.

В этом руководстве мы узнали о некоторых основных командах использования ZFS в Ubuntu 20.04 Focal Fossa. Мы показали вам, как начать настройку ZFS на собственной системе с помощью zpools, но конфигурация для ZFS может стать гораздо более обширной.

Источник

Устанавливаем ZFS в Linux. Установка и настройка

Допускаете ли вы возможность того, что можете не сделать своевременно резервную копию важных файлов или папки и по какой-то роковой случайности можете их потерять? Возможна ли ошибочная команда «rm -rf» в вашей музыкальной библиотеке? Могут ли у вас быть повреждены основные системные файлы виртуальной машины? Люди не совершенны и все способны на ошибки, так что, чем скорее вы перейдете на ZFS, тем скорее сможете перестать беспокоиться о безвременной утрате драгоценных данных.

Установка и настройка ZFS в Linux очень проста для большинства дистрибутивов.

Arch или Manjaro linux

У пользователей Arch есть несколько вариантов установки ZFS. Так пакет AUR «zfs-dkms» целесообразен, если вы хотите использовать ветвь ядра LTS. Если нет, то другие два варианта — «zfs-linux-git» и «zfs-linux». Первый пакет, как видно из названия, собран из репозитория ZFS Git и, как следствие, будет получать обновления для более новых ядер намного быстрее. Последнее иногда отстает и порой блокирует обновления ядра ядра на вашем компьютере.
Как правило, лучше использовать «zfs-linux-git», поскольку обновления ядра будут очень быстрыми. Скомпилируйте его следующей командой:

Более подробную информацию можно найти на Arch Wiki

Debian

В Debian начало использования ZFS происходит с добавления в файл /etc/apt/sources.list следующего репозитория:

Далее устанавливаем ZFS:

Apt автоматически включает службы systemd, поэтому все, что вам останется сделать, это перезагрузить машину.

Ubuntu

Начиная с Xenial, Ubuntu включает в себя модуль ядра ZFS. Все, что вам следует сделать, это добавить пользовательские инструменты и перезагрузиться:

Fedora

Если верить ZFSOnLinux Wiki, то пользователи Fedora могут установить ZFS используя следующие простые команды:

Эти команды добавят ZoL репозиторий и установят ZFS.

Gentoo

Будучи source-based дистрибутивом, ZFS на Gentoo не требует DKMS. Чтобы установить его, сначала убедитесь, что у вашего ядра есть поддержка сжатия Deflate. В «make menuconfig» включите его:

Затем разрешите использовать git-версии ZFS, выполнив следующие команды с правами root:

После чего установите и активируйте ZFS:

Creating a ZFS “partition”

Теперь, когда вы установили поддержку файловой системы, вам нужно создать пул. Пулы могут быть очень сложными, охватывая многие диски и предлагая избыточность. Однако в этом примере будет использоваться один раздел без избыточности. Во-первых, требуется пустой раздел. ZFS в Linux можно использовать в качестве корневой файловой системы, но это не рекомендуется. Поэтому перераспределите другой диск, используя привычный вам инструмент управления разделами, например, GParted. Если вы изменяете размер корневой файловой системы, чтобы освободить место, вам понадобится Live образ, например, GParted Live Disk.

После разбивки и перераспределения создадим новый zpool:

Устанавливаем ZFS в Linux. Установка и настройка

Использование ZFS в Linux

ZFS оперирует наборами данных(dataset) — которые по сути ячлвются, мини-разделами в томе ZFS. Вы можете монтировать датасеты в любом месте в котором пожелаете. Когда вы делаете снэпшот(snapshot), вы делаете снимок набора данных. Для создания снэпшота, выполните следующую команду:

ZFS позволяет создавать практически неограниченное количество снэпшотов в датасете. К сожалению, возврат к более раннему снимку требует удаления всех снимков, созданных после него. Откат к более раннему снимку осуществляется так

Еще одна полезная функция ZFS — это функция клонирования. Клоны позволяют дублировать датасеты, не занимая при этом все пространство на диске повторно. Разумеется, все записи в датасет будут использовать дополнительное дисковое пространство. Вы должны сделать снимок датасета, прежде чем сможете клонировать его. Чтобы клонировать датасет, выполните в терминале:

Чтобы удалить снэпшот выполните:

Для удаления клона выполните:

Одним из интересных вариантов использования ZFS в Linux является виртуализация. Сохранение файла образа VM в датасете позволяет легко откатываться и клонировать с минимальными потерями в производительности.

ZFS — очень мощная файловая система с огромным количеством функций. Поскольку невозможно описать их все в одной статье, я пошлю вас знакомиться с фантастической документацией FreeBSD. Хоть документация и написана для FreeBSD, очень многое применимо в Linux (а также OSX, IllumOS и возможно Windows). Если вы намерены использовать ZFS, то я рекомендую ознакомиться с понятием наборов данных(dataset).

Статья является переводом с английского статьи Ryan El Kochta: ZFS Configuration on Linux – Setup and Basics

Источник

Adblock
detector