[ назад ] [ Содержание ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ вперед ]


The Debian GNU/Linux FAQ
Глава 10 - Пользовательская настройка установленного Debian GNU/Linux


10.1 Как мне удостовериться, что все программы используют одинаковый формат бумаги?

Файл /etc/papersize содержит общее для всей системы название формата бумаги (т.е. letter или A4). Это значение может быть перекрыто переменной окружения PAPERSIZE. Подробности в странице руководства papersize(5).


10.2 Как обеспечить доступ к файлам устройств без нарушения защиты системы?

Многие файлы в каталоге /dev принадлежат предопределенным группам. Например, /dev/fd0 принадлежит группе floppy, а /dev/dsp - группе audio.

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

adduser user group

Это если вы не хотите делать chmod для файла устройств.


10.3 Как по правилам Debian при запуске системы грузить консольный шрифт?

Для этой задачи существуют пакеты kbd и console-tools. Отредактируйте файлы /etc/kbd/config или /etc/console-tools/config.


10.4 Как настроить параметры по умолчанию для приложений X11?

В Debian установка X11 предполагает, что файлы в каталоге /usr/X11R6/lib/X11/app-defaults/ остаются неизменными. Если вы хотите глобально изменить настройки приложения X, то внесите ваши настройки в файл /etc/X11/Xresources. Этот файл считается настроечным, так что его содержимое не будет утрачиваться при обновлениях системы.


10.5 Кажется, каждый дистрибутив имеет собственный способ загрузки. Расскажите, как это устроено в Debian.

Как и все юниксы, Debian загружается выполнением программы init. Настроечный файл для init (который нзывается /etc/inittab) указывает, что первыми должны выполняться сценарии в каталоге /etc/init.d/rcS. Эти сценарии проверяют и монтируют файловые системы, загружают модули, запускают сетевые сервисы, устанавливают часы, производят прочие инициализации и запускают сценарии (исключая те, что имеют `.' в имени файла) в каталоге /etc/rc.boot/. Использование сценариев в последнем каталоге зарезервировано для администраторских задач, и не допускается для пакетов.

По окончаниии процесса загрузки, init выполняет все запускающие сценарии в каталоге, указанном уровнем запуска по умолчанию (этот уровень запуска задается записью id в /etc/inittab). Подобно большинству юниксов, совместимых с System V, Linux имеет 7 уровней запуска:

Системы Debian имеют id=2, что означает, что по умолчанию уровень запуска будет '2' (вход в многопользовательский режим), и будут запущены сценарии в каталоге /etc/rc2.d/.

В действительности, сценарии в любом из этих каталогов, /etc/rcN.d/, - это только символические связи на сценарии в /etc/init.d/. Однако, имена файлов в каждом из каталогов /etc/rcN.d/ выбраны так, чтобы задавать метод выполнения сценариев в /etc/init.d/. А именно, перед переходом на уровень запуска, запускаются все сценарии, начинающиеся с 'K'; эти сценарии останавливают сервисы. Затем начинается выполнение сценариев с именами, начинающимися с буквы 'S'; эти сценарии запускают сервисы. Двузначное число после 'K' или 'S' указывает порядок, в котором запускается сценарий. Первыми выполняются сценарии с меньшими номерами.

Для поддержки этого метода все сценарии в каталоге /etc/init.d/ принимают один из параметров - `start', `stop', `reload', `restart' или `force-reload' - и затем выполняют задачу, определляемую этим параметром. Эти сценарии можно использовать даже после окончания процесса загрузки, чтобы управлять различными процессами.

Например, параметр `reload' в команде

/etc/init.d/sendmail reload

приведет к отправке демону sendmail сигнала перечитать файл настроек.


10.6 Похоже, что Debian не использует для настройки процесса загрузки rc.local; как поддерживается эта функция?

Допустим, системе нужно выполнять сценарий foo при загрузке, или при переключении в какой-либо уровень запуска (System V). В этом случае действия системного администратора такие:

Команда update-rc.d установит связи между каталогами rc?.d и /etc/init.d. Имя каждой связи начинается с букв 'S' или 'K', далее числа и имени сценария. Сценарии, начинающиеся с 'S' в каталоге /etc/rcN.d/, выполняются при входе в уровень запуска N. Сценарии, начинающиеся с 'K', выполняются при выходе с уровня запуска N.

Например, можно выполнять сценарий foo при загрузке, поместив его в /etc/init.d/ и установив необходимые связи командой update-rc.d foo defaults 19. Аргумент 'defaults' относится к уровням запуска со 2 по 5. Аргумент '19' позволяет запускать сценарий foo до сценариев с номерами 20 и выше.


10.7 Как система управления пакетами обрабатывает случаи, когда пакеты содержат настроечные файлы для других пакетов?

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

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


10.8 Как мне использовать вместо программы, установленной каким-либо пакетом, свою собственную?

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

НЕ надо:

Система управления пакетами не будет знать об этих изменениях и при последующих обновлениях или инсталляциях просто заменит /bin/login.

Значит делается так:

Подробности в странице руководства dpkg-divert(8).


10.9 Как включить свой пакет в список доступных пакетов, о которых знает система управления пакетами?

Выполните команду:

dpkg-scanpackages BIN_DIR OVERRIDE_FILE [PATHPREFIX] > my_Packages

где:

после построения файла my_Packages, сообщите системе управления пакетами о новых пакетах командой:

dpkg --merge-avail my_Packages

10.10 Некоторым пользователям нравится mawk, другим - gawk; некоторым - vim, другим - elvis; некоторым - trn, другим - tin; как осуществялется поддержка предпочтений в Debian?

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

Debian использует систему "виртуальных" пакетов для того, чтобы системные администраторы (или их пользователи) могли выбирать между несколькими пакетами с одинаковой функциональностью более-менее независимо от требований других пакетов.

Например, в системе может существовать две различные версии читалок новостей. Пакет сервера новостей может 'рекомендовать', чтобы в системе была установлена некая читалка новостей, но выбор, какая именно - tin или trn, остается за конкретным пользователем. Решается это созданием виртуального пакета news-reader, который предоставляется пакетами tin и trn. Какая из этих программ является читалкой новостей можно определить с помощью символической связи /etc/alternatives/news-reader на выбранный файл, т.е., скажем это /usr/bin/trn.

Просто создания символической связи недостаточно для полного решения задачи использования альтернативной программы; также должны выбираться страницы руководства, возможные программы поддержки. Сценарий Perl update-alternatives берет на себя все, что необходимо сделать для создания необходимых связей между ресурсами системы.

Например, чтобы проверить, какие программы реализуют `x-window-manager', выполните:

update-alternatives --display x-window-manager

Если вы хотите что-то изменить:

update-alternatives --config x-window-manager

И следуйте инструкциям на экране (в основном, приходится выбирать номер желаемой программы в меню).

Если пакет по каким-либо причинам не зарегистрировал себя как оконный менеджер (ошибки в файле), или если вы используете менеджер из каталога /usr/local, тогда на экране вы не увидите предпочитаемой вами программы. Вы можете обновить связь командой:

update-alternatives --install /usr/bin/x-window-manager \ x-window-manager /usr/local/bin/wmaker-cvs 50

Первый аргумент в опции `--install' - это символическая связь, которая указывает на /etc/alternatives/ИМЯ, где ИМЯ - это второй аргумент. Третий аргумент - это программа, на которую должна указывать /etc/alternatives/ИМЯ, и четвертый аргумент - приоритет (чем больше это значение, тем выше приоритет).

Чтобы удалить добавленный вами вариант, просто выполните:

update-alternatives --remove x-window-manager /usr/local/bin/wmaker-cvs

[ назад ] [ Содержание ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ вперед ]


The Debian GNU/Linux FAQ

версия 4.0.3, 26 June 2008

Авторы, раздел 15.1