Mikhail Gusarov <dotted...@altlinux.org> wrote: > > Twas brillig at 00:55:55 12.04.2009 UTC+04 when mano...@altlinux.org did gyre > and gimble: > > PW> А чем переписывание конфига целиком непригодно для формирования > PW> _первоначального_ вида? > > Конфигуратор в этом случае должен отказываться работать (или > предупреждать красными мигающими звучащими аршинными буквами о > перетирании конфига), как только конфиг был изменён по сравнению с тем, > что было нагенерено во избежание опасности потерять ручные изменения, а > он этого сейчас, как я понимаю не делает. >
Сейчас этот вопрос я обсуждаю со Стасом. Не знаю каково будет окончательное решение, но пока я склоняюсь к следующему: 1. решение о перезаписи файла принимается перед запуском сервиса; 2. файл перезаписывается только в том случае, если в конфигураторе включён "режим автоматизированной конфигурации сервиса" (managed mode); 3. в случае перезаписи файла (managed mode on) на консоль выводится предупреждение и сообщается имя файла, куда была сохранена резервная копия); 4. кроме перезаписи файла, для обеспечения "прозрачного" режима прокси, в iptables добавляются нужные правила (только в manage mode); 5. перед остановкой сервиса эти правила удаляются (только в managed mode и при отключении данного режима); 6. пользовательский интерфейс работает в двух режимах: "заглушка" (managed mode off) и "автоматизированное управление конфигурацией сервиса" (managed mode on). В режиме заглушки в модуле доступна всего одна страница на которой (по середине) написано, что сервис прокси-сервера обслуживается в ручном режиме, а для перехода в "автоматизированный режим настройки" нужно нажать на кнопку "включить автоматизированный режим". Кроме этой кнопки на странице может быть кнопка остановки/запуска сервиса. По нажатию этой кнопки сервис просто останавливается/запускается, без каких-либо дополнительных действий. В автоматизированном режиме доступны все кнопки/страницы, а при нажатии на кнопку запуска/перезапуска сервиса, в том случае, если конфигурационный файл был изменён, пользователю сообщается имя резервной копии с оригинальными настройками. Поскольку alterator-services был упразднён, то (если не принимать во внимание какую-нибудь экзотику) сервис может быть запущен только двумя способами: из консоли (service squid start) и через модуль Альтератора. В обоих случаях выводится предупреждение и сообщается имя файла резервной копии. Почему я не хочу обновлять файл только из модуля altertor-squid, при нажатии той же кнопки запуск/перезапуск? Ведь в этом случае можно было бы запросить разрешение как при удалении объекта? Всё дело как раз в необходимости совершать дополнительные действия с iptables. Если админ изменил что-то в конфиге вручную, то нет никакой гарантии того, что правила нужно добавлять/удалять из iptables. Если уж он взялся администрировать Squid вручную, что пусть он делает это полностью, включая iptables. И пока он не отключит managed mode, все его потуги будут аккуратненько копироваться в файл squid.conf.orig-n, о чём ему и будет говориться. Кстати сказать, я планирую по-умолчанию, "first-time", отключать managed mode и в Альтераторе выводить именно "заглушку": пусть администратор явно откажется от ручного управления. Думаю что прочитать сообщение на заглушке и нажать на кнопку не составит труда и для неопытного администратора. Павел. _______________________________________________ devel-conf mailing list devel-conf@lists.altlinux.org https://lists.altlinux.org/mailman/listinfo/devel-conf