Господа,
что то я зачастил.
Но спасибо Вам большое за помощь.
Дело в том, что после некой аварии я пытаюсь сам, своими силами, наладить правильный бэкап.
У меня Ubuntu 16.04, на которой поднят KVM, и в одной из виртуалок крутится GitLab.
И у меня возникает такая задача: раз в день, если виртуалочка с GitLab выключена - надо её диск скопировать, а потом саму виртуалочку запустить командой virsh start.
Я сделал всё прямо, как железная дорога:
вот содержимое sh - файла, который я хочу запускать по крону:
if /bin/ping -c 1 192.168.10.57 &> /dev/null
then
echo Cant backup - VM working now
else
echo Try copy...
/bin/cp /VM/GitLab0_Ubuntu.img /backups/
/usr/bin/virsh start GitLab0_Ubuntu
fi
Но вот что интересно.
Я выключил виртуальную машину и стал пробовать скрипт в ручнмо режиме.
Когда я запускаю этот *.sh - файл под обычным пользователем - я получаю по морде отсутствием пермишшенов на /backups/
А когда я пишу
sudo ./backup-gitlab.sh
- я получаю еще более загадочный вывод:
Cant backup - VM working now
PING 192.168.10.57 (192.168.10.57) 56(84) bytes of data.
konst@LB1:/backups$ From 192.168.10.201 icmp_seq=1 Destination Host Unreachable
--- 192.168.10.57 ping statistics ---
1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms
То есть, впечатление такое, что скрипт начинает выполнять ветку, соответствующую тому, что ping до нужного хоста есть.
Хотя хост выключен.
Вот скриншот:
http://junecat.ru/Storage/oth/ping-1.jpg
Не знаете ли Вы, почему это может так работать? Ведь ничего не изменилось, кроме того, что второй раз я запускаюсь из под sudo.
И еще раз спасибо всем, кто мне даёт советы. Это - бесценно