Главная » Статьи » Не для нубов | [ Добавить статью ] |
Настройка системы
Нижеперечисленные конфигурационные файлы - основные в Arch Linux. Вы должны
без проблем редактировать вручную эти файлы, потому что не существует
каких-либо GUI программ, которые могли бы помочь вам. В этом списке большинство
основных конфигурационных файлов. Если вам нужна помощь в настройке
специфического сервиса, пожалуйста читайте соответствующую man-страницу или
любую другую документацию в инете. Во многих случаях, Archlinux Wiki и форумы -
богатый источник для поиска помощи. Arch Linux не использует никаких уровней абстракции для администрирования
вашей системы. Как результат, вы обычно следуете инструкциям опубликованным
автором программного обеспечения, или то что вы находите в поисковике, и это
будет работать без замусоривания системы, так как системе не наплевать на это. Конфигурационные файлы
Перед попыткой загрузки свежеустановленной системы, вы должны в последний
раз взглянуть на эти файлы, чтобы убедиться все ли там правильно записано.
/etc/rc.conf
Это основной конфигурационный файл в Arch Linux. Он позволяет настроить
клавиатуру, часовой пояс, имя машины, сеть и демоны и модули, профили и другое.
Вы должны просмотреть все настройки в этом файле и убедиться что вы их
понимаете: LOCALE Это установит системный язык,
который будет использоваться всеми i18n-совместимыми приложениями и утилитами.
Смотрите ниже locale.gen для доступных опций. Вы можете получить список всех
доступных локалей выполнив locale -a из командной строки. Настройки по
умолчанию подходят для англоязычных пользователей. HARDWARECLOCK Введите UTC если ваши часы
BIOS установлены по UTC или GMT, или localtime если часы BIOS поставлены
по местому времени. Если у вас установлена OS которая не может управлять UTC
BIOS временем правильно, например Windows, в этом случае выберете localtime, в
противном случае предпочтите UTC, что решает проблему декретного времени и
имеет другие положительные функции. TIMEZONE Описывает ваш часавой пояс.
Возможные часовые пояса это путь к файлу zoneinfo находящийся в дериктории
/usr/share/zoneinfo. Например, немецкий часовой пояс может быть Europe/Berlin,
который относиться к файлу /usr/share/zoneinfo/Europe/Berlin. Если вы не знаете
точное название вашего часового пояся, не слишком беспокойтесь об этом. Команда
tzselect может найти правильный часовой пояс за вас. KEYMAP Определяет keymap(раскладку
клавиатуры) которая грузиться программой loadkeys при загрузке. Возможные
keymaps находятся в /usr/share/kbd/keymaps. Пожалуйста учтите что, эти
настройки годны только для ваших TTYs(консоли), но не менеджера окон или X.
Опять же для англоязычных пользователей стандартные настройки замечательны. CONSOLEFONT Определяет какой консольный шрифт
загружается программой setfont при загрузке. Возможные шрифты находятся в
/usr/share/kbd/consolefonts. CONSOLEMAP Определяет загрузку console map
программой setfont при загрузке. Возможные maps находятся в
/usr/share/kbd/consoletrans. Вы захотите это установить в карту(map) подходящей
вам локали(напрмер 8859-1 для Latin1) если вы используете локаль utf8, и
используете программы генерирующие 8-bit вывод. Если вы используете X11 для
каждодневной работы, не беспокойтесь, так как это повлияет на консольные
программы. USECOLOR Включить (yes) или
выключить (no) цветные сообщения при загрузке. MOD_AUTOLOAD Если установить "YES",
Arch будет сканировать жесткий диск и пытаться автоматически загружать
соответствующие модули для вашей системы. Это делается при помощи hwdetect утилиты.
MOD_BLACKLIST Это список модулей которые бы вы
хотели запретить загружать при старте системы. Например, если вы не хотите
слышать раздражающий спикер, вы можете добавить модуль pcspkr в MOD_BLACKLIST. MODULES В этой строке вы можете отметить
модули, которые вы бы хотели загружать при старте системы без необходимости
привязывать их (модули) к оборудованию как это делается в modprobe.conf (или
modules.conf, если вы исрользуете ядро серии 2.4.x). Просто добавьте сюда
название модуля, и если необходимо пропишите нужные опции в modprobe.conf.
Модуль помеченный знаком ('!') не будет запускается при загрузке системы (это
не тоже самое что и MOD_BLACKLIST), это позволяет закомментировать определенные
модули, если необходимо. Определенная выгода сетевых модулей, здесь то что
сетевые карты запрещенные закомментированными модулями будет всегда
обнаруживаться в том порядке как записаны модули. Это позволяет избежать
ужасной путаницы, когда ваше сетевое оборудование назначается на как-будто
случайные интерфейсы после каждой перезагрузки. Гораздо луче путь обработать
это используя статичные метки интерфейса, соответственно настроив udev. USELVM Поставтье "YES" для
запуска vgchange во время sysinit, Это активирует любые группы LVM. Если вы не
имеете понятия что это значит, значит это вам не нужно. HOSTNAME Установит hostname(имя машины),
без домена. Это полностью ваш выбор, т.к вы можете составлять из букв, цифр
некоторых символов например черточки. Не выпендривайтесь, придумывая имя
компьютера. INTERFACES Здесь вы определяете настройки
для ваших сетевых интерфейсов. Примеры и включенные комментарии описывают
настройку достаточно полно. Если вы не пользуетесь DHCP, просто имейте ввиду,
что значение переменной (чье имя должно быть эквивалентно имени настраиваемого
устройства) определяет строку, которая будет добавлена к команде ifconfig,
также как вы настраиваете устройство вручную в шелле. ROUTES ВЫ можете здесь прописать ваш
статичный шлюз с нужным именем. Посмотрите, например, для шлюза по умолчанию,
чтобы понять что к чему. Обычно указанная часть просто передается команде route
add, поэтому рекомендуется чтение man route если вы не знаете что здесь
прописывать или просто оставьте как есть. NET_PROFILES включить определенные сетевые
профили во время загрузки. Сетевые профили предоставляют удобный путь
управлением несколькими сетевыми конфигурациями, и предназначены для замены
стандартной настройки INTERFACES/ROUTES которая все же рекомендуется для систем
столько одной сетевой конфигурацией. Если ваш компьютер будет работать в разных
сетях в разное время (например ноутбук) вы должны посмотреть в директорию
/etc/network-profiles для настройки некоторых профилей. Шаблон файла включен и
можно использоваться для создания новых профилей. DAEMONS Это просто список скриптов,
которые содержаться в /etc/rc.d/ которые скорее всего будут запущены при
загрузке системы. Если перед названием скрипта стоит знак (!), он не будет
выполнятся. Если перед скриптом стоит "at" символ (@), тогда скрипт будет
выполнятся в фоне (,стартовый скрипт не будет ждать успешного завершения, перед
запуском следующего). Обычно вам не нужно менять настройки по умолчанию для
старта системы, но вы будете редактировать этот файл достаточно часто, если вы
установите сервисы наподобие sshd. В основном у Arch's такой путь, обрабатывать
то что другие обрабатывают при помощи разных симлинков на директорию init.d. /boot/grub/menu.lst
GRUB - загрузчик по умолчанию в Arch Linux. Если вы хотите использовать
GRUB, вы должны проверить и отредактировать этот файл, настроив нужные
загрузочные параметры, в противном случае читайте настройку LILO. Убедитесь, что вы внимательно прочитали о проблеме PATA, описанной в разделе
про fstab. Конфигурация GRUB очень проста. Наибольшее препятствие состоит в том, что он
использует другую схему имен устройств, отличную от /dev; Ваши жесткие диски в
целом представлены как (hd0), (hd1), и т.д., в последовательности пронумерованы
в порядке появления IDE/SCSI шины, как hda, hdb, и т.д. имена в Linux. Разделы
диска названы как (hd0,0), (hd0,1) и так далее, 0 обозначает первый раздел.
Несколько примеров включены в стандартный menu.lst для понимания сути. Как только вы поняли концепцию наименования устройств, все что вам надо
сделать - это выбрать красивый title(заголовок) для вашего загрузочной
секции(й), поставьте на корневой раздел опцию root, чтобы он был смонтирован
как / при загрузке. , и создайте строку kernel с разделом, где расположено
ядро, и полным путем, а также любые параметры загрузки. Если используете the
stock Arch 2.6.x ядро, вам также необходима строка с initrd, которая указывает
на файл initrd26.img в вашей директории /boot. Путь, который вы указали в
строке initrd, должен быть такой же, как путь к vmlinuz26, который вы прописали
в строке kernel. Вы скорее всего будете довольны стандартными настройками,
просто проверьте правильность данных в строчках root и kernel особенно в
отношении проблемы pata! . Для написания опций загрузки, которые загружают бутсектор другой OS, этот
пример может быть весьма полезным. Вы скорее всего успешно запустите любую
операционную систему от Microsoft, только добавьте этот блок в файл после любых
других секций, и исправьте раздел на тот который содержит бутсектор
операционной системы, которую вы хотите загружать. # (1) Other OS
Для расширенной настройки других ОС, пожалуйста обратитесь в руководство GRUB.
После проверки конфигурации загрузчика на предмет корректности, появится
запрос на выбор раздела для его установки. Если вы не используете еще другой
загрузчик, вам надо установить GRUB в MBR этого диска, который обычно
представляется соответствующим именем устройства, без цифровых суффиксов. /etc/lilo.conf
Это конфигурационный файл загрузчика LILO. Убедитесь, что вы проверили этот
файл, если хотите использовать lilo для загрузки системы. См. документацию
LILO. Вы должны проверить: строки с root= в секции образа и строку с boot= в
начале файла. Строки со словом root указывают устройство с корневой файловой
системой. Если вы не знаете, что писать, переключитесь в другой терминал и
выполните команду mount, чтобы увидеть смонтированные устройства. Найдите
строку вида <имя устройства> mounted on /mnt type [...]. Имя устройства -
это то, что вам нужно написать после root= в lilo.conf. Строку boot= в большинстве случаев менять не нужно. Эта строка должна быть
такой же как и root=, но без номера раздела в конце. Например, если
root=/dev/hda3 и вы хотите установить LILO в MBR, вы должны установить
boot=/dev/hda. Если у вас установлена другая система, вам следует убедиться в
возможности восстановления ее boot-сектора (например утилиты FIXBOOT/FIXMBR в
windows) Для надежности оставьте опцию lba32 после строки prompt. Это поможет
избежать проблем с геометрией диска. В некоторых случаях (в зависимости от вашего BIOS), LILO не будет работать
бесконечно выводя код ошибки. Скорее всего это означает, что вы убрали опцию
lba32, или у вас какая-то особенная конфигурация оборудования (например CD-ROM
установлен как primary master, а жесткий диск как secondary slave. Поставьте
ваш жесткий диск как primary master на шине IDE. В случае наличия IDE и SCSI,
вам скорее всего придется поэкспериментировать, чтобы узнать номер BIOS. BIOS
нумерует диски последовательно, начиная с 0x80. Если вам повезет, SCSI скажет
вам BIOS ID своих устройств, но обычно он этого не делает. Обычно вы можете
только гадать, как BIOS пронумеровал диски. Обычно это выглядит так: boot=/dev/hda
Опция disk сопоставляет BIOS ID с названием устройства понятным для linux.
Если все пойдет совсем плохо, вы можете попробовать GRUB вместо LILO. Как восстановить бутсектор LILO с помощью rescue-диска описано ниже. /etc/mkinitcpio.conf
Этот файл позволит вам настроить initial ramdisk (также упоминаемый как
"initrd") для вашей системы. initrd - это сжатый образ, читаемый
ядром во время загрузки. Цель initrd состоит в том, чтобы загрузить систему до
того момента, когда она уже может иметь доступ к root filesystem. Это означает,
что ему нужно загрузить любые модули, нужные для того, чтобы
"увидеть" устройства, такие как IDE, SCSI, или SATA (или USB/FW, если
вы загружаетесь от USB/FW устройства). Как только initrd загрузило нужные
модули, само или через udev, оно передает контроль к Arch системе и загрузка
продолжается. По этой причине initrd может содержать только те модули, которые
необходимы к доступу корневой файловой системы. Не обязательно иметь каждый
модуль, который вы захотите когда-нибудь использовать. Большинство
частоиспользуемых модулей будут загружены позже при помощи udev при загрузке. По умолчанию, mkinitcpio.conf сконфигурирован и обеспечивает всеми
известными модулями для IDE, SCSI, или SATA систем через так называемые HOOKS.
Это значит умолчальное initrd должно работать почти у всех. Обратная сторона
этого, что грузится много модулей которые вам совсем не нужны. Это легко видно,
смотря на список модулей после загрузки (командой lsmod). Ничего плохого
фактически в этом нет, однако некоторые люди этим не довольны. Уменьшить этот
список, оставив только то что нужно, вы можете путем правки mkinitcpio.conf и
отключив подсистемы HOOKS (такие как IDE, SCSI, RAID, USB и.т.д) которые вам не
нужны. Вы можете настроить еще больше, определяя точные модули, нужные вам в строке
MODULES и удалить не нужные hooks, но внимательно прочитайте комментарии ы этом
файле, т.к это чувствительный файл к необдуманным изменениям! Если вы используете RAID или шифровку на вашей корневой файловой системе,
тогда вам надо подкорректировать настройки RAID/CRYPT near the bottom. Смотрите
страницы wiki для RAID/LVM, filesystem encryption, и mkinitcpio для
подробностей. Когда закончите настраивать mkinitcpio.conf, вы должны запустить mkinitcpio
-p kernel26 от пользователя root для регенерации образа, если вы уже
устанавливаете систему; В этом случае этот шаг будет сделан автоматически,
после того, когда вы выберете Установка Ядра немного позже в процессе
установки. Предупреждение: если вы настроите неправильно свой mkinitcpio.conf, система
не загрузиться! По этой причине, вы должны быть предельно осторожными при
настройке этого файла. Если вы умудрились сделать систему не способной к загрузке, вы можете
использовать аварийный образ (fallback image) который установлен параллельно
основному ядру. По умолчанию в GRUB и LILO эта опция включена.
/etc/hosts
В этом файле вы можете задать жесткую связь между IP и именем компьютеров в
сети. Если имени компьютера нет в DNS, вы можете добавить его сюда. Обычно не
нужно ничего менять, но возможно вы захотите добавить hostname и hostname +
domain машины в этот файл для получения IP вашего сетевого интерфейса по имени.
Если вы не знаете, что тут сделать, оставьте этот файл в покое, пока не
прочитаете man hosts. /etc/fstab
Здесь устанавливаются точки монтирования и файловые системы. Инсталятор
должен создать нужные записи за вас, но вам следует взглянуть в этот файл и
убедиться что все правильно, в особенности если вы используете шифрованный рут
раздел, LVM или RAID. С ядром 2.6.20 было введено изменение, относящиеся к подсистеме ATA/IDE.
Новые pata (Parallel ATA) драйвера заменяют старую подсистему IDE, и одно
важное изменение состоит в том, что схема имен для IDE дисков изменилась со
старых (hda, hdb и т.д.) на новые имена устройств (sda, sdb и т.д.) так же, как
обозначаются устройства SCSI и SATA. Из за этого, когда используется новый pata
драйвер в HOOKS файла /etc/mkinitcpio.conf, не забудьте использовать
соответствующие имена устройств в /etc/fstab и конфиге загрузчика! Или, вы
можете использовать /dev/disk/by-uuid/... или /dev/disk/by-label/...
обозначения ваших жестких дисков, где можно быть абсолютно уверенным, что вы
обращаетесть к правильному разделу, и оградите себя от проблем разновидности
названий, вне зависимости используете ли вы sda или hda. Если это не вариант,
вот - краткое изложение; Если вы используете pata вместо ide в строке HOOKS
файла /etc/mkinitcpio.conf, вы будете использовать sd? названия. Если нет,
тогда названия старого стиля hd?. Поэтому важно проверить строку HOOKS файла
/etc/mkinitcpio.conf, чтобы была возможность адаптировать другие файлы
соответственно. /etc/modprobe.conf
Этот файл определяет какой модуль следует загружать ядру для оборудования, и
какие опции устанавливать. Например, автоматически загрузить драйвер сетевой
карты Realtek 8139 для eth0 (при попытке настройки eth0), напишите такую
строчку: alias eth0 8139too Синтаксис файла похож на старый modules.conf, только без экзотических опций
типа post-install. Теперь вы можете полистать man modprobe.conf. Большинству людей не понадобиться редактировать этот файл. /etc/modules.conf (устарел)
Этот файл нужен только для ядер 2.4.x. Он указывает ядру какой модуль для какого устройства нужно загрузить.
Например для того, чтобы автоматически загрузить драйвер сетевой карты Realtek
8139 для eth0 (при попытке настройки eth0), напишите такую строчку: alias eth0 8139too
/etc/resolv.conf
Используйте этот файл для указания серверов DNS, которые вы будете
использовать. Обычно он выглядит так: search domain.tld Замените domain.tld и ip-адреса на ваш домен и адреса ваших dns-серверов.
Домен - это так называемый домен поиска по умолчанию, который будет добавляться
к именам компьютеров. Установив его, ping myhost будет преобразован в ping
myhost.domain.tld. Настройка домена поиска обычно не очень важна и лишь упрощает
использование имен компьютеров. (Доменов в списке поиска может быть несколько)
Если вы используете DHCP, этот файл будет получен от DHCP сервера автоматически
во время старта сетевого интерфейса, что означает, что вы можете игнорировать
этот файл целиком. (См. man resolv.conf) /etc/locale.gen/
Этот файл содержит список всех поддерживаемых локалей и кодировок,которые
вам доступны. При выборе LOCALE в /etc/rc.conf или когда запускается программа,
требуется разкомментировать нужные локали в этом файле, чтобы сделать доступные
бинарные версии для системы, и запустить команду locale-gen от рута для
генерации всех раскомментированых локалей и переместить их надлежащие места. Вы
должны снять # со всех локалей, которыми вы намереваетесь пользоваться. Во время установки, вам не надо запускать вручную locale-gen, об этом
позаботятся автоматически, после сохранения изменений в этом файле. По умолчанию, все локали закомментированы, включая локаль по умолчанию
en_US.utf8, отсылая в файл /etc/rc.conf. Для гладкой работы системы, вы должны
править этот файл и снять # по меньшей мере с одной локали, используемой в
вашем rc.conf. /etc/conf.d/*
В момент установки эти файлы совершенно не важны. Некоторые стартовые (rc) скрипты демонов используют эту директорию для
хранения некоторых значений по умолчанию. Когда вы запускаете демона, скрипт
сначала подключит файл из этой директории (при помощи source, см. man bash), а
затем и /etc/rc.conf. Это означает, что вы можете централизовано хранить
некоторые параметры демонов в rc.conf, просто добавив туда переменную с
подходящим значением, или разделить вашу конфигурацию на несколько файлов, если
вам так удобнее. Не правда ли жизнь была бы прекрасна, если бы все так просто
скриптовалось? /etc/profile
Этот скрипт выполняется при каждом входе пользователя в систему. В Arch
Linux он довольно простой. Возможно вы захотите его поправить, например для
добавления глобальных переменных окружения. Загрузочные скрипты
Arch Linux использует довольно простую загрузочную последовательность
похожую на *BSDs. Первый загрузочный скрипт это /etc/rc.sysinit. Когда он
запущен, далее запуститься /etc/rc.multi (при нормальной загрузке). Последним
запускается скрипт /etc/rc.local. Когда запустился runlevel 1,
однопользовательский режим, скрипт /etc/rc.single выполняется вместо
/etc/rc.multi. Вы не найдете нескончаемую коллекцию симлинков в директориях
/etc/rc.d/ для определения всех возможных режимов начальной загрузки. На самом
деле, из-из этого метода на самом деле Arch имеет только 3 режима (runlevels),
если во внимание запуск X в 5-м уровне запуска. Загрузочные скрипты используют
переменные и значения, найденные в файле /etc/rc.conf, а также набор основных
функций, определённых в скрипте /etc/rc.d/functions. If you plan to write your own daemon files, you
should consider having a look at this file and existing daemon scripts. Обзор загрузочных скриптов
/etc/rc.sysinit
Основной системный загрузочный скрипт. Он совершает критичные для загрузки
процедуры, такие как монтирование файловых систем, запуск devfsd, активизация
свопа, загрузка модулей, установка параметров локализации, и т.д. Скорее всего
вы никогда не будеет редактировать этот файл! /etc/rc.single
Однопользовательский скрипт. Не используется при нормальной загрузке. Если
система запускается в однопользовательском режиме, например с параметром ядра 1
до загрузки или во время нормальной много-пользовательской загрузки с командой
init 1, этот скрипт проверяет, чтобы не было запущено демонов, кроме
необходимого минимума - syslog-ng и udev. Однопользовательский режим полезен, если вам
надо сделать изменения в системе, while making sure that no remote
user can do anything that might cause data loss or damage. Для домашних пользователей этот режим обычно бесполезен как и crud. Возможно
вам никогда не понадобится править этот скрипт. /etc/rc.multi
Многопользовательский загрузочный скрипт. Он запускает все демоны
сконфигурированные вами в строке DAEMONS (устанавливается в /etc/rc.conf) после
чего он вызывает /etc/rc.local. Вы не должны чувствовать потребности в
редактировании этого файла. /etc/rc.local
Локальный многопользовательский загрузочный скрипт. Это хорошее место чтобы
поместить сюда любые команды которые вы хотите запускались бы в конце загрузки
системы. Это один и единственный скрипт, который вы должны править при необходимости,
и вы имеете полную свободу, что добавлять в этот скрипт. Большинство обычных задач системной конфигурации, такие как загрузка
модулей, изменение консольного шрифта или установке устройства, обычно имеют
специальное место где они располагаются. Чтобы избежать беспорядка, вы должны
убедиться в том, что намерены добавить в свой rc.local, не чувствуйте себя как
дома в /etc/profile.d/ или любом другом уже созданном месте расположения
конфигураций. /etc/rc.shutdown
Системный скрипт выключения. Он останавливает демонов, отмонтирует файловые
системы, деактивирует своп и т.д. Просто не трогайте этот файл. /etc/rc.d/*
Эта директория содержит скрипты демонов ссылающиеся с строки DAEMONS файла
rc.conf. В дополнение к вызыванию при загрузке, вы можете использовать эти
скрипты когда система работает, для управления сервисами вашей системы.
Например команда # /etc/rc.d/postfix stop остановит демона postfix. Конечно скрипт существует только когда
соответствующий пакет установлен(в этом случае postfix). При установленной
базовой системе, здесь мало скриптов, но будьте уверены что все существующие
скрипты демонов живут здесь. Эта директория больше похожа на /etc/rc3.d/ или
/etc/init.d/ директории других дистрибутивов, без всяких хлопот с симлинками. Управление пользователями
Пользователи и группы могут быть добавлены/удалены с помощью стандартных
команд из пакета util-linux: useradd, userdel, groupadd, groupdel, passwd, and
gpasswd. Обычно добавляют пользователей так: # useradd -m -s /bin/bash vasya Первая команда добавит пользователя vasya, сделав ему домашнюю директорию
/home/vasya и поместит туда некоторые файлы из каталога /etc/skel. Команда
также задаст шелл по умолчанию /bin/bash. Вторая команда попросит поменять
пароль для пользователя vasya. Задание пароль необходимо для активации учетной
записи. Альтернатива команде useradd - скрипт adduser который создает пользователя
интерактивно спрашивая у вас нужную информацию. См man-страницы для более полной информации. Хорошая идея создать
пользователей для повседневных нужд наилучшим образом использовав средства
разграничения доступа и сведя к минимуму риск случайного удаления файлов при
входе в систему пользователем root. Никогда не входите в систему пользователем root. Используйте команды su или
sudo. (См. man su, man sudo) | |
Просмотров: 3536 | |
Всего комментариев: 0 | |
Операционные Системы
[61]
ОС Open Source
|
Мобильный Linux [26] |
Сравнение ОС [7] |
Статьи о Linux [16] |
Свободное ПО [10] |
Програмирование [6] |
Не для нубов [5] |
Ядро [13] |
Хранилище данных [9] |
Устройства [1] |
Установка/конфигурирование/планиров [16] |
Файловые системы [3] |
Управление, основанное на политиках [1] |
Управление инфраструктурой [0] |
Серверы [5] |
Биографии [6] |
Прочее [25] |