Portage --update world для лентяев. Как быть с необходимостью пересматривать и править конфигурационные файлы?
В общем тема: не секрет что после обновления пакета может понадобится обновление конфига для этого пакета (ну что-то же в пакет нового добавили). Но может быть случай что настройка самого пакета происходила месяц-два-три назад и уже все ньюансы конфигурирования не помнятся, хорошо когда в etc-update узнаешь свои строки и их оставляешь, а те что не трогал принимаешь как новые (но сам etc-update такого делать не разрешает он показывает максимум в чем разница, а править приходится потом самому). Моя идея следующая - найти (ибо я думаю что не первый к такому выводу пришел, а Gentoo уже десять лет как исполнилось) пакет который будет сам принимать изменения конфигов пакетов. Что для этого нужно: оригинальный "старый" конфиг, недоконфиг с моими настройками (указать только те параметры который я собираюсь использовать если они отличаются от "заводских"), и сообственно "новый" конфиг. Итак суть программы - она должна помочь пользователю создать из оригинального конфига и недоконфига файл настрок который и будет положен в /etc, затем после обновления должна выловить новый оригинальный конфиг, и те строки которые есть в оригинальном "новом", но нет в "старом" и недоконфиге автоматом дописать к /etc-файлу, те строки которые совпадают в /etc-файле и в оригинальном "старом" конфиге, но в "новом" там уже что-то другое автоматом применить к /etc-файлу, а на те которые не совпадают в недоконфиге и "новом" - задать 1000 и 1 вопрос для каждой строки или просто вывести разницу в файлах.
Прошу помочь найти похожий функционал.
- Для комментирования войдите или зарегистрируйтесь
Не знаю, насколько это всё
Не знаю, насколько это всё будет востребовано. Одна из причин, по которой я давным-давно перешёл на Linux — это возможность думать и самому принимать решения при настройке компьютера.
В etc-update, которым я пользуюсь, есть режим интерактивного сравнения нового и старого файлов, мне хватает.
Чтобы вспомнить, что я правил в конфигурационных файлах пару, а то и более, месяцев назад, я использую комментарии.
P.S. Всё это IMHO, разумеется.
Я ♥ Gentoo & Funtoo
В принципе согласен.
Просто охота один раз толково настроить и потом уже не вспоминать. И такой вариант есть - просто не обновляться, но хочеться идти в ногу со временем.
Один раз настроить и забыть,
Один раз настроить и забыть, скорее всего не получится — всё течёт, всё меняется. Стоит хотя бы вспомнить переход с первого на второй baselayout.
Я ♥ Gentoo & Funtoo
Аналоги etc-update
Насколько я помню Linux славится своим разнообразием и альтернативами.
Не подскажете программы похожие на etc-update?
app-portage/cfg-update app-po
app-portage/cfg-update
app-portage/conf-update
app-portage/etc-proposals
Ну и dispatch-conf из sys-apps/portage.
Почитайте описания пакетов из категории /usr/portage/app-portage/ — возможно, «велосипед уже изобретён» :)
Я ♥ Gentoo & Funtoo
Lupo Alberto написал(а): В
+ местами бывает полезен
CONFIG_PROTECT
вmake.conf
.:wq
--
Live free or die
vimdiff
etc-update у меня использует vimdiff, так что при обновлении все изменения легко переносятся в новый конфиг
Спасибо.
Всем спасибо за помощь.. буду присматриватся что мне подойдет.
NFS_Daemon написал(а): она
Во обще по-теории самый правильный вариант - это когда обновляемая программа, сама обновляет конфиг без всяких etc-update.
Но что бы такое реализовать надо переписать кучу софта :)
Working on Gentoo Linux for Asus P535 and Qtopia :-)
Вот точно.
Жаль что в виндовый приложениях такая практика чаще встречается. Но ничего - было бы просто не было бы так интересно :).
.
Именно что по теории...
На практике же даже если старый конфиг полностью работоспособен с новой версией бывает не лишним периодически его пересматривать.
По себе (на примере
bind
'а) знаю.:wq
--
Live free or die
А меня однажды openssh обрадовал после обновления.
Обновился дома, подключение не проверял. А уже из мира - только логин спрашивает и сессия рвется, обновил конфиг и все заработало, первый опыт, теперь знаю об этом деле.
Посмотри в сторону
Посмотри в сторону dispatch-conf. Не панацея конечно, но мне понравился больше, чем etc-update. Больше половины конфигов сам исправляет, а если лезет в конфиг, который я правил - то тогда только ручками (kdiff/meld тебе в помошь, ну или vim/nano/mcedit в консоли)
Возможно разумным будет
Возможно разумным будет автоматически обновлять те конфиги к которым пользователь не прикасался... Вот только механизм выяснения "неприкосновения" надо продумать
Насколько я понял,
Насколько я понял, dispatch-conf это уже умеет, правда не всегда корректно отрбатывает. По крайней мере он показывает меньшее количество конфигов для изменения, чем etc-update. Но все равно иногда проскакивают конфиги, которые я точно не менял. Могу ошибаться, т.к. глубоко я не копался
.
Хотя и
etc-update
(или это не он?) имеет свойство втихую переписывать конфиги, которые трогать не надо...:wq
--
Live free or die
В тихую он переписывает
В тихую он переписывает только коментарии в конфигах насколько я понимаю. точнее только конфиги в которых сменились только коментарии. Хотя могу ошибаться
Использую dispatch-conf. В
Использую dispatch-conf. В принципе все просто и удобно.
Некоторое время назад было что-то невообразимое просто, например обновился vsftpd - со старым конфигом отваливается, syslog-ng при обновлении со 2-ой версии на 3-ю и т.п. Было очень муторно все это разгребать - сейчас многое устаканилось.
Но даже сейчас все важные конфиги я пересматриваю вручную, прежде чем "склеить" его с новым или использовать старый. Просто сейчас чаще всего стали меняться комментарии в конфигах, нежели что-то важное.
В основном надо знать "свои" приложения (например vsftpd cups lighttpd и т.д.) и беспокоиться только за них, например на "сервере". Что касается /etc/init.d/* я без разговоров заменяю на новые конфиги, чего не скажешь про /etc/conf.d/* - тут уже надо быть внимательнее.
Можно исходить из принципа: не трогал дефолтные конфиги - просто обнови их, а остальные проверь. Таким образом получается быстро.