Bonjour,
ce message apparaît au lancement d’un script de sauvegarde sur un volume NTFS.
il est suivi de la ligne suivante:
rsync error: syntax or usage error (code 1) at main.c(1596) [client=3.1.3]
Je suppose que ce message d’erreur vient du système de fichier NTFS, et qu’il est donc formulé de façon ambiguë.
Mon but est de créer une sauvegarde de certains répertoires qui soit accessible sur des machines windows, et qu’il me faudra renoncer aux options de propriétaire et de permission.
au delà de la question de NTFS, mon problème venait d’une erreur de syntaxe: je créais une variable Options comme une variable simple, que rsync ne pouvait donc pas reconnaître comme un tableau de variables.
Pour ne pas me compliquer le code avec un tableau, j’écris donc mes options dans des variables différentes (ou directement).
Je déplace cette discussion dans «programmation» et
je change l’entête en ajoutant «BASH»
Bonjour,
Peux-être pourrais-tu nous montrer ce que tu as fais ?
Le but d’un forum est de pouvoir retrouver de l’information et la partager.
Tu as solutionné c’est super, mais rendre la solution publique est encore mieux
J’utilise donc une variable tableau (OPTIONS) pour gérer les options.
D’une part des options imposées à rsync par le script
Puis une option du script pour ajouter l’option de rync «–dry-run»
Puis une option ouverte -o
Voici les extraits de mon script pour gérer les options de rsync:
declare -a OPTIONS=('-auHAXCvv')
...
# GESTION DES OPTIONS:
while getopts no:ihmM option
do
case "$option" in
n ) OPTIONS=("${OPTIONS[0]}" ' --dry-run')
DEBUG "${OPTIONS[0]}"
;;
o ) OPTIONS=("${OPTIONS[*]}" "-$OPTARG")
DEBUG "OPTIONS=${OPTIONS[*]}"
EXIT "DEBUG"
;;
i ) INFOS ; exit 0
;;
h ) SYNTAXE
exit 0
;;
m ) CONNEXION && MONTER || EXIT 1
EXIT 0
;;
M ) DEMONTER
EXIT 0
;;
* ) MESSAGE "OPTION $option non valide"
exit 1
esac
done
shift $((OPTIND-1))
...
time sudo rsync "${OPTIONS[@]}" --stats --exclude-from="$EXCLUS" "$SOURCE" "$DESTINATION"