używać opcji unison w skrypcie powłoki?


Jestem nowy w unisonie i próbuję użyć jego opcji w prostym skrypcie powłoki, ale wydaje się, że są one ignorowane, gdy skrypt jest wykonywany, co nie zapewnia synchronizacji zmian między dwoma serwerami.
Mój skrypt powłoki:
#!/bin/bash
# set paths/dirs
_paths="/var/www/html/ \
"# binary file name
_unison=/usr/bin/unison# Log in to remote server without a password
source $HOME/.keychain/$HOSTNAME-sh# server names
# sync node1.example.com with rest of the servers in cluster
_rserver="node2.example.com"# sync it
for r in ${_rserver}
do
for p in ${_paths}
do
${_unison} -batch -time -owner -group "${p}" "ssh://${r}/${p}"
done
done

Jeśli usunę
       -time -owner -group
parametrów, skrypt synchronizuje zmiany wprowadzone normalnie.
Jeśli dodam parametry do
       ~/.unison/default.prf
zamiast tego plik skrypt działa pomyślnie. na przykład
# Unison preferences fileprefer=newer
times=true
group = true
owner = true

Tak czy siak. Ponieważ mam różne skrypty wywoływane przez różne zadania cron, wolałbym, aby opcje były określone w samych skryptach, a nie w plikach konfiguracyjnych.
Jakieś sugestie dotyczące tego, co robię źle?
Zaproszony:
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Wygląda na to, że musisz umieścić opcje unison po zdefiniowaniu katalogów głównych:
W tym formacie:

unison ręczny link
http://www.cis.upenn.edu/~bcpi ... prefs
(RTFM!)
unison root1 root2 [options]

Więc mój kod powinien wyglądać następująco:
${_unison} -batch "${p}"  "ssh://${r}/${p}" -times -owner -group

Po umieszczeniu tutaj parametrów skrypt jest wykonywany bez błędów.

Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się