Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 16/11/2024, à 00:11

Lubuntu2024

Synchroniser Dossier Local avec Serveur Domestique

Bonjour à tous,

Je dispose d'un Dossier Local disponible ici : /home/delluser/dossier-local
Mon Répertoire du serveur domestique se trouve ici : smb://freebox-server.local/disque%20dur/
Je me connecte au serveur local en invité : il n'y a pas de mot de passe ou d'identifiant à entrer

Je souhaite que dès l'ouverture de la session Lubuntu, le PC et le FreeBox Server se synchronise pour ajouter/supprimer/modifier les fichiers qui seraient sur l'un ou l'autre des appareils à la manière du Dossier OneDrive et du OneDrive Cloud de Microsoft.

J'ai demandé de l'aide à ChatGPT 4 ; malheureusement ça ne fonctionne pas et je ne sais pas où.

--

Pour synchroniser un dossier local sur votre PC Lubuntu avec un répertoire sur votre serveur domestique (dans ce cas, un disque dur connecté à votre Freebox), vous pouvez utiliser un outil comme rsync ou unison. Voici comment procéder avec unison, qui est particulièrement adapté pour la synchronisation bidirectionnelle.
Étape 1 : Installer Unison

Ouvrez un terminal et installez Unison si ce n'est pas déjà fait :

bash

sudo apt update
sudo apt install unison

Étape 2 : Monter le répertoire SMB

Avant de synchroniser, vous devez vous assurer que le répertoire SMB est monté. Vous pouvez le faire manuellement ou automatiquement au démarrage.
Montée manuelle

Vous pouvez monter le répertoire SMB avec la commande suivante :

bash

sudo mount -t cifs //freebox-server.local/disque\ dur /mnt/freebox -o username=YOUR_USERNAME,password=YOUR_PASSWORD

Remplacez YOUR_USERNAME et YOUR_PASSWORD par vos informations d'identification. Assurez-vous que le dossier /mnt/freebox existe.
Montée automatique

Pour monter automatiquement le répertoire au démarrage, vous pouvez ajouter une entrée dans le fichier /etc/fstab. Ajoutez la ligne suivante :

plaintext

//freebox-server.local/disque\ dur /mnt/freebox cifs username=YOUR_USERNAME,password=YOUR_PASSWORD,uid=1000,gid=1000,iocharset=utf8 0 0

Étape 3 : Configurer Unison

Créez un fichier de profil pour Unison. Par exemple, créez un fichier sync.prf dans votre répertoire personnel :

bash

nano ~/sync.prf

Ajoutez le contenu suivant :

plaintext

root = /home/delluser/dossier-local
root = /mnt/freebox

# Options de synchronisation
auto = true
batch = true

Étape 4 : Synchroniser avec Unison

Pour synchroniser les dossiers, exécutez la commande suivante :

bash

unison ~/sync.prf

Étape 5 : Automatiser la synchronisation au démarrage

Pour automatiser la synchronisation à chaque ouverture de session, vous pouvez créer un script et l'ajouter à vos applications de démarrage.

    Créez un script :

bash

nano ~/sync_script.sh

Ajoutez le contenu suivant :

bash

#!/bin/bash
unison ~/sync.prf

    Rendez le script exécutable :

bash

chmod +x ~/sync_script.sh

    Ajoutez le script aux applications de démarrage :

    Ouvrez "Applications au démarrage" dans Lubuntu.
    Ajoutez une nouvelle entrée avec le chemin vers votre script (/home/delluser/sync_script.sh).

Conclusion

Avec ces étapes, votre dossier local et le répertoire de votre Freebox devraient se synchroniser automatiquement à chaque ouverture de session. Assurez-vous de tester la synchronisation manuellement pour vous assurer que tout fonctionne comme prévu.

Dernière modification par Lubuntu2024 (Le 16/11/2024, à 00:12)

Hors ligne

#2 Le 16/11/2024, à 00:47

Watael

Re : Synchroniser Dossier Local avec Serveur Domestique

sérieusement ?! tu nous demandes de "débugguer" les recommandations de chatGPT !? roll
pourquoi ne demandes-tu pas à chatGPT d'expliciter son propos ?
je crois rêver.

est-ce que tu n'aurais pas mieux fait de nous demander d'abord, sans a priori, comment faire ce que tu veux ?!

--
je vais chez un boulanger artisanal avec une baguette de la grande distribution, et je lui demande pourquoi c'est pas bon !?!


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#3 Le 16/11/2024, à 04:50

kamaris

Re : Synchroniser Dossier Local avec Serveur Domestique

Par ailleurs tu postes un problème réseau qui ne dépend d'aucun environnement de bureau dans la section Xfce avec un système Lubuntu…

Hors ligne

#4 Le 16/11/2024, à 10:51

geole

Re : Synchroniser Dossier Local avec Serveur Domestique

Bonjour.
Malheureusement, cela ne fonctionne pas et je ne sais pas oû.
On se demande si tu as fait 100% des étapes et  si toutes les étapes ont été bien faites.

Un point à mi-chemin environ.
Accèdes-tu bien en ligne de commande aux fichiers de la freebox?

ls -l /mnt/freebox

La documentation unisson

La sécurité avec l'USB

Le risque avec les médias amovibles, c'est qu'ils peuvent ne pas être présents. Pour éviter problème, il existe une option d'Unison qui permet de vérifier qu'un certain fichier soit accessible sur les deux répliques (les deux "root"). Il s'agit de la commande mountpoint. Il faut donc indiquer un fichier qui est présent sur les deux répliques, par exemple "mountpoint=docs/fichier.txt". Si le fichier n'est pas accessible sur l'un ou l'autre des périphériques (ou sur les deux), le processus sera interrompu.

Une freebox doit être considérée comme un media amovible.
Attends d'autres avis.
une piste
RSYNC DossierLocal DossierDistant
RSYNC DossierDistant DossierLocal
Evidemment: Avant de lancer la commande, le script doit contrôler que le DossierLocal n'est pas vide et que DossierDistant est bien un point de montage.
ou qu'il existe bien ce fameux fichier commun. (avec contenu identique?)

Pour info: C'est en train de tourner

a@et:~$ unison --help
Usage: unison [options]
    or unison root1 root2 [options]
    or unison profilename [options]

Basic options:

  General:
   -doc xxx            show documentation ('-doc topics' lists topics)
   -version            print version and exit

  What to sync:
   -group              synchronize group attributes
   -ignore xxx         add a pattern to the ignore list
   -ignorenot xxx      add a pattern to the ignorenot list
   -nocreation xxx     prevent file creations on one replica
   -nodeletion xxx     prevent file deletions on one replica
   -noupdate xxx       prevent file updates and deletions on one replica
   -owner              synchronize owner
   -path xxx           path to synchronize
   -perms n            part of the permissions which is synchronized
   -root xxx           root of a replica (should be used exactly twice)
   -times              synchronize modification times

  How to sync:
   -batch              batch mode: ask no questions at all

  How to sync (text interface (CLI) only):
   -auto               automatically accept default (nonconflicting) actions
   -silent             print nothing except error messages
   -terse              suppress status messages

  Text interface (CLI):
   -i                  interactive profile mode (text UI); command-line only

Advanced options:

  Fine-tune sync:
   -acl                synchronize ACLs
   -atomic xxx         add a pattern to the atomic list
   -follow xxx         add a pattern to the follow list
   -force xxx          force changes from this replica to the other
   -forcepartial xxx   add a pattern to the forcepartial list
   -ignorecase xxx     identify upper/lowercase filenames (true/false/default)
   -immutable xxx      add a pattern to the immutable list
   -immutablenot xxx   add a pattern to the immutablenot list
   -links xxx          allow the synchronization of symbolic links
                       (true/false/default)
   -merge xxx          add a pattern to the merge list
   -nocreationpartial xxx add a pattern to the nocreationpartial list
   -nodeletionpartial xxx add a pattern to the nodeletionpartial list
   -noupdatepartial xxx add a pattern to the noupdatepartial list
   -prefer xxx         choose this replica's version for conflicting changes
   -preferpartial xxx  add a pattern to the preferpartial list
   -rsrc xxx           synchronize resource forks (true/false/default)
   -xattrignore xxx    add a pattern to the xattrignore list
   -xattrignorenot xxx add a pattern to the xattrignorenot list
   -xattrs             synchronize extended attributes (xattrs)

  How to sync:
   -backup xxx         add a pattern to the backup list
   -backupcurr xxx     add a pattern to the backupcurr list
   -backupcurrnot xxx  add a pattern to the backupcurrnot list
   -backupdir xxx      directory for storing centralized backups
   -backuploc xxx      where backups are stored ('local' or 'central')
   -backupnot xxx      add a pattern to the backupnot list
   -backupprefix xxx   prefix for the names of backup files
   -backups            (deprecated) keep backup copies of all files (see also
                       'backup')
   -backupsuffix xxx   a suffix to be added to names of backup files
   -confirmbigdel      ask about whole-replica (or path) deletes (default true)
   -confirmmerge       ask for confirmation before committing results of a merge
   -copyonconflict     keep copies of conflicting files
   -dontchmod          when set, never use the chmod system call
   -fastcheck xxx      do fast update detection (true/false/default)
   -fat                use appropriate options for FAT filesystems
   -ignoreinodenumbers ignore inode number changes when detecting updates
   -maxbackups n       number of backed up versions of a file
   -numericids         don't map uid/gid values by user/group names
   -sortbysize         list changed files by size, not name
   -sortfirst xxx      add a pattern to the sortfirst list
   -sortlast xxx       add a pattern to the sortlast list
   -sortnewfirst       list new before changed files

  How to sync (text interface (CLI) only):
   -repeat xxx         synchronize repeatedly (text interface only)
   -retry n            re-try failed synchronizations N times (text ui only)

  Text interface (CLI):
   -color xxx          use color output for text UI (true/false/default)
   -dumbtty            do not change terminal settings in text UI

  Graphical interface (GUI):
   -height n           height (in lines) of main window in graphical interface

  Remote connections:
   -addversionno       add version number to name of unison on server
   -clientHostName xxx set host name of client
   -halfduplex         (deprecated) force half-duplex communication with the
                       server
   -killserver         kill server when done (even when using sockets)
   -listen xxx         listen on this name or addr in server socket mode (can
                       repeat)
   -rsync              activate the rsync transfer mode (default true)
   -servercmd xxx      name of unison executable on remote server
   -socket xxx         act as a server on a socket
   -sshargs xxx        other arguments (if any) for remote shell command
   -sshcmd xxx         path to the ssh executable
   -stream             (deprecated) use a streaming protocol for transferring
                       file contents (default true)
   -testserver         exit immediately after the connection to the server
   -xferbycopying      optimize transfers using local copies (default true)

  Archive management:
   -ignorearchives     ignore existing archive files

  Other:
   -addprefsto xxx     file to add new prefs to
   -contactquietly     suppress the 'contacting server' message during startup
   -copymax n          maximum number of simultaneous copyprog transfers
   -copyprog xxx       external program for copying large files
   -copyprogrest xxx   variant of copyprog for resuming partial transfers
   -copythreshold n    use copyprog on files bigger than this (if >=0, in Kb)
   -diff xxx           set command for showing differences between files
   -ignorelocks        ignore locks left over from previous run (dangerous!)
   -include xxx        include a profile's preferences
   -key xxx            define a keyboard shortcut for this profile (in some UIs)
   -label xxx          provide a descriptive string label for this profile
   -log                record actions in logfile (default true)
   -logfile xxx        logfile name
   -maxerrors n        maximum number of errors before a directory transfer is
                       aborted
   -maxsizethreshold n prevent transfer of files bigger than this (if >=0, in
                       Kb)
   -maxthreads n       maximum number of simultaneous file transfers
   -mountpoint xxx     abort if this path does not exist
   -rootalias xxx      register alias for canonical root names
   -showarchive        show 'true names' (for rootalias) of roots and archive
   -source xxx         include a file's preferences
   -ui xxx             select UI ('text' or 'graphic'); command-line only
   -unicode xxx        assume Unicode encoding in case insensitive mode
   -watch              when set, use a file watcher process to detect changes

Expert options:
   -debug xxx          debug module xxx ('all' -> everything, 'verbose' -> more)
   -dumparchives       dump contents of archives just after loading
   -fastercheckUNSAFE  skip computing fingerprints for new files (experts only!)
   -selftest           run internal tests and exit

unison: unknown option `--help'.
a@et:~$ unison
Unison 2.53.3 (ocaml 4.14.1): Contacting server...
Looking for changes
Warning: No archive files were found for these roots, whose canonical names are:
	/media/ZFS/a
	/media/freebox/Séries
This can happen either
because this is the first time you have synchronized these roots, 
or because you have upgraded Unison to a new version with a different
archive format.  

Update detection may take a while on this run if the replicas are 
large.

Unison will assume that the 'last synchronized state' of both replicas
was completely empty.  This means that any files that are different
will be reported as conflicts, and any files that exist only on one
replica will be judged as new and propagated to the other replica.
If the two replicas are identical, then no changes will be reported.

If you see this message repeatedly, it may be because one of your machines
is getting its address from DHCP, which is causing its host name to change
between synchronizations.  See the documentation for the UNISONLOCALHOSTNAME
environment variable for advice on how to correct this.


Press return to continue.[<spc>] 
a@et:~/.unison$ cat default.prf

# Unison preferences file
root=/media/ZFS/a
root=/media/freebox/Séries
mountpoint=unison.txt
a@et

Dernière modification par geole (Le 16/11/2024, à 13:04)


Les grilles de l'installateur https://doc.ubuntu-fr.org/tutoriel/inst … _subiquity
"gedit admin:///etc/fstab" est proscrit,  utilisez "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xdg-open /etc/fstab" Voir  https://doc.ubuntu-fr.org/gedit
Les partitions EXT4 des disques externes => https://forum.ubuntu-fr.org/viewtopic.p … #p22697248

En ligne

#5 Le 16/11/2024, à 11:55

jplemoine

Re : Synchroniser Dossier Local avec Serveur Domestique

Perso, je suis solidaire (et d'accord) avec Watael.
Je suis assez grand pour faire des recherches et/ou utiliser ChatGPT.
Je ne parlerais pas de la bonne utilisation des balises dans le retour.
Je ne vois pas l'intérêt d'utiliser d'unision alors qu'un bon script bash avec rsync fonctionne tout aussi bien.
Donc, "ma" solution irait plutôt vers rsync.


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Déconnecté jusqu’à nouvel ordre

Hors ligne

#6 Le 16/11/2024, à 13:38

geole

Re : Synchroniser Dossier Local avec Serveur Domestique

Il se pourrait que l'application ne fonctionne pas dans certains environnements.
Comme cela me semblait bloqué, j'ai relancé en debug.     Cela cesse de baratiner assez rapidement.

a@et:~$ unison -debug  all
[startup] Preferences:
ui = graphic
listen = 
socket = 
server = false
prefsman = 
prefsdocs = false
doc = 
version = false
i = false
color = default
silent = false
dumbtty = false
testserver = false
showprev = false
selftest = false
confirmmerge = false
retry = 0
repeat = 
contactquietly = false
key = 
label = 
expert = false
height = 15
auto = false
maxthreads = 0
maxsizethreshold = -1
prefer = 
force = 
sortnewfirst = false
sortbysize = false
keeptempfilesaftermerge = false
diff = diff -u OLDER NEWER
copyonconflict = false
backupdir = 
maxbackups = 2
backups = false
backupsuffix = 
backupprefix = .bak.$VERSION.
backuploc = central
copymax = 1
copythreshold = -1
copyprogrest = rsync --partial --append-verify --compress
copyprog = rsync --partial --inplace --compress
rsync = true
fastcheck = default
mountpoint = unison.txt
ignorelocks = false
dumparchives = false
showarchive = false
rootsName = 
ignorearchives = false
fastercheckUNSAFE = false
fat = false
allHostsAreRunningWindows = false
someHostIsRunningWindows = false
confirmbigdel = true
batch = false
root = /media/freebox/Séries
root = /media/ZFS/a
killserver = false
halfduplex = false
stream = true
addversionno = false
servercmd = 
sshargs = 
sshcmd = ssh
xferbycopying = true
clientHostName = et
ignoreinodenumbers = false
links-aux = true
links = default
acl = false
xattrignore = Regex !(security|trusted)[.].*
xattrignore = Path !system.posix_acl_*
xattrs = false
times = false
group = false
owner = false
numericids = false
dontchmod = false
perms = 1023
watch = false
rsrc-aux = false
rsrc = default
maxerrors = 1
unicodeCS = false
unicodeEnc = false
unicode = default
someHostIsInsensitive = false
ignorecase = default
timers = false
terse = false
logfile = unison.log
log = true
debugtimes = false
debug = all
addprefsto = 

Unison 2.53.3 (ocaml 4.14.1) log started at 2024-11-16 at 13:21:16

Roots:
  /media/ZFS/a
<>!  /media/freebox/Séries

Unison 2.53.3 (ocaml 4.14.1): Contacting server...
[features] Supported features:
  - Sync: ACL
  - Sync: xattr
[features] Common features for root /media/ZFS/a:
  - Sync: ACL
  - Sync: xattr
[features] Common features for root /media/freebox/Séries:
  - Sync: ACL
  - Sync: xattr
[features] Enabled features:
  - Sync: ACL
  - Sync: xattr
[startup] Roots: 
        /media/ZFS/a
        /media/freebox/Séries
  i.e. 
        /media/ZFS/a
        /media/freebox/Séries
  i.e. (in canonical order)
       /media/ZFS/a
       /media/freebox/Séries

[globals] Checking path '' for expansions
[props] Setting permission mask to 1777 (1777 and 7777)
[stasher] initBackupsLocal
[stasher] d = /
[stasher] Prefix and suffix regexps for backup filenames have been updated
[stasher] initBackupsLocal
[stasher] d = /
[stasher] Prefix and suffix regexps for backup filenames have been updated
Looking for changes
[ui] temp: Globals.paths = 
[pred] ignore '' = false
[update] Loading archive from /home/a/.unison/ar282de22c296f219d5eb3c8d7c6bb0569
[update] Archive /home/a/.unison/ar282de22c296f219d5eb3c8d7c6bb0569 not found
[update] Loading archive from /home/a/.unison/ar90c7ebe09ca691be44e27754620fb576
[update] Archive /home/a/.unison/ar90c7ebe09ca691be44e27754620fb576 not found
[update] Loading archive from /home/a/.unison/ar5de9b7b220076e7c402a94c28efa71f8
[update] Archive /home/a/.unison/ar5de9b7b220076e7c402a94c28efa71f8 not found
[update] Loading archive from /home/a/.unison/arfb65478570973172f94223261625161b
[update] Archive /home/a/.unison/arfb65478570973172f94223261625161b not found
Warning: No archive files were found for these roots, whose canonical names are:
	/media/ZFS/a
	/media/freebox/Séries
This can happen either
because this is the first time you have synchronized these roots, 
or because you have upgraded Unison to a new version with a different
archive format.  

Update detection may take a while on this run if the replicas are 
large.

Unison will assume that the 'last synchronized state' of both replicas
was completely empty.  This means that any files that are different
will be reported as conflicts, and any files that exist only on one
replica will be judged as new and propagated to the other replica.
If the two replicas are identical, then no changes will be reported.

If you see this message repeatedly, it may be because one of your machines
is getting its address from DHCP, which is causing its host name to change
between synchronizations.  See the documentation for the UNISONLOCALHOSTNAME
environment variable for advice on how to correct this.


Press return to continue.[<spc>] 
[update] Loading archive from /home/a/.unison/ar282de22c296f219d5eb3c8d7c6bb0569
[update] Archive /home/a/.unison/ar282de22c296f219d5eb3c8d7c6bb0569 not found
[update] Loading archive from /home/a/.unison/ar90c7ebe09ca691be44e27754620fb576
[update] Archive /home/a/.unison/ar90c7ebe09ca691be44e27754620fb576 not found
[update] Setting archive for //et//media/ZFS/a
[update] Loading archive from /home/a/.unison/ar5de9b7b220076e7c402a94c28efa71f8
[update] Archive /home/a/.unison/ar5de9b7b220076e7c402a94c28efa71f8 not found
[update] Loading archive from /home/a/.unison/arfb65478570973172f94223261625161b
[update] Archive /home/a/.unison/arfb65478570973172f94223261625161b not found
[update] Setting archive for //et//media/freebox/Séries
[update] findOnRoot /media/ZFS/a
[update] findLocal /media/ZFS/a ()
[fpcache] opening cache file /home/a/.unison/fp282de22c296f219d5eb3c8d7c6bb0569 for input
[fpcache] read chunk of 1 files
[fpcache] opening cache file /home/a/.unison/fp282de22c296f219d5eb3c8d7c6bb0569 for output
<>$[pred] ignore '' = false
[update] buildUpdateRec: /media/ZFS/a
[update]   buildUpdate -> New directory
[pred] immutable '' = false
[pred] ignore 'unison.txt' = false
[update] buildUpdateRec: /media/ZFS/a/unison.txt
[update]   buildUpdate -> New file
[fpcache] cache hit for path unison.txt
[update] Setting archive for //et//media/ZFS/a
[update] findOnRoot /media/freebox/Séries
[update] findLocal /media/freebox/S\195\169ries ()
[fpcache] opening cache file /home/a/.unison/fp5de9b7b220076e7c402a94c28efa71f8 for input
[fpcache] read chunk of 1 files
[fpcache] read chunk of 1 files
[fpcache] read chunk of 1 files
[fpcache] read chunk of 1 files
[fpcache] read chunk of 1 files
[fpcache] opening cache file /home/a/.unison/fp5de9b7b220076e7c402a94c28efa71f8 for output
[pred] ignore '' = false
[update] buildUpdateRec: /media/freebox/S\195\169ries
[update]   buildUpdate -> New directory
[pred] immutable '' = false
[pred] ignore 'Le tour du monde en 80 jours - Saison 1 Episode 4.mkv' = false
[update] buildUpdateRec: /media/freebox/S\195\169ries/Le tour du monde en 80 jours - Saison 1 Episode 4.mkv
[update]   buildUpdate -> New file
[fpcache] cache hit for path Le tour du monde en 80 jours - Saison 1 Episode 4.mkv
[pred] ignore 'Le tour du monde en 80 jours - Saison 1 Épisode 1.mkv' = false
  Le tour du monde en 80 jours - Saison 1 Épisode 1.mkv
[update] buildUpdateRec: /media/freebox/S\195\169ries/Le tour du monde en 80 jours - Saison 1 \195\137pisode 1.mkv
[update]   buildUpdate -> New file
[fpcache] cache hit for path Le tour du monde en 80 jours - Saison 1 Épisode 1.mkv
[pred] ignore 'Le tour du monde en 80 jours - Saison 1 Épisode 2.mkv' = false
[update] buildUpdateRec: /media/freebox/S\195\169ries/Le tour du monde en 80 jours - Saison 1 \195\137pisode 2.mkv
[update]   buildUpdate -> New file
[fpcache] cache hit for path Le tour du monde en 80 jours - Saison 1 Épisode 2.mkv
[pred] ignore 'Le tour du monde en 80 jours - Saison 1 Épisode 3.mkv' = false
[update] buildUpdateRec: /media/freebox/S\195\169ries/Le tour du monde en 80 jours - Saison 1 \195\137pisode 3.mkv
[update]   buildUpdate -> New file
[fpcache] cache hit for path Le tour du monde en 80 jours - Saison 1 Épisode 3.mkv
[pred] ignore 'Le tour du monde en 80 jours - Saison 1 Épisode 7.mkv' = false
[update] buildUpdateRec: /media/freebox/S\195\169ries/Le tour du monde en 80 jours - Saison 1 \195\137pisode 7.mkv
[update]   buildUpdate -> New file
[fpcache] cache hit for path Le tour du monde en 80 jours - Saison 1 Épisode 7.mkv
[pred] ignore 'Le tour du monde en 80 jours - Saison 1 Épisode 8.mkv' = false
[update] buildUpdateRec: /media/freebox/S\195\169ries/Le tour du monde en 80 jours - Saison 1 \195\137pisode 8.mkv
[update]   buildUpdate -> New file
[fpcache] cache miss for path Le tour du monde en 80 jours - Saison 1 Épisode 8.mkv
[pred] ignore 'Le tour du monde en 80 jours - Saison 1.mkv' = false
  Le tour du monde en 80 jours - Saison 1.mkv
[update] buildUpdateRec: /media/freebox/S\195\169ries/Le tour du monde en 80 jours - Saison 1.mkv
[update]   buildUpdate -> New file
[fpcache] cache miss for path Le tour du monde en 80 jours - Saison 1.mkv

Mais aucune difficulté en mode basique

a@et:~$ sudo rsync -av --stats --progress /media/freebox/Séries  /media/ZFS/a
sending incremental file list
Séries/
Séries/Le tour du monde en 80 jours - Saison 1 Episode 4.mkv
     17.858.560   3%    1,41MB/s    0:06:06  ^Crsync error: received SIGINT, SIGTERM, or SIGHUP (code 20) at io.c(518) [generator=3.2.7]

rsync error: received SIGINT, SIGTERM, or SIGHUP (code 20) at rsync.c(713) [sender=3.2.7]
a@et:~$

En fait, il n'y a peut-être pas de bug. Le logiciel pourrait commencer par prendre une empreinte de toutes les données avant de commencer les transferts.

Cela semble être la cas.   La fin de la trace

19 items will be synced, 1 skipped
0 B to be synced from a to Séries
15.00 GiB to be synced from Séries to a

Proceed with propagating updates? [] 
Unrecognized command '\027[B': try again  [type '?' or F1 for help]
Proceed with propagating updates? [] 
Unrecognized command '\027[B': try again  [type '?' or F1 for help]

*
Et la terminaison. La cause étant  le manque de place dans la partition locale

Synchronization incomplete at 15:38:21  (7 items transferred, 1 skipped, 12 failed)
  skipped: unison.txt (properties changed on both sides)
  failed: Le tour du monde en 80 jours - Saison 1.mkv
<>!  failed: Nautilus - Saison 1 Épisode 1.mkv
  failed: Nautilus - Saison 1 Épisode 10.mkv
  failed: Nautilus - Saison 1 Épisode 2.mkv
  failed: Nautilus - Saison 1 Épisode 3.mkv
  failed: Nautilus - Saison 1 Épisode 4.mkv
  failed: Nautilus - Saison 1 Épisode 5.mkv
<>$  failed: Nautilus - Saison 1 Épisode 6.mkv
  failed: Nautilus - Saison 1 Épisode 7.mkv
  failed: Nautilus - Saison 1 Épisode 8.mkv
  failed: Nautilus - Saison 1 Épisode 9.mkv
  failed: Nautilus - Saison 1.mkv
<>$<>Starting new major GC cycle

real	104m24,163s
user	0m53,083s
sys	0m38,271s

Dernière modification par geole (Le 16/11/2024, à 16:26)


Les grilles de l'installateur https://doc.ubuntu-fr.org/tutoriel/inst … _subiquity
"gedit admin:///etc/fstab" est proscrit,  utilisez "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xdg-open /etc/fstab" Voir  https://doc.ubuntu-fr.org/gedit
Les partitions EXT4 des disques externes => https://forum.ubuntu-fr.org/viewtopic.p … #p22697248

En ligne

#7 Le 16/11/2024, à 15:00

krodelabestiole

Re : Synchroniser Dossier Local avec Serveur Domestique

perso je ne suis pas sûr de voir l'intérêt de cette méthode.

le stockage connecté à la freebox est en principe toujours disponible. tu peux même facilement le rendre accessible sur internet de manière sécurisée.
depuis ton ordi tu peux travailler dessus comme tu le ferais d'un stockage local.
attention surtout au fait qu'il ne s'agit pas d'une sauvegarde : si on écrase ou supprime du contenu par erreur, ou qu'un fichier est corrompu, le problème sera reproduit automatiquement de l'autre côté (pas de versioning comme avec nexcloud par ex.).

peut-être pour partager du contenu même quand l'ordi est éteint et travailler rapidement avec un SSD par ex. en local...

en fonction de tes besoins il pourrait être plus intéressant de mettre en place un système de versioning, avec timeshift ou rsnapshot par ex.

dans le cas contraire, oui, rsync et unison sont des outils appropriés pour synchroniser deux répertoires.
ou n'importe quelle interface graphique pour rsync, si tu n'es pas à l'aise avec la ligne de commande (grsync).

un autre outil approprié est la documentation ubuntu-fr : https://doc.ubuntu-fr.org/unison
que je te conseille d'utiliser en priorité pour ce genre de question basique.

Hors ligne

#8 Le 16/11/2024, à 17:31

geole

Re : Synchroniser Dossier Local avec Serveur Domestique

Lubuntu2024 a écrit :

Étape 4 : Synchroniser avec Unison

Pour synchroniser les dossiers, exécutez la commande suivante :

bash

unison ~/sync.prf

Étape 5 : Automatiser la synchronisation au démarrage

Pour automatiser la synchronisation à chaque ouverture de session, vous pouvez créer un script et l'ajouter à vos applications de démarrage.

    Créez un script :

bash

nano ~/sync_script.sh

Ajoutez le contenu suivant :

bash

#!/bin/bash
unison ~/sync.prf

    Rendez le script exécutable :

bash

chmod +x ~/sync_script.sh

La fin est du n'importe quoi

a@et:~$ wc ~/sync.prf
  7   9 116 /home/a/sync.prf
a@et:~$ unison ~/sync.prf
Usage: unison [options]
    or unison root1 root2 [options]
    or unison profilename [options]

For a list of options, type "unison -help".
For a tutorial on basic usage, type "unison -doc tutorial".
For other documentation, type "unison -doc topics".
To start interactive profile selection, type "unison -i".

Profile '/home/a/sync.prf' does not exist (looking for file /home/a/.unison//home/a/sync.prf.prf)

Voici la correction

a@et:~$ mv -v ~/sync.prf .unison
renommé '/home/a/sync.prf' -> '.unison/sync.prf'
a@et:~$ unison sync.prf
Unison 2.53.3 (ocaml 4.14.1): Contacting server...
Looking for changes
Reconciling changes
chgd dir <-?-> deleted    Séries  
a            : changed dir        modified on 2024-11-16 at 13:46:34  size 40        rwxr-xr-x
Séries      : deleted
props    <-?-> props      unison.txt  
a            : changed props      modified on 2024-11-16 at 12:53:08  size 0         rw-rw-r--
Séries      : changed props      modified on 2024-11-16 at 12:54:07  size 0         rwxr-xr-x
         <---- new file   Le tour du monde en 80 jours - Saison 1.mkv  
         <---- new file   Nautilus - Saison 1 Épisode 1.mkv  
         <---- new file   Nautilus - Saison 1 Épisode 10.mkv  
         <---- new file   Nautilus - Saison 1 Épisode 2.mkv  
         <---- new file   Nautilus - Saison 1 Épisode 3.mkv  
         <---- new file   Nautilus - Saison 1 Épisode 4.mkv  
         <---- new file   Nautilus - Saison 1 Épisode 5.mkv  
         <---- new file   Nautilus - Saison 1 Épisode 6.mkv  
         <---- new file   Nautilus - Saison 1 Épisode 7.mkv  
         <---- new file   Nautilus - Saison 1 Épisode 8.mkv  
         <---- new file   Nautilus - Saison 1 Épisode 9.mkv  
         <---- new file   Nautilus - Saison 1.mkv  
new file ---->            Transfert1  

13 items will be synced, 2 skipped
40 B to be synced from a to Séries
11.58 GiB to be synced from Séries to a
Propagating updates
Unison 2.53.3 (ocaml 4.14.1) started propagating changes at 17:23:44.40 on 16 Nov 2024
[CONFLICT] Skipping Séries
  conflicting updates
[CONFLICT] Skipping unison.txt
  properties changed on both sides
[BGN] Copying Le tour du monde en 80 jours - Saison 1.mkv from /media/freebox/Séries to /media/ZFS/a
  0%  0/13  (67.0 MiB of 11.58 GiB)  69.3 MiB/s    00:01:31 ETA^C

Update propagation interrupted. It may take a while to stop.
If the process doesn't stop soon then wait or press Ctrl-C
3 more times to force immediate termination.


Failed [Le tour du monde en 80 jours - Saison 1.mkv]: Aborted by user request

D'autre part, je serais surpris que la version récente de  ton logiciel ne connaisse pas la notion de services.  Peux-tu donner ce retour

systemctl list-units | wc -l

et si supporté, faire le fichier $HOME/.config/systemd/user/unison.service avec ces lignes

[Unit]
Description=Synchronisation de la freebox.
DefaultDependencies=no
[Service]
Type=simple
Environment="LAPS=3m 30s"
Environment="PARAM=sync.prf"
TimeoutStartSec=5min
ExecStartPre=echo  Démarrage unison.
ExecStartPre=/bin/sleep $LAPS
ExecStart=/usr/bin/unison $PARAM
ExecStopPost=echo Terminaison unison.
StandardOutput=journal+console
[Install]
WantedBy=default.target

Et le rendre exécutable avec cette commande

chmod 664  $HOME/.config/systemd/user/unison.service

afin  d'avoir un suivi facilité tel que cela

Toutes les 30,0s: systemctl --user status unison                              et: Sat Nov 16 18:16:47 2024

● unison.service - synchronisation de la freebox
     Loaded: loaded (/home/a/.config/systemd/user/unison.service; disabled; preset: enabled)
     Active: active (running) since Sat 2024-11-16 18:08:36 CET; 8min ago
   Main PID: 10761 (unison)
      Tasks: 1 (limit: 8170)
     Memory: 383.1M (peak: 383.3M)
        CPU: 18.573s
     CGroup: /user.slice/user-1000.slice/user@1000.service/app.slice/unison.service
             └─10761 /usr/bin/unison sync.prf

nov. 16 18:09:08 et unison[10761]: 7.12 GiB to be synced from Séries to a
nov. 16 18:09:08 et unison[10761]: Propagating updates
nov. 16 18:09:08 et unison[10761]: [110B blob data]
nov. 16 18:09:08 et unison[10761]: [51B blob data]
nov. 16 18:09:08 et unison[10761]:   conflicting updates
nov. 16 18:09:08 et unison[10761]: [54B blob data]
nov. 16 18:09:08 et unison[10761]:   properties changed on both sides
nov. 16 18:09:08 et unison[10761]: [125B blob data]
nov. 16 18:10:27 et unison[10761]: [48.0K blob data]
nov. 16 18:13:54 et unison[10761]: [47.9K blob data]

après avoir activé et lancé le service la première fois

systemctl --user enable unison ; systemctl --user start unison

Bon à savoir.

a@et:~/.unison$ unison sync.prf
Unison 2.53.3 (ocaml 4.14.1): Contacting server...
Looking for changes
Reconciling changes
props    <-?-> props      unison.txt  
a            : changed props      modified on 2024-11-16 at 12:53:08  size 0         rw-rw-r--
Séries      : changed props      modified on 2024-11-16 at 12:54:07  size 0         rwxr-xr-x
new file ---->            fic.txt  
new file ---->            fic1.txt  

2 items will be synced, 1 skipped
8 B to be synced from a to Séries
0 B to be synced from Séries to a
Propagating updates
Unison 2.53.3 (ocaml 4.14.1) started propagating changes at 14:07:31.90 on 18 Nov 2024
[CONFLICT] Skipping unison.txt
  properties changed on both sides
[BGN] Copying fic.txt from /media/ZFS/a to /media/freebox/Séries
Failed [fic.txt]: Failed to set permissions of file /media/freebox/Séries/.unison.fic.txt.5de9b7b220076e7c402a94c28efa71f8.unison.tmp to rw-rw-r--: the permissions was set to rwxr-xr-x instead. The filesystem probably does not support all permission bits. If this is a FAT filesystem, you should set the "fat" option to true. Otherwise, you should probably set the "perms" option to 0o1646 (or to 0 if you don't need to synchronize permissions).
[BGN] Copying fic1.txt from /media/ZFS/a to /media/freebox/Séries
[END] Copying fic1.txt
Unison 2.53.3 (ocaml 4.14.1) finished propagating changes at 14:07:31.94 on 18 Nov 2024, 0.041 s
Saving synchronizer state            
Synchronization incomplete at 14:07:31  (1 item transferred, 1 skipped, 1 failed)
  skipped: unison.txt (properties changed on both sides)
  failed: fic.txt

a@et:~/.unison$ ls -l /media/ZFS/a/fic*
-rwxr-xr-x 1 a a 4 nov.  18 14:05 /media/ZFS/a/fic1.txt
-rw-rw-r-- 1 a a 4 nov.  18 13:46 /media/ZFS/a/fic.txt
a@et:~/.unison$ 

a@et:~/.config/systemd/user$ df -hTtcifs
Sys. de fichiers                Type Taille Utilisé Dispo Uti% Monté sur
//mafreebox.freebox.fr/disque 2 cifs   459G    378G   82G  83% /media/freebox
a@et:~/.config/systemd/user$ 

Dernière modification par geole (Le 19/11/2024, à 17:06)


Les grilles de l'installateur https://doc.ubuntu-fr.org/tutoriel/inst … _subiquity
"gedit admin:///etc/fstab" est proscrit,  utilisez "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xdg-open /etc/fstab" Voir  https://doc.ubuntu-fr.org/gedit
Les partitions EXT4 des disques externes => https://forum.ubuntu-fr.org/viewtopic.p … #p22697248

En ligne

#9 Le 19/11/2024, à 03:55

Lubuntu2024

Re : Synchroniser Dossier Local avec Serveur Domestique

Bonjour à tous,

Merci de m'avoir répondu. Je ne comprends pas ce qu'il faut que j'entre dans le terminal comme "commandes".
Pouvez-vous m'expliquer svp ?

Merci,

Hors ligne

#10 Le 19/11/2024, à 10:06

geole

Re : Synchroniser Dossier Local avec Serveur Domestique

Bonjour.
Il n'est pas du tout facile de savoir ce que tu as fait exactement et encore plus difficile de visualiser ce qui ne marche pas.
Commence donc par faire un copier/coller de la commande qui ne marche pas avec le retour qu'elle indique.


Les grilles de l'installateur https://doc.ubuntu-fr.org/tutoriel/inst … _subiquity
"gedit admin:///etc/fstab" est proscrit,  utilisez "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xdg-open /etc/fstab" Voir  https://doc.ubuntu-fr.org/gedit
Les partitions EXT4 des disques externes => https://forum.ubuntu-fr.org/viewtopic.p … #p22697248

En ligne

#11 Le 19/11/2024, à 11:21

krodelabestiole

Re : Synchroniser Dossier Local avec Serveur Domestique

installe unison GTK depuis la logithèque, monte le stockage de la freebox avec GNOME fichiers et tu n'auras besoin d'aucune ligne de commande.

Hors ligne

#12 Le 19/11/2024, à 15:54

Lubuntu2024

Re : Synchroniser Dossier Local avec Serveur Domestique

Merci,
Voici les commandes qui passent :

sudo apt update
sudo apt install unison
o
nano ~/sync.sh
#!/bin/bash

# Dossier local
LOCAL_DIR="/home/delluser/dossier-local"

# Répertoire du serveur Freebox
REMOTE_DIR="smb://freebox-server.local/disque dur/"

# Synchronisation avec Unison
unison "$LOCAL_DIR" "$REMOTE_DIR" -batch
chmod +x ~/sync.sh

Ensuite je ne sais pas ce qu'il faut entrer.

Hors ligne

#13 Le 19/11/2024, à 16:08

geole

Re : Synchroniser Dossier Local avec Serveur Domestique

As-tu vérifié que le script fonctionnait bien avant  de passer  à la suite?
Pour cela

 ~/sync_script.sh

La suite est  de dire d'automatiser. D'après la documentation
il faut frapper cette commande

gnome-session-properties

ou alors
   1) Cliquer sur l'icône "afficher les applications"    qui est tout en bas à gauche
   2) Cliquer sur l'icône "applications au "   représentée pat un carré bleu semblant contenir une lettre timbrée.
Tu auras alors une grille permettant d'ajouter la commande.

Pour vérifié que c'est lien lancé, au boot suivant

journalctl -b --no-pager -g "Application launched by gnome-session-binary"

Dernière modification par geole (Aujourd'hui à 06:38)


Les grilles de l'installateur https://doc.ubuntu-fr.org/tutoriel/inst … _subiquity
"gedit admin:///etc/fstab" est proscrit,  utilisez "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xdg-open /etc/fstab" Voir  https://doc.ubuntu-fr.org/gedit
Les partitions EXT4 des disques externes => https://forum.ubuntu-fr.org/viewtopic.p … #p22697248

En ligne

#14 Hier à 08:42

Lubuntu2024

Re : Synchroniser Dossier Local avec Serveur Domestique

Merci pour ta réponse.
Voici le retour du Terminal

delluser@PCDell:~$ ~/sync.sh
Fatal error: There's a problem with one of the roots:
"smb://freebox-server.local/disque%20dur/PERSONNEL/Produits": unrecognized protocol smb

Je ne comprends pas pourquoi j'ai une erreur, sachant que dans l'explorateur de fichier du système "PacMan FM-QT" je vois bien le dossier PERSONNEL de ma FreeBox.

Hors ligne

#15 Hier à 10:52

geole

Re : Synchroniser Dossier Local avec Serveur Domestique

ChatGPT a écrit :

Étape 2 : Monter le répertoire SMB
Avant de synchroniser, vous devez vous assurer que le répertoire SMB est monté automatiquement au démarrage.
Pour monter automatiquement le répertoire au démarrage, vous pouvez ajouter une entrée dans le fichier /etc/fstab. Ajoutez la ligne suivante :
//freebox-server.local/disque\ dur /mnt/freebox cifs username=YOUR_USERNAME,password=YOUR_PASSWORD,uid=1000,gid=1000,iocharset=utf8 0 0

Étape 3 : Configurer Unison
Créez un fichier de profil pour Unison

nano ~/sync.prf

Ajoutez le contenu suivant :
root = /home/delluser/dossier-local
root = /mnt/freebox
# Options de synchronisation
auto = true
batch = true

Bonjour.
Reconnais que le mot smb n'est pas le mot mnt
En principe, lorsqu'on demande  de l'aide, on applique les recomandations à la lettre. Ce n'est que lorsqu'on a vérifié que c'est  correct qu'il devient possible de l'adapter à sa sauce en s'aidant des diverses documentations.
Note que krodelabestiole t'a fourni un  lien de création graphique.

Dernière modification par geole (Hier à 10:56)


Les grilles de l'installateur https://doc.ubuntu-fr.org/tutoriel/inst … _subiquity
"gedit admin:///etc/fstab" est proscrit,  utilisez "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xdg-open /etc/fstab" Voir  https://doc.ubuntu-fr.org/gedit
Les partitions EXT4 des disques externes => https://forum.ubuntu-fr.org/viewtopic.p … #p22697248

En ligne

#16 Hier à 11:04

Lubuntu2024

Re : Synchroniser Dossier Local avec Serveur Domestique

Pour l'étape 2,
Qu'est-ce qu'il faut que je marque pour me connecter au serveur Freebox sachant que j'y vais en mode invité et sans mot de passe ?

//freebox-server.local/disque\ dur /mnt/freebox cifs username=YOUR_USERNAME,password=YOUR_PASSWORD,uid=1000,gid=1000,iocharset=utf8 0 0

Pour Unison je n'ai pas compris où on pouvait l'installer en "mode graphique". Où se trouve Logiteque & GNOME FICHIERS stp ?

Dernière modification par Lubuntu2024 (Hier à 11:10)

Hors ligne

#17 Hier à 11:20

geole

Re : Synchroniser Dossier Local avec Serveur Domestique

Dans, ce cas,

//freebox-server.local/disque\040dur /mnt/freebox cifs uid=1000,gid=1000,iocharset=utf8,r/w 0 0
## ou peut-être
//freebox-server.local/disque%20dur /mnt/freebox cifs uid=1000,gid=1000,iocharset=utf8,r/w 0 0
### Voir
//freebox-server.local/disque%20dur/PERSONNEL/Produits /mnt/freebox cifs uid=1000,gid=1000,iocharset=utf8,r/w 0 0

et vérifie que tu y as bien accès en écriture.

Pour installer le mode graphique
ouvre la documentation unison

Installation
Installez le paquet unison. Pour l'interface graphique, installez également unison-gtk.

et clique sur le mot unison-gtk ou

sudo apt install unison-gtk

Dernière modification par geole (Aujourd'hui à 06:25)


Les grilles de l'installateur https://doc.ubuntu-fr.org/tutoriel/inst … _subiquity
"gedit admin:///etc/fstab" est proscrit,  utilisez "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xdg-open /etc/fstab" Voir  https://doc.ubuntu-fr.org/gedit
Les partitions EXT4 des disques externes => https://forum.ubuntu-fr.org/viewtopic.p … #p22697248

En ligne

#18 Hier à 12:34

Lubuntu2024

Re : Synchroniser Dossier Local avec Serveur Domestique

OK j'ai réussi à faire installer Unison et Unison-GTK.
En revanche comment faire pou vérifier que j'ai bien "accès en écriture" ?

Hors ligne

#19 Hier à 14:08

geole

Re : Synchroniser Dossier Local avec Serveur Domestique

Tu peux vérifier avec ces commandes

ls -l /mnt/freebox

qui doit donner la liste des fichiers de la freebox.
Mais il me semble que la consigne initiale a oublié de dire de créer le répertoire et de monter la partition.
Faire

sudo mkdir -v /mnt/freebox
sudo mount -av

Puis pour vérifier qu'il est possible d'y écrire.

echo essai écriture > /mnt/freebox/fic.txt
cat /mnt/freebox/fic.txt

Dernière modification par geole (Hier à 14:15)


Les grilles de l'installateur https://doc.ubuntu-fr.org/tutoriel/inst … _subiquity
"gedit admin:///etc/fstab" est proscrit,  utilisez "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xdg-open /etc/fstab" Voir  https://doc.ubuntu-fr.org/gedit
Les partitions EXT4 des disques externes => https://forum.ubuntu-fr.org/viewtopic.p … #p22697248

En ligne