Пример A-17. fifo: Создание резервных копий с помощью именованных каналов
#!/bin/bash
# ==> Автор:James R. Van Zandt
# ==> используется с его разрешения.
# ==> Комментарии, добавленные автором документа.
HERE=`uname -n` # ==> hostname
THERE=bilbo
echo "начало создания резервной копии на $THERE, за `date +%r`"
# ==> `date +%r` возвращает время в 12-ти часовом формате, т.е. "08:08:34 PM".
# убедиться в том, что /pipe -- это действительно канал, а не простой файл
rm -rf /pipe
mkfifo /pipe # ==> Создание "именованного канала", с именем "/pipe".
# ==> 'su xyz' -- запускает команду от имени порльзователя "xyz".
# ==> 'ssh' -- вызов secure shell (вход на удаленную систему).
su xyz -c "ssh $THERE \"cat >/home/xyz/backup/${HERE}-daily.tar.gz\" < /pipe"& cd / tar -czf - bin boot dev etc home info lib man root sbin share usr var >/pipe
# ==> Именованный канал /pipe, используется для передачи данных между процессами:
# ==> 'tar/gzip' пишет в /pipe, а 'ssh' -- читает из /pipe.
# ==> В результате будет получена резервная копия всех основных каталогов.
# ==> В чем состоит преимущество именованного канала, в данной ситуации,
# ==> перед неименованным каналом "|" ?
# ==> Будет ли работать неименованный канал в данной ситуации?
exit 0
Переключение на резервный канал
(http://www.opennet.ru/openforum/vsluhforumID1/74322.html):
ip route add default via 1.1.1.1 dev eth0 metric 5
ip route add default via 2.2.2.2 dev eth1 metric 15
http://lartc.org/
Комментариев нет:
Отправить комментарий