Различия между версиями 1 и 3 (по 2 версиям)
Версия 1 от 2008-07-04 21:04:04
Размер: 10245
Редактор: eSyr
Комментарий:
Версия 3 от 2008-07-04 23:12:06
Размер: 12953
Редактор: MaximByshevskiKonopko
Комментарий:
Удаления помечены так. Добавления помечены так.
Строка 3: Строка 3:
Центр управления системой довольно сильно совпадает с тем, что предст. польз. при установке системы. Таким образом убили одного зайца из двух --- не стали писать отдельную логику для инсталлятора

Поскольку содерж имое больш. частью совпадает с установщиком, то ... .
Зачем вообще может быть необходим конфигуратор?
* Минимизация действий при:
 * первоначальной настройке (установке)
 * необходимости правки множества конфигов одновременно
* Удобство настройки "оператором ЭВМ", но не системным администратором, или установка ОС обычным человеком.
В Альт-Линукс (то есть и в ПСПО) конфигуратор по имени Alterator используется как при установке системы, так и при пост-установочной настройке, что сливает задачи написания конфигуратора и инсталлятора в одну.
Можно представить несколько подходов к созданию конфигураторов. Первый --- а-ля debconf --- каждый пакет имеет собственный конфигуратор. Плюс: ни один пакет не останется без конфигурации по-умолчанию (написание оного входит в обязанности мэйнтейнера), минус: заточенность под конкретные программы, а не под задачи. Второй: большая монолитная конструкция, содержащая внутри себя логику всех тех конфигов, которые она может править. Всё хорошо, кроме практически нереальной поддержки всего этого безобразия. Третий (использующийся в Alterator и отчасти в Yast): ввести дополнительные уровни абстракции (по некоторой аналогии с MVC):
* верхняя часть --- создаваемый дизайнером красивый интерфейс для настройки конкретной задачи
* средняя часть --- независимое представление настроек в виде некоей логики
* где-то тут ещё прослойка, которая следит за отсутствием повторяемости объектов настройки в логке (дабы не набивать много раз IP в разных местах)
* нижняя часть --- собственно, редакторы конфигов
Строка 11: Строка 19:
Следующий пункт --- водная лицензия, это ни гпл, ни ... . Это проверенная юристами лицензия, которая улаживает и в том числе проблемы со множествеными лицензиями внутри дистрибутива. Эта бумажка замечательна с точки зрения указания прв, передаваемых пользователям. Эта бумажка снимает очень много юр. вопросов. Следующий пункт --- свободная лицензия (специально написанная). Это проверенная юристами лицензия, которая улаживает и в том числе проблемы со множествеными лицензиями внутри дистрибутива (например, лицензии на некоторые несвободные драйверы). Эта бумажка замечательна с точки зрения указания прв, передаваемых пользователям. Эта бумажка снимает очень много юридических вопросов.
Строка 13: Строка 21:
Системные объекты. Это практически морда-редактор, специфической в альте и ... . Ткнём, например, в сdrecord-classic. В каждом пункте есть переключатель на неск. положений, например, им пользоваться могут только члены cdwriter или только root, аналогично cups может быть сервером или локальным. Если переключиться в конслоь и сказать control, то можно увидеть то же самое. Системные объекты (система control, которая в /etc/control.d/). Это практически морда-редактор, специфической в альте и OWL. Ткнём, например, в сdrecord-classic. В каждом пункте есть переключатель на несколько положений (которые описываются в соответствующем скрипте в /etc/control.d/facilities), например, им пользоваться могут только члены cdwriter или только root, аналогично cups может быть сервером или локальным. Если переключиться в консоль и сказать control, то можно увидеть то же самое.
Строка 15: Строка 23:
Решение пробелмы: предположим, как в случае купса, есть два способа функц. сервера. Предп., вы знете, какие действия произвести над купосм, чтобы привести в одно сост. или другое. Это можно увидеть в /etc/control.d/facilities/cups. Как можно реализовать подобного рода функциональность: написать файл readme. Второй вариант: делаете две группы конфигов, в одном одни настройки, в другом другие. Третий способ --- пишете некий скрипт, который делает то, что написано. Чем последний способ плох --- плох тем, что такую строчку можно и не найти. Как это исправить --- писть вокруг функц., есть там такое, нет там такого. Ещё один способ --- можете измю файл, подложив конфиг. Заархивировать его. Подложить дифф. В случае с разными группами, которые мгут запускать программы, мы всего лишь меняем права файла. Это уже невозможно засунуть в дифф, более того, нельзя сохранить в виде какого-то файла. Разве что шеллскрипт написать, вот это оно и есть. Написан api на шелле, которая реализует эту функц. Это же решает вопрос свёртки множественных действи в атомарное. Это и реализует api control. Когда ГК пошёл работать в альтлинукс, он заставил, чтобы у каждого переключателя была кнопка хелп, теперь это всё достаточно прозрачно. Этот api не полный, например, нельзя задать множ. изменения в файле. Но, тем не менее, довольно много случаев оно покрывает. После сздания альтератора выяснилось, что это имеет довольно приличный вид даже на верхнем уровне. Тем не менее, штука довольно удобная, и позволяет администратору выключать по умолчанию все службы. Мы вполне себе можем позволить закручивать ручки по безопасности, поскольку откручиваются они достаточно просто. Решение пробелмы: предположим, как в случае купса, есть два способа функционирования сервера. Предположим, вы знете, какие действия произвести над купосм, чтобы привести в одно состояние или другое. Это можно увидеть в /etc/control.d/facilities/cups. Как можно реализовать подобного рода функциональность: написать файл readme. Второй вариант: делаете две группы конфигов, в одном одни настройки, в другом другие. Третий способ --- пишете некий скрипт, который делает то, что написано. Чем последний способ плох --- плох тем, что такую строчку можно и не найти. Как это исправить --- писать вокруг функции, есть там такое, нет там такого. Ещё один способ --- можете изменить файл, подложив конфиг. Заархивировать его. Подложить дифф. В случае с разными группами, которые мгут запускать программы, мы всего лишь меняем права файла. Это уже невозможно засунуть в дифф, более того, нельзя сохранить в виде какого-то файла. Разве что шеллскрипт написать, вот это оно и есть. Написан api на шелле, которая реализует эту функции. Это же решает вопрос свёртки множественных действи в атомарное. Это и реализует api control. Когда ГК пошёл работать в альтлинукс, он заставил, чтобы у каждого переключателя была кнопка хелп, теперь это всё достаточно прозрачно. Этот api не полный, например, нельзя задать множественные изменения в файле. Но, тем не менее, довольно много случаев оно покрывает. После создания альтератора выяснилось, что это имеет довольно приличный вид даже на верхнем уровне. Тем не менее, штука довольно удобная, и позволяет администратору выключать по умолчанию все службы. Мы вполне себе можем позволить закручивать ручки по безопасности, поскольку откручиваются они достаточно просто.
Строка 23: Строка 31:
Настройка загрузчика. Что это такое. В лекциях несколько раз говорилось про последовательность загрузки. Речь идёт о установке начального загрузчика, который LI+LO. Загрузчик этот по умолчанию устанавливается в mbr с тем, чтобы загрузчик lilo умел упралвять загрузкой разных ОС сам. Есть там некаях итрость при работе с виндовсом, когда вы это делаете. Когда вы это делаете, вам нужно сжать раздел с виндовсом. Елси вы это делаете с помощью программ проприетарной, то с большой вероятностью всё будет нормально. Если же вы делаете это программой свободной, то возможно, что последовательность загрузки испортитсчя, потому что карта загрузки ntldr поедет. Лечится это просто: перед установкой виндовса нужно создать диск с recovery console и сказать fixboot. Зачем бывает нужно установить загрузчик в раздел диска --- если у вас уже есть многосистемная машина и вы можете настроить загрузку ещё одной ОС, то достаточно поставить lilo в другой раздел, например, в /. После чего надо настроить свой загрузчик, чтобы он загружал ещё и линукс. Настройка загрузчика. Что это такое. В лекциях несколько раз говорилось про последовательность загрузки. Речь идёт о установке начального загрузчика, который LI+LO. Загрузчик этот по умолчанию устанавливается в MBR с тем, чтобы загрузчик lilo умел управлять загрузкой разных ОС сам. Есть там некая хитрость при подготовке системы с двойной загрузкой с Windows. Когда вы это делаете, вам нужно сжать раздел с виндовсом. Если вы это делаете с помощью программы проприетарной, то с большой вероятностью всё будет нормально. Если же вы делаете это программой свободной, то возможно, что последовательность загрузки испортится, потому что карта загрузки ntldr поедет. Лечится это просто: перед установкой виндовса нужно создать диск с recovery console и сказать fixboot. Зачем бывает нужно установить загрузчик в раздел диска --- если у вас уже есть многосистемная машина и вы можете настроить загрузку ещё одной ОС, то достаточно поставить lilo в другой раздел, например, в /. После чего надо настроить свой загрузчик, чтобы он загружал ещё и линукс.
Строка 29: Строка 37:
Часовой пояс. Та же картина, кроме кнопочки "хранить время bios по гринвичу", то есть внутренние часы самого компьютера устанавливают по гринвичу, потому что так устроены так линух-системы. в чём преимущество --- у вас, когда смена зимнего и лентнего времени, то единственное, что надо сделать --- прибавлять не 3 часа, а 4. В отличие от всяких операционные системы, которые считают, что в биосе локальное время. Часовой пояс. Та же картина, кроме кнопочки "хранить время bios по гринвичу", то есть внутренние часы самого компьютера (которые хранит батарейка на материнской плате) устанавливают по гринвичу, потому что так устроены линух-системы. в чём преимущество --- у вас, когда смена зимнего и летнего времени, то единственное, что надо сделать --- прибавлять не 3 часа, а 4 (внутри ОС). В отличие от всяких операционных систем, которые считают, что в биосе локальное время.
Строка 41: Строка 49:
|| 0 || 1 || 1 || 1 || || 1 || MaximByshevskiKonopko, VladimirLysikov || || || || 13 || 1 || 1 || 1 || || 1 || MaximByshevskiKonopko, VladimirLysikov || || ||

Настройка с использованием Центра управления

Зачем вообще может быть необходим конфигуратор? * Минимизация действий при:

  • первоначальной настройке (установке)
  • необходимости правки множества конфигов одновременно

* Удобство настройки "оператором ЭВМ", но не системным администратором, или установка ОС обычным человеком. В Альт-Линукс (то есть и в ПСПО) конфигуратор по имени Alterator используется как при установке системы, так и при пост-установочной настройке, что сливает задачи написания конфигуратора и инсталлятора в одну. Можно представить несколько подходов к созданию конфигураторов. Первый --- а-ля debconf --- каждый пакет имеет собственный конфигуратор. Плюс: ни один пакет не останется без конфигурации по-умолчанию (написание оного входит в обязанности мэйнтейнера), минус: заточенность под конкретные программы, а не под задачи. Второй: большая монолитная конструкция, содержащая внутри себя логику всех тех конфигов, которые она может править. Всё хорошо, кроме практически нереальной поддержки всего этого безобразия. Третий (использующийся в Alterator и отчасти в Yast): ввести дополнительные уровни абстракции (по некоторой аналогии с MVC): * верхняя часть --- создаваемый дизайнером красивый интерфейс для настройки конкретной задачи * средняя часть --- независимое представление настроек в виде некоей логики * где-то тут ещё прослойка, которая следит за отсутствием повторяемости объектов настройки в логке (дабы не набивать много раз IP в разных местах) * нижняя часть --- собственно, редакторы конфигов

Вы видите фронтенд на qt, ... .

Первый пункт скорее информация для администратора.

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

Системные объекты (система control, которая в /etc/control.d/). Это практически морда-редактор, специфической в альте и OWL. Ткнём, например, в сdrecord-classic. В каждом пункте есть переключатель на несколько положений (которые описываются в соответствующем скрипте в /etc/control.d/facilities), например, им пользоваться могут только члены cdwriter или только root, аналогично cups может быть сервером или локальным. Если переключиться в консоль и сказать control, то можно увидеть то же самое.

Решение пробелмы: предположим, как в случае купса, есть два способа функционирования сервера. Предположим, вы знете, какие действия произвести над купосм, чтобы привести в одно состояние или другое. Это можно увидеть в /etc/control.d/facilities/cups. Как можно реализовать подобного рода функциональность: написать файл readme. Второй вариант: делаете две группы конфигов, в одном одни настройки, в другом другие. Третий способ --- пишете некий скрипт, который делает то, что написано. Чем последний способ плох --- плох тем, что такую строчку можно и не найти. Как это исправить --- писать вокруг функции, есть там такое, нет там такого. Ещё один способ --- можете изменить файл, подложив конфиг. Заархивировать его. Подложить дифф. В случае с разными группами, которые мгут запускать программы, мы всего лишь меняем права файла. Это уже невозможно засунуть в дифф, более того, нельзя сохранить в виде какого-то файла. Разве что шеллскрипт написать, вот это оно и есть. Написан api на шелле, которая реализует эту функции. Это же решает вопрос свёртки множественных действи в атомарное. Это и реализует api control. Когда ГК пошёл работать в альтлинукс, он заставил, чтобы у каждого переключателя была кнопка хелп, теперь это всё достаточно прозрачно. Этот api не полный, например, нельзя задать множественные изменения в файле. Но, тем не менее, довольно много случаев оно покрывает. После создания альтератора выяснилось, что это имеет довольно приличный вид даже на верхнем уровне. Тем не менее, штука довольно удобная, и позволяет администратору выключать по умолчанию все службы. Мы вполне себе можем позволить закручивать ручки по безопасности, поскольку откручиваются они достаточно просто.

Лектор наверное не будет рассказывать про все ручки, которые есть. Их можно посмотреть, они достаточно онрмально написны. Из полезного ...

passwdqc-enforce --- проверка качества пароля.

su --- switch user, sudo --- выполнение

Настройка загрузчика. Что это такое. В лекциях несколько раз говорилось про последовательность загрузки. Речь идёт о установке начального загрузчика, который LI+LO. Загрузчик этот по умолчанию устанавливается в MBR с тем, чтобы загрузчик lilo умел управлять загрузкой разных ОС сам. Есть там некая хитрость при подготовке системы с двойной загрузкой с Windows. Когда вы это делаете, вам нужно сжать раздел с виндовсом. Если вы это делаете с помощью программы проприетарной, то с большой вероятностью всё будет нормально. Если же вы делаете это программой свободной, то возможно, что последовательность загрузки испортится, потому что карта загрузки ntldr поедет. Лечится это просто: перед установкой виндовса нужно создать диск с recovery console и сказать fixboot. Зачем бывает нужно установить загрузчик в раздел диска --- если у вас уже есть многосистемная машина и вы можете настроить загрузку ещё одной ОС, то достаточно поставить lilo в другой раздел, например, в /. После чего надо настроить свой загрузчик, чтобы он загружал ещё и линукс.

Экспертный конфигуратор --- конфигуратор lilo. Чем он плох --- надо знать конфиг lilo, чтобы её пользоваться.

Дата и время. Единственне, что надо иметь в виду --- устанавливать автоматически и выбор сервера. Если нет интернет-соединения, то эту кнопочку нажимать не надо, потому что загрузка системы будет таймаут ждать.

Часовой пояс. Та же картина, кроме кнопочки "хранить время bios по гринвичу", то есть внутренние часы самого компьютера (которые хранит батарейка на материнской плате) устанавливают по гринвичу, потому что так устроены линух-системы. в чём преимущество --- у вас, когда смена зимнего и летнего времени, то единственное, что надо сделать --- прибавлять не 3 часа, а 4 (внутри ОС). В отличие от всяких операционных систем, которые считают, что в биосе локальное время.

Системный администратор. Предлагается только задать пароль, можно его сгенерировать. Такой пароль считается надёжным, поскольку его проблемно подобрать, кроме того между ними стоят произвольные символы.

Учётные записи. Мы очень долго друг с другом боролись, как в этом месте написать login name --- системное имя, правда, не отстоял того, чтобы писали полное имя. Общий совет пользоваться этим окном, а не adduser по одной причине --- он добавляется ещё в кучу разных групп.


Сведения о ресурсах

Готовность (%)

Продолжительность (ак. ч.)

Подготовка (календ. ч.)

Полный текст (раб. д.)

Предварительные знания

Level

Maintainer

Start date

End date

13

1

1

1

1

MaximByshevskiKonopko, VladimirLysikov


PspoClasses/080704/03ConfigPractice (последним исправлял пользователь MaximByshevskiKonopko 2008-08-24 22:54:27)