Хорошо.
Вдохновленный ответом @drewbenn, я сам написал его на Python, используя библиотеку Requests ( http://requests.readthedocs.io/en/master/ ):
import requests
import sys
url = sys.argv[1]
print "Connecting ", url
r = requests.get(url)
print r.text
flag = True
while flag :
s = raw_input()
data = {"opt": s}
r = requests.get(url, params=data)
print r.text
Проблема заключается в следующем (из man rsync
):
... Файлы должны быть идентичны по всем сохраненным атрибутам (например, разрешения, возможно, право собственности), чтобы файлы можно было связать вместе.
В вашем случае, разрешения файлов (из ваших примеров)
Access: (0644/-rw-r--r--) # hardlink failed (original)
Access: (0777/-rwxrwxrwx) # hardlink failed (backup)
Access: (0777/-rwxrwxrwx) # hardlink created (original)
Access: (0777/-rwxrwxrwx) # hardlink created (backup)
Например
$ chmod 777 A/file
$ rsync -az A/ B/
$ chmod 644 A/file
$ rsync -az --link-dest=$PWD/B/ A/ C/
приводит к
$ du -hsc A B C
965M A
965M B
965M C
2.9G total
в то время как, сброс разрешений на исходные, приводит к
$ chmod 777 A/file
$ rsync -az --link-dest=$PWD/B/ A/ D/
$ du -hsc A B D
965M A
965M B
4.0K D
1.9G total
Вы можете попробовать с каким-нибудь файлом, чтобы заставить его работать (я полагаю, с --size-only
, который должен пропускать файлы одинакового размера).
Что вам следует сделать, так это попытаться выяснить, изменили ли вы права доступа после последнего резервного копирования, или, если нет, почему изменились права доступа в каталоге резервного копирования.