J'ai un répertoire appelé my_projects_linux
dans le système de fichiers Ubuntu, qui contient tout mon travail depuis de nombreuses années. Le répertoire contient des fichiers, des sous-répertoires et ainsi de suite.
À des fins de sauvegarde, je copie occasionnellement ce répertoire et tout son contenu sur un disque dur externe.
Ainsi, le contenu de mon disque dur externe ressemble à ceci :
/mounted_drive/my_projects_linux
/mounted_drive/my_projects_windows # the same idea to backup Windows work
Donc, ce que je cherche est une commande qui :
-
Travaillerait comme
cp /home/my_projects_linux /mounted_drive/my_projects_linux
Il doit remplacer les anciens fichiers, sous-répertoires, fichiers dans les sous-répertoires, etc. du disque externe par le nouveau contenu de mon PC.
-
Soyez rapide . Il ne doit copier que les fichiers modifiés ou ceux qui ont été nouvellement créés. Étant donné que la taille de
my_projects_linux
est >50 Go, tout copier prend plus d'une heure, ce qui est trop lent. En réalité, souvent seuls quelques Mo ont changé depuis la dernière sauvegarde, donc théoriquement une copie peut être faite beaucoup plus rapidement.
Comment faire ?
J'ai googlé ce cp avec le -u
drapeau pourrait éventuellement correspondre à mes besoins. Cela fonctionnerait-il (par exemple, cela permettrait-il de gérer correctement les sous-répertoires de sous-répertoires) ?
De plus, le stockage du système de fichiers sur un disque externe est-il un moyen approprié de faire une sauvegarde, ou existe-t-il un moyen plus sophistiqué ? Par exemple, en utilisant un nuage ? Notez que la manière plus fantaisiste doit être simple, car sinon elle ne compensera pas la facilité d'exécution d'une commande Shell.