Ниже представлен перевод руководства (http://howtoforge.org/automated-backups-using-dhcpd-on-ubuntu) по настройке резервного копирования удаленных машин, с привязкой к обращению клиента к dhcpd серверу. Примеры настройки справедливы для Ubuntu Linux, для других дистрибутивов могут потребоваться незначительные очевидные изменения.++ Конфигурирование сервера
Настройка dhcp3. В файл /etc/dhcp3/dhcps.conf добавляем:
on commit {
execute (
"/etc/dhcp3/startbackup.sh",
"start",
binary-to-ascii(10,8,".",leased-address)
);
}Создаем скрипт /etc/dhcp3/startbackup.sh, указанный в файле настройки dhcp.
#!/bin/bash
case "$1" in
start)
sudo -u backup /etc/dhcp3/rsync.sh $2
;;
*)
;;
esac
exit 0Создаем скрипт /etc/dhcp3/rsync.sh:
#!/bin/bash
nohup rsync -azuvb backup@$1:/home /backup/$1 &Создаем директорию для хранения бэкапов:
sudo mkdir /backup
Создаем пользователя "backup"
sudo useradd backup
sudo chown backup:backup /backupГенерируем ssh-ключи:
ssh-keygen -t rsa
Копируем ключи на все машины, с которых будет производиться резервное копирование ("[host]" заменяем на имя машины):
ssh-copy-id -i ~/.ssh/id_rsa backup@[host]
Запускаем sudo visudo и добавляем строку, позволяющую организовать запуск /etc/dhcp3/startbackup.sh из dhcpd от имени пользователя backupdhcpd ALL=(backup)NOPASSWD: /etc/dhcp3/startbackup.sh, /etc/dhcp3/rsync.sh
Настройка AppArmor
В файле /etc/apparmor.d/usr.sbin.dhcpd3 добавляем "/etc/dhcp3/startbackup.sh Uxr,", заменив
/etc/dhcp3/ r,
/etc/dhcp3/** r,
/etc/dhcpd.conf r,
/etc/dhcpd_ldap.conf r,на
/etc/dhcp3/ r,
/etc/dhcp3/** r,
/etc/dhcp3/startbackup.sh Uxr,
/etc/dhcpd.conf r,
/etc/dhcpd_ldap.conf r,
Перезапускаем сервисы apparmor и dhcp3-serversudo /etc/init.d/apparmor restart
sudo /etc/init.d/dhcp3-server restart
++ Настройка клиентаСоздаем пользователя "backup":
sudo useradd backup
sudo usermod -G rootТестируем настройки
sudo dhclient рабочий_сетевой_интерфейс
После чего, на сервере должна быть создана резервная копия данных с машины клиента
URL: http://netsago.org/ru/notes/2009/15/
Обсуждается: http://www.opennet.me/tips/info/2203.shtml
А в чем тайный смысл
sudo usermod -G root ?
А в чем тайный смысл идеи вообще? запускать бекап с dhcp-сервера, если крон поломался?
не надо думать когда машина клиент будет включена
не надо формировать список машин для резервных копий
а это что?
ssh-copy-id -i ~/.ssh/id_rsa backup@[host]не "список машин"?
> не "список машин"?какой же это список ? это добавление новой машины.
ага, интересная идея
Может кому-то и нужно такое, но, по мне, так моразм полный.
Ну разве что, полезно в познавательных целях, например про on commit