Handbook:HPPA/Installation/Disks

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Handbook:HPPA/Installation/Disks and the translation is 100% complete.
Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎polski • ‎português do Brasil • ‎русский • ‎українська • ‎中文(中国大陆)‎ • ‎日本語 • ‎한국어
HPPA Handbook
Установка
Об установке
Выбор подходящего источника для установки
Настройка сети
Подготовка дисков
Установка stage3
Установка базовой системы
Настройка ядра
Настройка системы
Установка системных утилит
Настройка загрузчика
Завершение
Работа с Gentoo
Введение в Portage
USE-флаги
Возможности Portage
Система init-скриптов
Переменные окружения
Работа с Portage
Файлы и каталоги
Переменные
Смешение ветвей программного обеспечения
Дополнительные утилиты
Дополнительные репозитории пакетов
Расширенные возможности
Настройка сети
Начальная настройка
Расширенная настройка
Модульное построение сети
Беспроводная сеть
Добавляем функциональность
Динамическое управление


Введение в блочные устройства

Блочные устройства

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

Для начала, рассмотрим блочные устройства. Наиболее известным блочным устройством можно считать первый диск в системе Linux, именуемый /dev/sda. И SCSI, и Serial ATA диски обозначаются как /dev/sd*; благодаря фреймворку ядра libata даже IDE-диски обозначаются как /dev/sd*. Если же используется старый фреймворк устройств, первым IDE-диском будет /dev/hda.

Данные блочные устройства представляют абстрактный интерфейс к диску. Пользовательские приложения могут использовать их для взаимодействия с диском, не заботясь о том, какой это диск — IDE, SCSI или ещё какой-либо. Программа просто адресует пространство на диске как совокупность следующих друг за другом 512-байтных блоков с произвольным доступом.


Разделы и слайсы

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

Разработка схемы разделов

Сколько разделов и насколько больших?

Количество разделов очень сильно зависит от назначения системы. Например, если будет много пользователей, скорее всего, захочется отделить /home/ для повышения безопасности и упрощения резервного копирования. Если Gentoo устанавливается для использования в роли почтового сервера, следует отделить /var/, так как вся почта хранится в /var/. Правильный выбор файловой системы увеличит производительность. Для игровых серверов потребуется отдельный раздел /opt/, так как большинство игровых серверов устанавливается туда. Причины выделения те же, что и для /home/: безопасность и резервное копирование. Определенно не помешает побольше места для /usr/: не только потому, что там хранится большинство приложений, обычно там также находится репозиторий ebuild-файлов Gentoo (по умолчанию находится в /var/db/repos/gentoo), который занимает около 650 МБайт. Эта оценка дискового пространства исключает каталоги binpkgs/ и distfiles/, которые по умолчанию хранятся в /var/cache/.

In most situations on Gentoo, /usr and /var should be kept relatively large in size. /usr hosts the majority of applications available on the system and the Linux kernel sources (under /usr/src). By default, /var hosts the Gentoo ebuild repository (located at /var/db/repos/gentoo) which, depending on the file system, generally consumes around 650 MiB of disk space. This space estimate excludes the /var/cache/distfiles and /var/cache/binpkgs directories, which will gradually fill with source files and (optionally) binary packages respectively as they are added to the system.

Все сильно зависит от того, чего хочет достигнуть администратор. Наличие отдельных разделов или томов имеет следующие плюсы:

  • Можно выбрать наиболее подходящую файловую систему для каждого раздела или тома.
  • Свободное место во всей системе не закончится внезапно из-за того, что одна-единственная сбойная программа постоянно записывает файлы в раздел или том.
  • Необходимая проверка файловых систем будет занимать меньше времени, так как проверка разных разделов может выполняться параллельно (еще больший выигрыш времени дает использование нескольких физических дисков).
  • Можно повысить безопасность системы, монтируя часть разделов в режиме только для чтения, nosuid (игнорируется бит setuid), noexec (игнорируется бит исполнения) и так далее.

Однако у множества разделов также есть недостатки. Если они не настроены правильно, может получиться так, что будет огромное количество свободного места на одном разделе и отсутствие его на другом. Другой проблемой является то, что отдельные разделы, особенно для важных точек монтирования, например /usr/ или /var/, часто требуют загрузки initramfs, чтобы смонтировать разделы прежде, чем запустятся другие загрузочные сценарии. Это не всегда является проблемой, так что результаты могут быть разные.

Также существует лимит в 15 разделов для SCSI и SATA, если только на диске не используются метки GPT.

Что по поводу пространства подкачки?

Не существует идеального значения для раздела подкачки. Целью пространства подкачки является предоставление дискового пространства ядру в условиях активного использования оперативной памяти. Пространство подкачки позволяет ядру переносить на диск страницы памяти, которые не будут использоваться в ближайшее время, освобождая память (swap или page-out). Конечно, если эта память вдруг неожиданно понадобится, эти страницы должны быть помещены обратно в память (page-in), что займет некоторое время (так как диски — это очень медленные устройства по сравнению с оперативной памятью).

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


Использование fdisk в HPPA

Используйте fdisk для создания необходимых разделов:

root #fdisk /dev/sda

Компьютеры HPPA используют стандартные таблицы разделов DOS. Чтобы создать новую таблицу, нажмите клавишу o.

Command (m for help):o
Building a new DOS disklabel.

Для PALO (начальный загрузчик HPPA) для работы необходим специальный раздел. Для этого вам необходимо создать в начале диска раздел размером не меньше 16 МБ. Тип раздела должен быть f0 (Linux/PA-RISC boot).

Важно
Если вы проигнорируете это и продолжите без специального раздела PALO, то в конечном итоге ваша система откажется загружаться. Кроме того, если ваш диск больше 2 Гб, проверьте, что загрузочный раздел находится в первых 2 Гб диска. Иначе PALO не сможет прочитать ядро за пределами 2 Гб.
Файл /etc/fstabПростая схема разделов по умолчанию
/dev/sda2    /boot   ext2    noauto,noatime   1 1
/dev/sda3    none    swap    sw               0 0
/dev/sda4    /       ext4    noatime          0 0

В fdisk, такая разбивка по разделам выглядит примерно так:

Command (m for help):p
Disk /dev/sda: 4294 MB, 4294816768 bytes
133 heads, 62 sectors/track, 1017 cylinders
Units = cylinders of 8246 * 512 = 4221952 bytes
  
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1           8       32953   f0  Linux/PA-RISC boot
/dev/sda2               9          20       49476   83  Linux
/dev/sda3              21          70      206150   82  Linux swap
/dev/sda4              71        1017     3904481   83  Linux


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

Введение

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

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

На выбор доступно несколько файловых систем. Некоторые из них считаются стабильными на архитектуре hppa. Рекомендуется прочитать информацию о файловых системах и об их состоянии поддержки перед тем, как останавливать свой выбор на экспериментальных.

btrfs
Файловая система следующего поколения, обеспечивающая множество дополнительных функций, таких как мгновенные снимки, самовосстановление с помощью контрольных сумм, поддержка прозрачного сжатия, субтомов и интегрированный RAID. Некоторые дистрибутивы начали предлагать её из коробки, но она ещё не готова к использованию в промышленной среде. Отчеты о повреждении файловой системы достаточно часты. Ради большей надёжности разработчики призывают пользователей использовать последнюю версию ядра, так как старые версии подвержены известным проблемам. ФС разрабатывается уже много лет и пока далека до завершения. Исправления иногда портируются в более старые версии ядра. Используйте с осторожностью эту файловую систему!
ext2
Это проверенная и надежная файловая система Linux, но она не обладает средствами журналирования метаданных, что означает, что проверка файловой системы ext2 при запуске может занимать довольно много времени. Существует достаточно широкий выбор журналируемых файловых систем нового поколения, целостность которых может быть проверена очень быстро, что является преимуществом перед нежурналируемыми системами. Журналирование файловой системы позволяет избежать долгих задержек при загрузке системы, а также избежать её нестабильного состояния.
ext3
Журналируемая версия файловой системы ext2, обеспечивающая журналирования метаданных для быстрого восстановления в дополнение к другим режимам журналирования, таким как журналирование всех данных и упорядоченных данных. В данной ФС используются индексы на базе деревьев хешей, что в большинстве случаев обеспечивает высокую производительность. Вкратце, ext3 — это очень хорошая и надёжная файловая система.
ext4
Изначально созданная как ответвление от ext3, ext4 реализует новые возможности, повышение производительности и устранение ограничений на размер раздела на диске ценой незначительного изменения формата данных на диске. Она может быть размером до 1 ЭБ, а максимальный размер файла может составлять 16ТБ. Вместо классического ext2/3 блочного распределения ext4 использует экстенты, которые улучшают производительность при работе с большими файлами и уменьшают фрагментацию. Ext4 также обеспечивает более сложные алгоритмы распределения блоков (отложенное распределение и мультиблочное распределение), дающие драйверу файловой системы больше возможностей по оптимизации размещения данных на диске. Ext4 рекомендуется как универсальная файловая система для всех платформ.
f2fs
Файловая система (Flash-Friendly File System) была создана Samsung для использования на NAND-накопителях. По состоянию на 2 квартал 2016 года файловая система считается не завершенной, но она может быть достойным выбором при установке на microSD карту, USB-накопитель или другие накопители.
JFS
Высокопроизводительная журналируемая файловая система от IBM. JFS — это легкая, быстрая и надежная файловая система, основанная на двоичных деревьях с хорошей производительностью в различных условиях.
ReiserFS
Основанная на двоичных деревьях журналируемая файловая система с хорошей общей производительностью, особенно при работе с множеством мелких файлов ценой чутью больших затрат центрального процессора. По сравнению с другими файловыми системами, ReiserFS меньше поддерживается.
XFS
Файловая система с журналированием метаданных, которая поставляется с мощным набором функций и оптимизирована для масштабируемости. XFS менее снисходительно относится к различным аппаратным проблемам.
vfat
Так же известна как FAT32, поддерживается Linux, но без поддержки разрешений к файлам. В основном используется для взаимодействия с другими операционными системами (в основном Microsoft Windows), но также необходима при использовании некоторых системных прошивок (например, UEFI).
NTFS
New Technology Filesystem является основной файловой системой для Microsoft Windows. Как и vfat, она не сохраняет настройки разрешений и расширенные атрибуты, необходимые для нормальной работы BSD или Linux, поэтому она не может быть использована как корневая файловая система. Её необходимо использовать только для взаимодействия с системами Microsoft Windows (обратите внимание на акцент слова только).

При использовании ext2, ext3 или ext4 на малых разделах (менее 8 Гб) файловая система должна быть создана с особыми параметрами для резервирования достаточного количества индексных дескрипторов (inodes). Приложение mke2fs (mkfs.ext2) использует настройки «bytes-per-inode» для вычисления количества необходимых дескрипторов. На небольших разделах рекомендуется увеличивать расчётное количество дескрипторов.

Для ext2, ext3 или ext4 может быть выполнена одна из следующих команд:

root #mkfs.ext2 -T small /dev/<device>
root #mkfs.ext3 -T small /dev/<device>
root #mkfs.ext4 -T small /dev/<device>

Данные команды учетверяют количество индексных дескрипторов для такой ФС, так как «bytes-per-inode» уменьшает количество байт на каждый дескриптор с 16 кб до 4 кб. Это соотношение может быть изменено в любую сторону с помощью команды:

root #mkfs.ext2 -i <ratio> /dev/<device>

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

Для создания файловых систем на разделе или томе существуют пользовательские утилиты для каждого возможного типа файловой системы. Нажмите на имя файловой системы в таблице ниже для получения дополнительной информации о каждой файловой системе:

Файловая система Команда для создания Есть на минимальном CD? Пакет
btrfs mkfs.btrfs Да sys-fs/btrfs-progs
ext2 mkfs.ext2 Да sys-fs/e2fsprogs
ext3 mkfs.ext3 Да sys-fs/e2fsprogs
ext4 mkfs.ext4 Да sys-fs/e2fsprogs
f2fs mkfs.f2fs Да sys-fs/f2fs-tools
jfs mkfs.jfs Да sys-fs/jfsutils
reiserfs mkfs.reiserfs Да sys-fs/reiserfsprogs
xfs mkfs.xfs Да sys-fs/xfsprogs
vfat mkfs.vfat Да sys-fs/dosfstools
NTFS mkfs.ntfs Да sys-fs/ntfs3g

Например, чтобы создать загрузочный раздел (/dev/sda2) в ext2 и корневой раздел (/dev/sda4) в ext4 при использовании структуры разделов из примера, используются следующие команды:

root #mkfs.ext2 /dev/sda2
root #mkfs.ext4 /dev/sda4

Теперь создайте файловые системы на только что созданных томах (или логических разделах).

Активация раздела подкачки

Для инициализации разделов подкачки используется команда mkswap:

root #mkswap /dev/sda3

Чтобы активировать раздел подкачки, используйте swapon:

root #swapon /dev/sda3

Создайте и активируйте раздел подкачки командами выше.

Монтирование корневого раздела

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

root #mount /dev/sda4 /mnt/gentoo
Заметка
Если /tmp/ находится на отдельном разделе, не забудьте после монтирования изменить права доступа:
root #chmod 1777 /mnt/gentoo/tmp
Это так же справедливо для /var/tmp.

Позже в инструкции будут смонтированы файловая система proc (виртуальный интерфейс к ядру) и другие псевдофайловые системы ядра. Но сначала мы установим установочные файлы Gentoo.