ASPLinux Community
Сообщество пользователей Linux
FAQHCLФорум / ОбщийWikiLinuxStartОткрытки
Google

Руководство по переходу от ASPLinux 7.3 к ASPLinux 9

Автор: Григорий Бакунов

1. Обзор внутренних изменений в дистрибутиве

1.1. Ядро

ASPLinux 7.3 использовал модифицированное ядро 2.4.18, в то время как в версии 9 используется ядро 2.4.20 + 2.4.21pre4-ac4. Также к ядру приложена масса заплаток, реализующих поддержку XFS, расширенную поддержку USB устройств, новую потоковую модель и элементы управления памятью из нестабильной (2.5.x) ветви ядра.

1.2. Новая потоковая модель

Ядро и системные библиотеки ASPLinux9 поддерживают новую потоковую модель NPTL (Native Posix Threads Library), позволяющую ускорить работу многопоточных приложений (например GNOME и KDE). К сожалению введение этой библиотеки ломает совместимость дистрибутива с многими коммерческими приложениями (например со многими приложениями Java, Oracle, Kylix), поэтому введена возможность запустить любое приложение с библиотеками старой потоковой модели.

Для запуска одного приложения в старой потоковой модели перед командой запуска установите переменную окружения

LD_ASSUME_KERNEL=2.2.5
Например вот так:
% LD_ASSUME_KERNEL=2.2.5 kylix

Для отключения NPTL во всей системе передайте ядру параметр nosysinfo.

Сделать это можно двумя способами — вписав вручную при загрузке параметр nosysinfo в строку параметров asploader (Ctrl+S) или вписав слово nosysinfo в файл /etc/aspldr.conf после всех параметров ядра. Например в моем файле записано:

[asplinux2@ASPLinux(2.4.20)]
icon linux
kernel /boot/vmlinuz-2.4.20 root=/dev/hda5 ro nosysinfo

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

/sbin/aspldr

1.3. Система XFree86

В ASPLinux 9 используется XFree86 версии 4.3. Также в дистрибутив включены некоторые драйвера от сторонних фирм-производителей, например NVidia.

Стоит заметить, что изменилось также название модуля ядра для видеокарт NVidia. Теперь модуль называется просто nvidia.o.

При использовании этого модуля и драйвера XFree86, необходимо в файл /etc/modules.conf записать строку alias char-major-195 nvdriver, чтобы при загрузке X Window автоматически загружался модуль ядра.

Конфигурационный файл XFree86 теперь называется /etc/X11/XF86Config, и его формат тоже перетерпел небольшие изменения. Добавились две новые опции в секции Server Flags:

Section ServerFlags

 # Запретить переключение в текстовую консоль
 # CTL-ALT-F1, и т.п.
   Option DontVTSwitch On

 # запретить использование CTL-ALT-Backspace
   Option DontZap On

EndSection

Также изменился формат описания раскладки клавиатуры. Теперь в параметре XkbLayout указывается полный набор предполагаемых раскладок. Например у меня это выглядит так:

Section "InputDevice"

   Identifier  "Keyboard0"
   Driver      "keyboard"
   Option      "XkbRules" "xfree86"
   Option      "XkbModel" "pc105"
   Option      "XkbLayout" "us,ru(winkeys)"
   Option      "XkbOptions" "grp:ctrl_shift_toggle"

EndSection

В программе redhat-config-xfree86 существует ошибка, в результате которой может пострадать указанная вами раскладка клавиатуры. В этом случае просто скопируйте кусок моего файла в секцию с идентификатором Keyboard0.

1.4. Система печати

Начиная с ASPLinux 9 системой печати по умолчанию установлен CUPS. Так как система настройки redhat-config-printer совершенно не умеет настраивать сетевую печать через Internet Printing Protocol (IPP) и не поддерживает Postscript Printer Definition (PPD) рекомендуется воспользоваться программой kprinter. В случае если ваш принтер все же присутствует в redhat-config-printer — лучше воспользоваться именно им.

2. Обзор нововведений

2.1. Таблица программ

Далее приведена таблица новых или измененных программ необходимых для работы системы:

Программа Старое название Пояснение
redhat-config-printer printconf Программа для настройки принтера
redhat-config-xfree86 Xconfigurator Программа для настройки системы XFree86
redhat-config-network rp3, netconfig, netconf Программа для настройки сетевых соединений
redhat-config-date timetool Настройка даты
redhat-config-keyboard keyboardconf Настройка клавиатуры
redhat-config-mouse mouseconf Настройка параметров манипулятора мышь
redhat-config-packages gnorpm, kpackage Установка и удаление пакетов в системе
redhat-config-services ntsysv Настройка параметров загрузки
redhat-config-time timetool Настройка времени и синхронизации
redhat-config-users userconf Система управления пользователями
redhat-config-soundcard sndconfig Настройка устаревших звуковых карт

2.2. Система RPM

Обновленная система RPM 4.2 несколько отличается от привычной по 7.3 системе RPM 4.0.4. Вот краткий список отличий:

  1. Использование команды rpm --build (а также rpm -t, rpm -b и т.п.) для сборки rpm файлов объявлено устаревшим. Вместо этого следует пользоваться командой rpmbuild с теми же параметрами (rpmbuild --rebuild имя_пакета.src.rpm)

  2. Теперь RPM содержит GPG ключ прямо в своей базе данных. Поэтому для проверки корректности GPG подписи пакета необходимо импортировать ключ прямо в базу RPM командой rpm --import GPG-KEY

  3. При построении пакета новая система RPM создает также пакет с отладочной информацией (debuginfo). Это поведение можно отключить вписав в rpmmacros (~/.rpmmacros) строчку

%debug_package %{nil}

2.3. Apache и PHP

И apache и php теперь имеют отдельный каталог для своих модулей. Для PHP это /etc/php.d/, для Apache - /etc/httpd/conf.d/.