Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

PsyncX plante

18 réponses
Avatar
SAM
Salutatous,

iMac-Intel blanc 2Go Ram - système 10.4.10

Installé récemment PsyncX pour tenter de backupper mon DD
(faire le ménage dans ma sauvegarde)

Il a eu fonctionné pour qques essais.

Là il plante au lancement :
"L'application a quitté inopinément"
??? elle a même pas eu le temps de se lancer !

Dans /usr/local/bin/ j'ai :
- psync
- runpsync
et pas dans : /usr/bin/

Dans le terminal, si je puis faire un : man psync
le reste se solde par un échec :-(

Exemple (le dossier 'test' n'existe pas dans la cible) :

psync /Users/stef/Documents/test/ /Volumes/Save/Users/stef/Documents/
-bash: psync: command not found

Tiens ? si je fais : man runpsync
ou n'importe lequel des trucs dans /usr/local/bin/
je n'obtiens rien

Pourtant il y a l'air d'il y avoir des pages là :
/usr/local/man/man1/
/usr/local/man/man3/

Que faire ? que faire ?
pour désisinstaller PsyncX, esspliquer au Terminal où est ce psync,
enfin que ça re-fonctionne quoi.

--
sm

10 réponses

1 2
Avatar
Nicolas-Michel_REMOVE
SAM wrote:

psync /Users/stef/Documents/test/ /Volumes/Save/Users/stef/Documents/
-bash: psync: command not found



Ca c'est un problème avec la variable $PATH

Si tu tapes

echo $PATH

tu verras que /usr/local/bin ne s'y trouve pas.

Donc il faut soit modifier cette variable, soit plus simplement taper le
chemin complet :

/usr/local/bin/psync /Users/stef/Documents/test/
/Volumes/Save/Users/stef/Documents/


--
Nicolas Michel
Avatar
SAM
Michel Nicolas Alex a écrit :
SAM wrote:



Bon, d'abord pris de l'autre fil :

> psync a besoins de composants perl qui parfois peuvent manquer.
>
> Essaies juste de copier-coler dans le terminal ce qui suit,
> puis tu nous copies-cole tout le résultat ici.
>
> cd
> mkdir test1
> mkdir test2
> touch test1/qq.txt
> psync test1 test2

les 2 dossiers sont bien créés, mais ... :

======== ordinateur-de-stef:~ stef$ cd
ordinateur-de-stef:~ stef$ mkdir test1
ordinateur-de-stef:~ stef$ mkdir test2
ordinateur-de-stef:~ stef$ touch test1/qq.txt
ordinateur-de-stef:~ stef$ psync test1 test2
-bash: psync: command not found
========
psync /Users/stef/Documents/test/ /Volumes/Save/Users/stef/Documents/
-bash: psync: command not found



Ca c'est un problème avec la variable $PATH

Si tu tapes

echo $PATH



ordinateur-de-stef:~ stef$ echo $PATH
/sw/bin:/sw/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin

tu verras que /usr/local/bin ne s'y trouve pas.



oui

Donc il faut soit modifier cette variable, soit plus simplement taper le
chemin complet :

/usr/local/bin/psync /Users/stef/Documents/test/
/Volumes/Save/Users/stef/Documents/



alors j'essaie :
/usr/local/bin/psync test1 test2

Ha! il se passe qque chose :

======= Scanning Destination Directory test2 ...

0:.
1 items found.
Scanning Source Item test1 ...

0:.
2 items found.
0 items to delete,
1 items unchanged,
1 items to copy.
copying items ...
+f test1/qq.txt
fixing directory attributes ...
00755,stef,stef test2
========
Le qq.txt a bien été copié,
je le vois là /stef/test1/ et là /stef/test2/


J'ai demandé à CronniX de me supprimer la commande de backup éditée par
PsyncX.
Par contre j'ai l'air d'avoir un truc curieux mal bâti

###PsyncX Crontab###
#0 0 * * * stef NSPatternColorSpace NSImage 0x3e8270 Size={8, 22} Reps=(
_NSCachedBitmapImageRep 0x3ea770 Size={8, 22}
ColorSpace=NSDeviceRGBColorSpace BPS=8 BPP2 Pixels=8x22 Alpha=YES
Planar=NO Format=0
###End PsyncX Crontab###


--
sm
Avatar
Nicolas-Michel_REMOVE
SAM wrote:


ordinateur-de-stef:~ stef$ echo $PATH
/sw/bin:/sw/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin



Pour changer cette variable, ça va dépendre de ton shell.

Pour bash :
tu peux éditer le fichier /etc/paths s'il existe

Ou sinon cette commande devrait marcher :

echo "export PATH=$PATH:/usr/local/bin" >> ~/.profile


Le qq.txt a bien été copié,



oki, donc ça fonctionne si tu met le chemin complet.

Par contre j'ai l'air d'avoir un truc curieux mal bâti

###PsyncX Crontab###
#0 0 * * * stef NSPatternColorSpace NSImage 0x3e8270 Size={8, 22} Reps=(
_NSCachedBitmapImageRep 0x3ea770 Size={8, 22}
ColorSpace=NSDeviceRGBColorSpace BPS=8 BPP2 Pixels=8x22 Alpha=YES
Planar=NO Format=0
###End PsyncX Crontab###



C'est bien sur une seule ligne ?
Si oui, ça commence par un #
donc c'est un commentaire, ça n'a aucun effêt.


Et pour faire suivre tout sur un post :

Que risque-je à effacer de PsyncX Crontab (dans textedit par exemple)
Je l'ai fait avec CronniX



Je me méfies de textedit.
Mieux vaut amah utiliser un autre soft, par exemple TextWrangler.

Juste un truc à faire gaffe :
Un fichier texte peut avoir 3 type de retour de chariot.
(dos, unix et mac)
Pour des fichiers system ou des script shell,
il faut absolument sauver ton fichier au format unix.

Dans textwrangler, ça se règle dans les pref, "Text Files" >
default line break : unix (LF)

Mis à part ça il n'y a pas plus de risques à modifier un fichier comme
/etc/crontab avec textwrangler plutôt qu'en cli. C'est plus simple et
textwrangler gère même les permissions et les dossiers cachés.

--
Nicolas Michel
Avatar
SAM
Michel Nicolas Alex a écrit :
SAM wrote:

ordinateur-de-stef:~ stef$ echo $PATH
/sw/bin:/sw/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin



Pour changer cette variable, ça va dépendre de ton shell.

Pour bash :
tu peux éditer le fichier /etc/paths s'il existe

Ou sinon cette commande devrait marcher :

echo "export PATH=$PATH:/usr/local/bin" >> ~/.profile



Non, pas fonctionné :

========= ordinateur-de-stef:~ stef$ echo "export PATH=$PATH:/usr/local/bin" >>
~/.profile
ordinateur-de-stef:~ stef$ mkdir test1
ordinateur-de-stef:~ stef$ mkdir test2
ordinateur-de-stef:~ stef$ touch test1/qq.txt
ordinateur-de-stef:~ stef$ psync test1 test2
-bash: psync: command not found
=========
Et si je mettais un alias à la main de psync dans /bin/ ??
Le + fort est que le Terminal trouve bien le man de psync !

Par contre j'ai l'air d'avoir un truc curieux mal bâti

###PsyncX Crontab###
#0 0 * * * stef NSPatternColorSpace NSImage 0x3e8270 Size={8, 22} Reps=(
_NSCachedBitmapImageRep 0x3ea770 Size={8, 22}
ColorSpace=NSDeviceRGBColorSpace BPS=8 BPP2 Pixels=8x22 Alpha=YES
Planar=NO Format=0
###End PsyncX Crontab###



C'est bien sur une seule ligne ?



Y Il y a un retour (le L couché) après Reps=(
me dit textwrangler (c'est bien en Unix)

--
sm
Avatar
Nicolas-Michel_REMOVE
SAM wrote:


Non, pas fonctionné :

========= > ordinateur-de-stef:~ stef$ echo "export PATH=$PATH:/usr/local/bin" >>
~/.profile



-bash: psync: command not found
=========


Euh .profile est un fichier d'initialisation.
Donc il faut ouvrir une nouvelle fenêtre du terminal pour que ça marche

Et si je mettais un alias à la main de psync dans /bin/ ??



C'est une possibilité, mais autant faire les choses bien non ?
ça prends du temps, mais tu as l'air décidé à apprendre, donc profites

Le + fort est que le Terminal trouve bien le man de psync !



Oui, le man est avec les autres man pages, il n'y a pas la même
"ségrégation", donc c'est normal

>> Par contre j'ai l'air d'avoir un truc curieux mal bâti
>>
>> ###PsyncX Crontab###
>> #0 0 * * * stef NSPatternColorSpace


NSImage 0x3e8270 Size={8, 22} Reps=(
>> _NSCachedBitmapImageRep 0x3ea770 Size={8, 22}
>> ColorSpace=NSDeviceRGBColorSpace BPS=8 BPP2 Pixels=8x22 Alpha=YES
>> Planar=NO Format=0
>> ###End PsyncX Crontab###
>
> C'est bien sur une seule ligne ?

Y Il y a un retour (le L couché) après Reps=(
me dit textwrangler (c'est bien en Unix)



Gh ?

Tu peux postrer les 20 permiers caractères de chaques lignes stp ?
Je vois pas ce que tu veux dire

--
Nicolas Michel
Avatar
SAM
Michel Nicolas Alex a écrit :
SAM wrote:


Non, pas fonctionné :

========= >> ordinateur-de-stef:~ stef$ echo "export PATH=$PATH:/usr/local/bin" >>
~/.profile
========= >


Euh .profile est un fichier d'initialisation.
Donc il faut ouvrir une nouvelle fenêtre du terminal pour que ça marche



? ? ben ! si on m'dit jamais rien à moi ? !
Jamais je n'aurais imaginé qu'il faille ouvrir plusieurs shells

V'là qu'ça fonctionne dans les 2 fenêtres ? !

$ psync test1 test2
Scanning Destination Directory test2 ... blabla

Et si je mettais un alias à la main de psync dans /bin/ ??



C'est une possibilité, mais autant faire les choses bien non ?
ça prends du temps, mais tu as l'air décidé à apprendre, donc profites



Heu, pour le moment j'essaie bêtement ce que tu me dis de faire.
J'essaie de !

et là touj pas de psync dans /bin/
c'est bien mystérieux c't'affaire.

Tu peux postrer les 20 permiers caractères de chaques lignes stp ?
Je vois pas ce que tu veux dire



Sauf à ce que tu insistes, pas la peine, j'ai ré-ouvert crontab, il n'y
a que des commentaires finalement.
Le copié-collé a dû s'arranger à sa façon.

J'efface ces commentaires ? Parce que là PsyncX continue à planter

Le rapport est là :
<http://cjoint.com/?gstFNUi0G6>
En voici l'introduction :
============ OS Version: 10.4.10 (Build 8R2232)
Report Version: 4

Command: PsyncX
Path: /Applications/aa_MANIP_FICHIERS/PsyncX.app/Contents/MacOS/PsyncX
Parent: WindowServer [57]

Version: PsyncX 2.2.2 (2.2.2)

PID: 389
Thread: 0

Exception: EXC_BREAKPOINT (0x0006)
Code[0]: 0x00000002
Code[1]: 0x00000000
============
Dans l'intermède j'ai fait backuper /stef/ pendant que ça fonctionnait.
Boudiou ! c'est incomparablement + rapide qu'avec mon soft !
Même si ça a un peu ramé à faire le ménage dans les vidéos.
Enfin ... je dis ça mais je nai pas essayé de les revisualiser.

Le rapport de backup ne fait que 5 555 lignes,
je vais avoir vite fait de vérifier :-/

Bon, reste plus qu'à attaquer la production de fichiers de commandes de
backup.
/stef/ sauf /Séquences/ /Images/ et /Musiques/
/Séquences/
/Images/
/Musiques/

Y a pas un petit AppleScript qui ferait ça ?
on coche quoi qu'on veut et bouton [save]

--
sm
Avatar
Nicolas-Michel_REMOVE
SAM wrote:

? ? ben ! si on m'dit jamais rien à moi ? !



Désolé, j'ai pas pensé à le spécifier.

et là touj pas de psync dans /bin/
c'est bien mystérieux c't'affaire.



La pente est raide ...
Il faut bien quelques années de pratique pour que tout ça soit
finalement limpide.

J'efface ces commentaires ? Parce que là PsyncX continue à planter

Le rapport est là :
<http://cjoint.com/?gstFNUi0G6>



J'ai survolé, rien pu en tirer.

Le rapport de backup ne fait que 5 555 lignes,
je vais avoir vite fait de vérifier :-/



La vérif est beaucoup plus simple à faire :
Tu n'as qu'à relancer le backup une seconde fois.

Si recommence à copier des fichiers, c'est que soit il y a un problème,
soit certains fichiers ont changés entre temps.

Bon, reste plus qu'à attaquer la production de fichiers de commandes de
backup.
/stef/ sauf /Séquences/ /Images/ et /Musiques/
/Séquences/
/Images/
/Musiques/

Y a pas un petit AppleScript qui ferait ça ?
on coche quoi qu'on veut et bouton [save]



Euh, ...
je ne peux pas le garantir fonctionnel sans débugage.
Mais je verrais un truc de ce genre :

ls -1 ~/ > ~/.psync_list.txt

Puis tu effaces dans .psync_list.txt tout ce que tu ne veux pas
sauvegarder.
Ensuite tu lances un psync sur ça :

#!/bin/bash
IFS="
"
cd
for i in $(cat .psync_list.txt)
do
psync -dn "$i" /Volumes/Safe/Users/
done
# end



sinon, rsync a une fonction "exclude" qui donnerait un truc de ce genre

rsync -avE --exlude="S?quences" --exclude="Images" --exclude="Musiques"
/Users/stef /Volumes/Safe/Users

--
Nicolas Michel
Avatar
SAM
Michel Nicolas Alex a écrit :
SAM wrote:

? ? ben ! si on m'dit jamais rien à moi ? !



Désolé, j'ai pas pensé à le spécifier.



y a rien de mieux que essai+erreur pour capter :-)

Le rapport de backup ne fait que 5 555 lignes,
je vais avoir vite fait de vérifier :-/



La vérif est beaucoup plus simple à faire :
Tu n'as qu'à relancer le backup une seconde fois.



je voulais +/- dire : voir ce qu'il a fabriqué

Bon, reste plus qu'à attaquer la production de fichiers de commandes de
backup.
Y a pas un petit AppleScript qui ferait ça ?
on coche quoi qu'on veut et bouton [save]



Euh, ...
je ne peux pas le garantir fonctionnel sans débugage.
Mais je verrais un truc de ce genre :



Aîye ! on passe aux TP sérieux là : débugage et tout et tout
:-)
Je crois que je vais devoir acheter un DD externe d'entrainement.

ls -1 ~/ > ~/.psync_list.txt

Puis tu effaces dans .psync_list.txt tout ce que tu ne veux pas
sauvegarder.



C'est obligé que ce fichier soit caché ?
(à moins que le point ne veuille dire autre chose ?)

Ensuite tu lances un psync sur ça :



Petit commentaire ? IFS ?

#!/bin/bash
IFS="
"
cd
for i in $(cat .psync_list.txt)
do
psync -dn "$i" /Volumes/Safe/Users/
done
# end



et à la limite je balance ça dans CronniX.

sinon, rsync a une fonction "exclude" qui donnerait un truc de ce genre

rsync -avE --exlude="S?quences" --exclude="Images" --exclude="Musiques"
/Users/stef /Volumes/Safe/Users



à voir, donc.

--
sm
Avatar
Nicolas-Michel_REMOVE
SAM wrote:

Je crois que je vais devoir acheter un DD externe d'entrainement.




Tu peux faire une petite arborescence de test avec 4 dossiers pour
tester. Tu peux aussi le lancer en mode test "psync -n"

A noter ici que pour bash, on met le "debug mode" en ajoutant à la
première ligne du script -vx

donc ça donne :
#!/bin/bash -vx

à la place de
#!/bin/bash


> ls -1 ~/ > ~/.psync_list.txt
>
> Puis tu effaces dans .psync_list.txt tout ce que tu ne veux pas
> sauvegarder.

C'est obligé que ce fichier soit caché ?
(à moins que le point ne veuille dire autre chose ?)



Non, c'est juste l'usage habituel, les fichier de conf de ton homedir
sont généralement cachés, tel que .login, .ssh, .bash_history, ...

Mais tu peux le faire comme tu le souhaites.

> Ensuite tu lances un psync sur ça :

Petit commentaire ? IFS ?



IFS (Internal Field Separator)
sert à séparer les champs.
Je met ça pour protéger les nom de dossiers contenant des espaces.

> #!/bin/bash
> IFS="
> "
> cd
> for i in $(cat .psync_list.txt)
> do
> psync -dn "$i" /Volumes/Safe/Users/
> done
> # end

et à la limite je balance ça dans CronniX.



Non, pas à la limite !
Oui, tu mets ça dans cronnix absolument :)

> sinon, rsync a une fonction "exclude" qui donnerait un truc de ce genre
>
> rsync -avE --exlude="S?quences" --exclude="Images" --exclude="Musiques"
> /Users/stef /Volumes/Safe/Users

à voir, donc.



C'est une autre variante, mais rsync ne fait pas des backup bootable et
est un poil plus compliqué. Enfin pas plus compliqué que le script shell
que je t'ai proposé note.


En fait j'y avais pas pensé parce que je déteste ce qui est répétitif,
mais iune solution simple serait de faire un script genre :

#!/bin/bash
psync /Users/stef/Desktop /Volumes/Safe/Users/stef/Desktop
psync /Users/stef/Documents /Volumes/Safe/Users/stef/Documents
psync /Users/stef/Truc /Volumes/Safe/Users/stef/Truc
psync /Users/stef/Muche /Volumes/Safe/Users/stef/Muche
psync /Users/stef/Tagada /Volumes/Safe/Users/stef/Tagada

--
Nicolas Michel
Avatar
SAM
Michel Nicolas Alex a écrit :
SAM wrote:

A noter ici que pour bash, on met le "debug mode" en ajoutant à la
première ligne du script -vx

donc ça donne :
#!/bin/bash -vx



Mais ? ce n'est pas une ligne de commentaire ?
Pour moi un commentaire est un truc qui est à l'usage de l'humain, pas
de la machine.
Je ne comprends donc pas comment -vx peut faire qque chose.

à la place de
#!/bin/bash




#!/bin/bash
IFS="
"
cd
for i in $(cat .psync_list.txt)
do
psync -dn "$i" /Volumes/Safe/Users/
done
# end


et à la limite je balance ça dans CronniX.



Non, pas à la limite !
Oui, tu mets ça dans cronnix absolument :)



Enfin ... quand j'aurais revu psync_liste.txt !

En fait j'y avais pas pensé parce que je déteste ce qui est répétitif,
mais iune solution simple serait de faire un script genre :

#!/bin/bash
psync /Users/stef/Desktop /Volumes/Safe/Users/stef/Desktop
psync /Users/stef/Documents /Volumes/Safe/Users/stef/Documents
psync /Users/stef/Truc /Volumes/Safe/Users/stef/Truc
psync /Users/stef/Muche /Volumes/Safe/Users/stef/Muche
psync /Users/stef/Tagada /Volumes/Safe/Users/stef/Tagada



J'aime bien les boucles moi aussi, on a un peu l'impression d'utiliser
son ordi à qque chose ;-)

De toutes façon psync_liste.text ne contient que les dossiers de 1er
niveau. J'ai encore du taf avant d'analyser chaque sous et sous-sous
dossiers.

Je vais sans doute aller + vite à faire cette liste à la main.

Petit problème, et dans le cadre de mon apprentissage basique,
j'ai par exemple dans ma liste :

Documents/mes_docus/Travail
Documents/mes_docus/Famille/Stef
Documents/mes_sites/Truc
Lybrary/Applications Support/AddressesBook
(les 2 lignes suivantes sur une seule ligne)
Library/Application Support/Firefox/Profiles/fgrt.default/bookmarks.html

Si je fais ensuite :

for i in $(cat .psync_list.txt)
do
psync -dn /Users/stef/"$i" /Volumes/Safe/Users/stef/

ça va marcher ?
Ou bien faudrait-il :
psync -dn "/Users/stef/$i" /Volumes/Safe/Users/stef/


Je pense que je vais sans doute faire, au moins dans un 1er temps :
/Users/ /Volumes/Save/Users/
puisque, à ce que tu dis, ça fonctionne en arrière plan (sans ralentir
le reste ?) et que ça ne met que qques minutes à se faire.
Tout au moins pour des sauvegardes quotidiennes limitées à ce dossier.

Faut juste que je pense à allumer le DD externe au bon moment ! :-)


--
sm
1 2