Product SiteDocumentation Site

3. Изменения в Fedora для системных администраторов

3.1. Ядро

В Fedora 16 представлено новое ядро Linux 3.1.0. Несмотря на серьезное изменение нумерации версий, кардинальных перемен не произошло. Сам Линус сказал, что об этом не стоит беспокоиться:
 Я просто решил взять быка за рога и назвать следующую версию 3.0. Она выйдет где-то накануне 20-летия, что является достаточным основанием для меня, хотя, если честно, истинная причина в том, что я уже не могу с легкостью досчитать до 40.

3.2. Загрузка

Fedora 16 использует преимущества нескольких новых технологий, делающих процесс загрузки более быстрым, безопасным и эффективным.

3.2.1. Trusted Boot

Trusted Boot (tboot) — свободный предзагрузочный модуль, реализующий технологию Intel® Trusted Execution Technology (Intel® TXT) для проверки достоверности и осмысленного запуска ядра операционной системы или виртуальной машины. Он проверяет системные файлы на предмет изменений и может запретить загрузку системы, предоставляя таким образом мощную защиту от руткитов и другого опасного ПО, пытающегося скрыть свое присутствие. Trusted Boot может быть задействован при установке, а при отсутствии аппаратной поддержки будет производить обычный запуск системы.

3.2.2. Таблицы разделов GPT

Новая разметка дисков

При установке с ручным разбиением могут потребоваться дополнительные действия.
Начиная с Fedora 16, в системах с архитектурой x86 (32- и 64-разрядных) без поддержки EFI установщик будет по умолчанию создавать таблицы разделов GPT вместо таблиц MSDOS. В этих системах для загрузки с дисков с разметкой GPT крайне рекомендуется (хотя не всегда необходимо, в зависимости от BIOS) создать небольшой раздел (1 МиБ) для загрузки BIOS. Этот раздел будет использован в качестве хранилища менеджером загрузки (GRUB2).
При автоматическом разбиении этот раздел будет создан там, где необходимо, автоматически, а пользователю, выбравшему ручной режим, придется создать его самому.
Раздел для загрузки BIOS необходим только в системах архитектуры x86, в которых отсутствует поддержка EFI, и загрузка которых будет производиться с дисков с разметкой GPT.

3.2.3. GRUB 2

GNU Grand Unified Bootloader (GRUB) получил большое обновление в Fedora 16. GRUB 2 более настраиваем, имеет лучшую поддержку архитектур, отличных от x86, а также предоставляет возможность написания сценариев и многоязычный интерфейс. В GRUB 2 сменились файлы настроек, а также их формат — обратитесь к руководству по GRUB за дополнительной информацией.

GRUB нужен пользователь

Anaconda позволяет задать пароль GRUB во время установки. С первым GRUB запрашивался только пароль, с GRUB 2 также запрашивается имя пользователя. Можно использовать root.

3.2.4. Сценарии SysVinit переведены на systemd

В Fedora 15 был представлен systemd, диспетчер служб и сеансов для Linux. С выпуском Verne интеграция с systemd продолжается благодаря преобразованию большого количества сценариев SysV в формат служебных файлов systemd. Как результат, возросли скорость и продуктивность загрузки, и упрощено управление службами.

3.2.5. Больше не поставляется rc.local

Локальный настроечный сценарий /etc/rc.d/rc.local больше не создается по умолчанию. Администраторы, которым нужна эта фукнциональность, просто должны будут создать этот файл, сделать его исполняемым, и он будет запускаться при загрузке.
Это изменение никак не скажется при обновлении с предыдущих выпусков дистрибутива.

3.3. Изменение диапазона UID

Новые диапазоны UID и GID

Значения UID и GID для учетных записей пользователей теперь начинаются с 1000, а не с 500, как в прежних версиях.
В Fedora 16 меняется политика выделения UID и GID: учетные записи пользователей теперь начинаются со значения 1000, а не с 500, как было раньше. Эта политика теперь устанавливается глобально в переменных GID_MIN и UID_MIN в файле /etc/login.defs, см. дополнительные сведения в login.defs(5). При обновлении с прежних выпусков Fedora конфигурация останется неизменной, учетные записи будут начинаться с 500.
Если необходимо установить систему с нуля, но так, чтобы учетные записи пользователей начинались с 500 (для подключения к сети с глобально назначаемыми UID), выполните установку с использованием сценария (kickstart), который перед началом установки пакетов поместит в систему файл /etc/login.defs.

3.4. Виртуализация

3.4.1. Эмуляция USB

  • Добавлена поддержка устройств USB 2.0 (EHCI).

3.4.2. Эмуляция CDROM

  • Внесено множество правок в соответствии со спецификацией ATAPI
  • GET_EVENT_STATUS_NOTIFICATION: Реализована подкоманда «media», позволяющая сообщить об открытии/закрытии привода, а также состоянии наличия/отсутствия в нем носителя. Гостевые системы с поздним Linux (версии 2.6.38+) опираются на эту команду при проверке носителя.
  • Значительный рефакторинг и чистка кода

3.4.3. Безопасность

Пакет qemu-kvm собран с полной поддержкой RELRO и PIE, что усложняет некоторые виды атак. Сборка с этими опциями делает более затруднительным взлом соседствующих виртуальных машин на одном хосте.

3.4.4. Примечание из основной ветви разработки

3.4.5. Xen

  • Поддержка Xen объединена с qemu

3.4.6. x86

  • Стабильная работа счетчика TSC в гостевых системах независима от миграции
  • Учтены особенности процессоров VIA

3.4.7. Общее

  • Устранено несколько утечек памяти во всех виртуальных устройствах ввода-вывода

3.4.8. qemu-img

  • Повышена производительность qemu-img convert
  • qemu-img convert и rebase теперь поддерживают ключ -p, задействующий отображение прогресса

3.4.9. qcow2

  • Улучшена производительность создания/удаления внутренних снимков

3.4.10. Гостевой агент

  • Добавлен гостевой агент, поддерживающий снимки.

3.5. Веб-серверы

httpd обновлен с версии 2.2.17 до версии 2.2.19. Последняя главным образом устраняет проблемы безопасности и ошибки. В этом выпуске также исправлена несовместимость версий в 2.2.18; сообщается, что 2.2.19 восстанавливает совместимость с модулями, собранными с прежними версиями 2.2 (кроме 2.2.18, поддержка которой прекращена).
  • Нарушение ABI в 2.2.18, вызванное изменением сигнатуры функции ap_unescape_url_keep2f(), отменено. В новой версии возвращены сигнатуры из 2.2.17 и более раних, и представлена ap_unescape_url_keep2f_ex().

3.6. Облачные вычисления

3.6.1. Aeolus Conductor

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

3.6.2. Condor Cloud

Condor Cloud — это реализация облачной системы в виде предоставления инфраструктуры как услуги (Iaas). Это дает возможность создавать столько ВМ из образа или нескольких образов, сколько нужно, распределяя их по пулу сконфигурированных узлов. В качестве пользовательского интерфейса — Deltacloud API (http://deltacloud.org). В основе используется Condor (http://www.cs.wisc.edu/condor/), который, в свою очередь, запускает ВМ с помощью libvirt и KVM.

3.6.3. HekaFS

HekaFS 0.7 расширяет набор возможностей GlusterFS функциями коллективной аренды, безопасности и управления.
Для развертывания HekaFS нужно знать, как настраивать ключи и сертификаты OpenSSL для облегчения проверки полномочий на уровнях управления и ввода-вывода.
Сетевое шифрование, а также шифрование устройств хранения являются необязательными, а при использовании приводят к значительным потерям производительности.
Поддержка квот и тарификации для GlusterFS находится в активной разработке и в этом выпуске HekaFS отсутствует.
Расширенные распределение/репликация файлов в локальной системе и репликация в глобальной сети планируются в будущих возможностях HekaFS, но не в этом выпуске.

3.6.4. Matahari

В Fedora 16 представлен Matahari, набор API, доступных через удаленные и локальные интерфейсы, для наблюдения и управления системой. API Matahari доступны посредством коллекции агентов. В Matahari также включена инфраструктура для добавления новых агентов и API.
Доступные агенты:
  • Host — агент для просмотра управления узлами
  • Networking — агент для просмотра и управления сетевыми устройствами
  • Services — агент для просмотра и управления системными службами

3.6.5. pacemaker-cloud

Pacemaker-Cloud обеспечивает высокую доступность служб в виртуальных машинах на одном узле. Эта функция предоставляет оболочку для создания образов виртуальных машин, связывания ресурсов с виртуальными машинами, а также объединения этих образов в развертываемую систему. Развертываемую систему затем можно запустить и отслеживать для обеспечения высокой доступности. В случае сбоев виртуальных машин или приложений эти компоненты будут перезапущены оператором вручную, что снизит среднюю наработку до ремонта и повысит доступность.
Гостевые виртуальные машины с Fedora, использующие systemd, в настоящее время не работоспособны, пока следующая ошибка не будет исправлена в rawhide: см. обсуждение недоработки systemd 702621.

3.7. Серверы баз данных

3.7.1. systemd

MySQL и PostgreSQL обновлены и отныне запускаются при помощи модулей systemd вместо начальных сценариев SysV. Это должно избавить от разных неприятных проблем, возникавших в Fedora 15 из-за слабой поддержки сценариев SysV диспетчером systemd. Также обработка случаев, когда сервер баз данных запускается медленно, теперь значительно лучше, чем была со сценариями SysV, потому как нет причин продолжать работу без ожидания готовности сервера.

3.7.2. PostgreSQL

Действия service postgresql initdb и service postgresql upgrade, которые поддерживались сценариями SysV, невозможны с модулями systemd. Есть отдельный сценарий postgresql-setup, который предоставляет эту функциональность. Например, чтобы создать новую базу данных postgresql, выполните что-то вроде
sudo postgresql-setup initdb
Если вам необходимо запустить более одного сервера postgresql на одной машине, можно продублировать и изменить файл postgresql.service, как это обычно делается со службами systemd. (Помните, что созданные файлы служб следует разместить в /etc/systemd/system, а не в /lib/systemd/system/.) Обратите внимание на то, что параметры PGDATA и PGPORT для дополнительных серверов теперь должны быть указаны в файлах этих служб.
Скопируйте /lib/systemd/postgresl.service в /etc/systemd/myservice.service, установив параметры PGDATA и PGPORT в новом файле. Для настройки запустите
sudo postgresql-setup initdb myservice
После этого postgresql-setup считает параметр PGDATA из файла этой службы вместо postgresql.service.
Файлы в /etc/sysconfig/pgsql/ больше не используются.

3.8. Системные службы

3.8.1. Chrony

В Fedora 16 в качестве сетевого клиента системного времени (NTP) используется диспетчер Chrony. Chrony спроектирован для успешной работы при отсутствии бесперебойного подключения к Интернет (например, на ноутбуках) и способен осуществлять синхронизацию быстрее стандартного ntp. Chrony имеет несколько преимуществ при использовании в виртуальных машинах, так как способен производить корректировки по частоте и более эффективно реагировать на ее частые изменения. Он также занимает меньше системной памяти и экономит циклы центрального процессора, снижая энергопотребление.

3.8.2. Избавление от HAL

Fedora 16 поставляется без диспетчера HAL и его библиотеки libhal, которые были заменены на udisks, upower и libudev. Если какое-либо из приложений затребует libhal, просьба разместить отчет об ошибке этой программы для ее переноса на новую технологию.