LINUX.ORG.RU
ФорумAdmin

CVS и /etc


0

0

Захотелось внедрить систему контроля версий для отслеживания изменений в конфигах.
Поделитесь, кто что и как использует.

Моя первая мысль - запихнуть /etc в CVS.
Но во-первый CVS от рута не работает, а во-вторых жестоко херит пермишины при checkout'е.

anonymous

> CVS от рута не работает

Это как это?

> жестоко херит пермишины при checkout'е

Как вариант - написать скрипт-оболочку, который перед checkin будет обегать каталоги и генерить скрипт, расставляющий нужные permissions, а при checkout запускать этот скрипт.

watashiwa_daredeska ★★★★
()

Если уж требуется писать скрипт для адаптации CVS под 
отслеживание изменений в /etc, то проще написать свой скрипт

# cp -a /etc /var/lib/etc


По крону:
find /etc -type f -exec /usr/local/sbin/My_diff_check.sh {} \;

cat /usr/local/sbin/My_diff_check.sh

#! /bin/bash

ORIG='/var/lib'
file=$1
name=`basename $file`
DATE=`date +%s`

if ! cmp -s $file ${ORIG}$file; then
  # файл изменился
   diff -u ${ORIG}$file $file >$ORIG/DIFFS/${name}_$DATE
   cat $ORIG/DIFFS/${name}_$DATE | mail -s "File $file changed" you@your_mail.ru
   cp $file ${ORIG}$file
fi

sdio ★★★★★
()
Ответ на: комментарий от anonymous

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

sdio ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.