Xfs создать файловую систему centos

Обновлено: 07.07.2024

Журналируемая файловая система xfs позволяет использовать блочные устройства размером более 16ТБ (пакеты xfsprogs и xfsdump), первоначально была разработана для SGI IRIX, поддерживает расширенные атрибуты файлов, выделение места экстентами, эффективное распараллеливание за счёт разбиения области данных на независимые отсеки. Является файловой системой по умолчанию в RHEL 7. Не очень любит мелкие файлы. Предпочтительна при большом количестве потоков доступа.

  • состоит из секций данных (содержит метаданные и может содержать журнал), журнала и секции для работы в реальном времени
  • секция данных делится на равные группы блоков (allocation groups), количество которых определяет уровень параллелизма при выделении места; каждая группа содержит суперблок, управление свободным пространством группы, таблицу inode (создаются по потребности), данные
  • размер блока в Linux - 4 КБ
  • выделение места происходит экстентами (до 8 GiB)
  • ранее не подходила для хранения большого количества мелких файлов (почтовый сервер) - медленно работает с метаданными; постепенно улучшается
  • открытые в момент неожиданного выключения компьютера файлы будут заполнены нулями (исправлено)
  • мгновенное создание и расширение файловой системы при нулевых накладных расходах (у ext4 - 1.5%, т.е. 269GB для 16ТБ) и примерно сравнимых с ext4 накладных расходах при хранении файлов (на 0.07% меньше для набора в 10TB из 10 миллионов файлов
  • 64-битные номера inode для файловой системы размером 2ТиБ и более, не все 32-битные программы это переживут ; исправлено в RHEL7
  • /proc/fs/xfs/stat - статистика
  • /proc/sys/fs/xfs - ручки управления
    • age_buffer_centisecs - 1500, возраст метаданных для сброса на диск
    • error_level (?)
    • filestream_centisecs - 3000
    • inherit_noatime
    • inherit_nodefrag
    • inherit_nodump
    • inherit_nosymlinks
    • inherit_sync
    • irix_sgid_inherit
    • irix_symlink_mode - позволяет устанавливать права доступа символьных ссылок (отключено)
    • panic_mask (?)
    • rotorstep - 1, сколько файлов размещать в группе перед переходом к следующей
    • restrict_chown - запрещает передавать права на файл другим пользователям (отключено, нев в RHEL7)
    • speculative_prealloc_lifetime (?)
    • stats_clear (?)
    • xfsbufd_centisecs - 100, интервал сборки мусора в буферах метаданных
    • xfssyncd_centisecs - 3000, интервал сброса метаданных

    Кстати, опыт показал, что xfs сбрасывает накопленные буфера с такой интенсивностью, что захлёбывается внешнее хранилише (RAID контроллер), поэтому рекомендуется обеспечить ранее начало сброса: 40000000 в /proc/sys/vm/dirty_bytes, 10000000 в /proc/sys/vm/dirty_background_bytes.

    Проблема с излишней фрагментацией ("XFS: . possible memory allocation deadlock") купируется сбросом буферов в slab ("echo 2 > /proc/sys/vm/drop_caches"). У меня это произошло с индексным фйалом MySQL при добавлении ключа (файл 40ГБ оказался разбит на 3 миллиона кусочков).

    xfs_info (скрипт для xfs_db).

    xfs_admin (скрипт для xfs_db) позволяет изменить метку и UUID размонтированной фаловой системы.

    xfs_check (скрипт для xfs_db) - проверка файловой системы, требуется размонтирование, требует 16 ГБ памяти (реально использовались 10 ГБ) для файловой системы в 7 TB (67%, 500 файлов); требует и реально использует 42 ГБ памяти для файловой системы в 20TB, быстр.

    xfs_logprint - вывод и разбор журнала.

    xfs_metadump (скрипт для xfs_db) - вывод метаданных в файл.

    Определить уровень фрагментации файлов: "xfs_db -c frag -r блочное-устройство" (размонтирование не требуется, но иногда случается "Segmentation fault" ; показывает долю "лишних" экстентов).

    Определить уровень фрагментации свободного пространства: "xfs_db -c freesp -r блочное-устройство" (размонтирование не требуется).

    • -v
    • -t секунд (7200; максимальное время работы)
    • -L (обнулить журнал)
    • -n (только проверка)
    • -t секунд (интервал между отчётами)
    • -v

    Утилиты xfsdump и xfsrestore могут помочь извлечь данные из файловой системы, которой не помогла xfs_repair (требуется монтирование).

    Утилита xfs_growfs позволяет увеличить размер файловой системы без размонтирования ( уменьшение размера файловой системы невозможно ).

    Прочее: xfs_bmap, xfs_freeze, xfs_io, xfs_mdrestore, xfs_mkfile, xfs_ncheck, xfs_quota.

    • подключить дисковый массив к контроллеру FibreChannel
    • создать 2 массива RAID-6 (12x2TB) по 20TB, LUN во весь размер на каждом (24 диска в 1 LUN не умеет)
    • создать логический том
    • создать файловую систему
    • монтирование (/etc/fstab)
    • настройки в /etc/rc.local
    • проверка скорости (линейная скорость ограничена здесь FC контроллером на 4Gb)
    • множество примеров скоростных характеристик в статье про RAID
    • 1 поток - 16911270150144 bytes (17 TB) copied, 60008.1 s, 282 MB/s
    • 2 потока - 10441797402624 bytes (10 TB) copied, 32280.2 s, 323 MB/s
    • 4 потока - 8016907730944 bytes (8.0 TB) copied, 15049.9 s, 533 MB/s
    • 6 потоков - 15313932386304 bytes (15 TB) copied, 22621.3 s, 677 MB/s
    • 8 потоков - 32895813025792 bytes (33 TB) copied, 42517.9 s, 774 MB/s
    • 10 потоков - 30828863160320 bytes (31 TB) copied, 34851.2 s, 885 MB/s (пока их ещё 10)
    • 12 потоков - 35113530294272 bytes (35 TB) copied, 39212.2 s, 895 MB/s (пока их ещё 6)
    • 16 потоков - 17077979054080 bytes (17 TB) copied, 13573.9 s, 1.3 GB/s (пока их ещё 16)
    • 20 потоков - 5592203657216 bytes (5.6 TB) copied, 3784.57 s, 1.5 GB/s (пока их 20)
    • 24 потока - 6714306854912 bytes (6.7 TB) copied, 8835.18 s, 760 MB/s (пока их 20)
    • 32 потока - 5862605193216 bytes (5.9 TB) copied, 8141.34 s, 720 MB/s (пока их 24)
    • 1 поток - 10104413880320 bytes (10 TB) copied, 9822.86 s, 1.0 GB/s
    • 2 потока - 16951939170304 bytes (17 TB) copied, 17398.4 s, 974 MB/s
    • 4 потока - 10740585988096 bytes (11 TB) copied, 7771.81 s, 1.4 GB/s
    • 6 потоков - 37457503453184 bytes (37 TB) copied, 27914.8 s, 1.3 GB/s
    • 8 потоков - 20083290144768 bytes (20 TB) copied, 14405.3 s, 1.4 GB/s
    • 10 потоков - 13290862280704 bytes (13 TB) copied, 9638.1 s, 1.4 GB/s
    • 12 потоков - 18429180379136 bytes (18 TB) copied, 15934.9 s, 1.2 GB/s
    • 16 потоков - 20072395440128 bytes (20 TB) copied, 22512.1 s, 892 MB/s
    • 20 потоков - 19661230964736 bytes (20 TB) copied, 24707.8 s, 796 MB/s (пока их 16)
    • 24 потока - 8341583560704 bytes (8.3 TB) copied, 9555.3 s, 873 MB/s (пока их 16)
    • 32 потока - 5574189121536 bytes (5.6 TB) copied, 7060.46 s, 789 MB/s (пока их 24)

    Вывод: при восстановлении малым количеством потоков необходимо включать кеширование и предварительное чтение.

    Linux 7.0 system lvm + xfs создание файловой системы и расширение диска

    1. Проверьте доступное дисковое пространство

    Диск / dev / sda: 32,2 ГБ, 32212254720 байт, 62914560 секторов
    Units = сектор размером 1 * 512 = 512 байт
    размер сектора (логический / физический): 512 байт / 512 байт
    Размер ввода / вывода (минимальный / оптимальный): 512 байт / 512 байт
    Тип метки диска: dos
    Идентификатор диска: 0x00030eb5

    Система Идентификатора начала и конца загрузки устройства
    /dev/sda1 * 2048 526335 262144 83 Linux
    /dev/sda2 526336 1050623 262144 6 FAT16
    /dev/sda3 1050624 62914559 30931968 8e Linux LVM

    Диск / dev / sdb: 53,7 ГБ, 53687091200 байт, 104857600 секторов
    Units = сектор размером 1 * 512 = 512 байт
    размер сектора (логический / физический): 512 байт / 512 байт
    Размер ввода / вывода (минимальный / оптимальный): 512 байт / 512 байт
    Тип метки диска: dos
    Идентификатор диска: 0x32d47d16

    Из приведенной выше информации можно сделать вывод, что существует свободный диск / dev / sdb: 53,7 ГБ

    2. Создать раздел формата lvm

    Команда (введите m для справки): p

    Диск / dev / sdb: 53,7 ГБ, 53687091200 байт, 104857600 секторов
    Units = сектор размером 1 * 512 = 512 байт
    размер сектора (логический / физический): 512 байт / 512 байт
    Размер ввода / вывода (минимальный / оптимальный): 512 байт / 512 байт
    Тип метки диска: dos
    Идентификатор диска: 0x32d47d16

    Система Идентификатора начала и конца загрузки устройства

    Команда (введите m для справки): p

    Диск / dev / sdb: 53,7 ГБ, 53687091200 байт, 104857600 секторов
    Units = сектор размером 1 * 512 = 512 байт
    размер сектора (логический / физический): 512 байт / 512 байт
    Размер ввода / вывода (минимальный / оптимальный): 512 байт / 512 байт
    Тип метки диска: dos
    Идентификатор диска: 0x32d47d16

    Система Идентификатора начала и конца загрузки устройства
    /dev/sdb1 2048 104857599 52427776 83 Linux

    Команда (введите m для справки): t
    выбран раздел 1
    Шестнадцатеричный код (введите L, чтобы просмотреть все коды): 8e
    изменил тип раздела "Linux" на "Linux LVM"

    Команда (введите m для справки): p

    Диск / dev / sdb: 53,7 ГБ, 53687091200 байт, 104857600 секторов
    Units = сектор размером 1 * 512 = 512 байт
    размер сектора (логический / физический): 512 байт / 512 байт
    Размер ввода / вывода (минимальный / оптимальный): 512 байт / 512 байт
    Тип метки диска: dos
    Идентификатор диска: 0x32d47d16

    Система Идентификатора начала и конца загрузки устройства
    /dev/sdb1 2048 104857599 52427776 8e Linux LVM

    Команда (введите m для справки): w
    The partition table has been altered!
    Calling ioctl() to re-read partition table.
    Синхронизация диска.

    Он используется для перечитывания таблицы разделов. Когда появляются удаленные файлы, они все еще занимают место. Partprobe может перечитать разделы без перезапуска

    Создать физические тома

    Physical volume “/dev/sdb1” successfully created

    4. Создайте группу томов

    Совет: Если ранее существовала группа томов, мы можем расширить пространство хранения поверх предыдущей группы томов, а при необходимости мы можем создать еще одну группу томов отдельно. Никакого эффекта до и после!

    5.Создать логические тома

    Формат файловой системы XFS

    Монтирование файловой системы

    8. Расширить логический том

    Интеллектуальная рекомендация


    WECHAT MILLY WAY POINT CAMENT CARD - СОВРЕМЕННЫЕ СТРАНИЦЫ ПРОГЛЯЮТНОЕ ЗНАЧЕНИЕ (Запрос)

    WECHAT Small Pass Pass Value и значение приобретения: 1. Установите способ настройки идентификатора идентифицирует значение параметра, передаваемое после прыжка; 2, используя метод Data-XXXX для идент.


    Текущая задача Узел больше экземпляров


    [Linux] Программирование сетевых сокетов UDP

    Что такое протокол UDP Протокол UDP называетсяПротокол пользовательских датаграмм UDP - протокол транспортного уровня Без установления соединения, ненадежная передача, ориентированная на дейтаграмму П.



    Основная идея обработки больших данных - разделяй и властвуй

    Разделяй и властвуй - «разделяй и властвуй» Как мы все знаем, компьютеры очень быстрые и используются людьми. Однако независимо от того, насколько быстрым является компьютер, способность о.

    В качестве аргумента filesys для файловой системы может выступать или название устройства (например, /dev/hda1 , /dev/sdb2) или точка монтирования (например, / , /usr , /home ). Аргументом blocks указывается количество блоков, которые выделяются для использования этой файловой системой.

    2. Создание файловой системы.

    2.1. Выбор файловой системы.

    Файловые системы условно делятся на два типа:

    • Журналируемые. Имеют в своем арсенале специальный файл, который хранит историю действий (лог) и план дальнейшей проверки. Характерной особенностью является устойчивость к сбоям и большая гарантия на сохранение целостности данных.
    • Не журналируемые. Отсутствует файла с логом. Работают более быстро. Не гарантируют целостность и сохранность данных. Особенно это проблема встает в случае сбоев, когда некоторые действия могли редактировать файл и прервать изменения в неправильном месте.

    Для этого сначала нужно выбрать файловую систему для наших потребностей:

    2.2. Создание файловой системы на устройстве.

    Все основные параметры должны быть указаны в начале и не должны смешиваться с параметрами, которые передаются для специфичных файловых систем. Некоторые модули создания специфичных файловых систем не поддерживают параметр -v (подробно информировать) или не возвращают осмысленные коды возврата. Кроме этого, некоторые модули автоматически (самостоятельно) не могут определить размер устройства и для них обязательно надо указывать параметр blocks.

    Если хотите сразу, просто и быстро, то вот так тоже сойдет:

    , где вместо file_system подставляем выбранную файловую систему:

    Вместо /файл/устройства пишем имя форматируемого раздела, например /dev/hdb1 .

    Например создадим файловую систему ext4:

    Здесь нужно ещё отметить тот факт, что при форматировании в ext3, для пользователя root резервируется 5% места.

    Чтобы убрать 5 процентное резервирование места для root в ext3 нужно дать команду:

    После этого простому пользователю будет доступно всё место.

    Так же имеет место быть принудительная проверка диска после некоторого количества загрузок. Если вам это не нужно, процедуру можно отменить командой:

    Либо сделать так, чтобы проверка происходила реже, например, 1 раз в 100 загрузок:

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

    Файлы журнала (или журнала) XFS могут быть созданы для внешнего доступа или сохранены в разделе данных. Во время работы файловой системы записи журнала отслеживают изменения метаданных файловой системы. Завершение работы системы предотвращает вступление в силу любых изменений файловой системы. Благодаря журналированию XFS вы не потеряете никаких данных, даже если вы потеряете питание или система выйдет из строя. Когда файловая система монтируется после сбоя, выполняемая операция завершается.

    Для сегодняшних рабочих сроки имеют решающее значение, как и хорошее выполнение работы. Кроме того, как и XFS, вы можете легко монтировать и форматировать большие файлы с файловой системой XFS CentOS 8.

    Как отформатировать устройство и создать файловую систему XFS в CentOS 8

    Дистрибутив CentOS 8 — это клон Red Hat Enterprise Linux (RHEL), созданный из исходного кода RHEL без фирменной символики Red Hat. Это приложение может работать без простоев, даже если CentOS не имеет всех функций и приложений.

    Как высокопроизводительная файловая система с 64-битным размером файла. Она поддерживает файловые системы размером до 500 ТБ. Linux включает его как часть файлов по умолчанию и теперь считается стандартом для всех дистрибутивов Linux. Файлы и файловые системы в 32-битных системах Linux могут иметь размер только 16 тэбибайт при использовании файловой системы XFS. Это обеспечивает безопасность файла. XFS разбивает или создает новые диски на основе диска. Более того, он также может восстанавливать и устранять повреждения, вызванные отключением электроэнергии или сбоями системы.

    Давайте разберемся, как файловая система XFS форматируется и воссоздается в CentOS 8.

    Прежде всего, нам нужен диск с файловой системой. После этого мы должны использовать в нем команду «PVS», после чего мы увидим два диска SDA и SDB. Прежде всего, мы должны создать VG с помощью этой команды:

    Читайте также: