Я использую драйвер блока Datto, чтобы делать снимки моего работающего сервера каждую ночь. После того , как снимок берется, я dd
снимок из /dev/datto0
через PipeViewer pv
и gzip
в файл в файловой системе. Затем файл загружается в DropBox и удаляется.
Я автоматизировал это с помощью Bash-скрипта и настроил его запускать по заданию cron каждую ночь. Вот фрагмент моего сценария Bash, который доставляет мне неприятности:
echo "$(date +"%r"): Calculating MD5 checksum of /dev/datto0..."
MD5=$(md5sum /dev/datto0)
echo "$(date +"%r"): MD5: $MD5"
echo "$(date +"%r"): Compressing /dev/datto0 via gzip to /tmp directory..."
dd if=/dev/datto0 | pv | gzip -1 | dd of=/tmp/BACKUP_${TODAY}_${MD5}.dd.gz
echo "$(date +"%r"): Compression complete. File size is: $(du -b /tmp/BACKUP_${TODAY}_${MD5}.dd.gz | cut -f1) bytes"
Вот ошибка, которая выбрасывается:
02:37:35 PM: Calculating MD5 checksum of /dev/datto0...
02:54:01 PM: MD5: 28a6a6c11f088d6149d178af6e45102a /dev/datto0
02:54:01 PM: Compressing /dev/datto0 via gzip to /tmp directory...
dd: unrecognized operand ‘/dev/datto0.dd.gz’
Try 'dd --help' for more information.
896kB 0:00:00 [42.7MB/s] [ <=> ]
du: cannot access ‘/tmp/BACKUP_09_21_2015_28a6a6c11f088d6149d178af6e45102a’: No such file or directory
du: cannot access ‘/dev/datto0.dd.gz’: No such file or directory
02:54:01 PM: Compression complete. File size is: bytes
Вот часть ошибки, которая действительно заставляет меня чесать голову:
dd: unrecognized operand ‘/dev/datto0.dd.gz’
Я ни разу в своем сценарии не ссылаюсь на /dev/datto0.dd.gz
Может быть, часть моей команды dd
по какой-то причине пропускается? dd: unrecognized operand ‘/dev/datto0.dd.gz’