Partager ses données entre plusieurs systèmes d'exploitation

avatar-Nicolas Nicolas
Publié le

Au programme aujourd'hui : une méthode simple et classe pour partager vos données entre les différents systèmes d'exploitation installés sur une même machine.

Déjà pourquoi avoir plusieurs OS ? Parce que vous êtes un geek (sinon vous ne liriez pas ces lignes…) et parce que cela permet de répondre à des besoins différents : on peut imaginer une configuration XBMC pour le multimédia, Ubuntu/Debian pour la bureautique, Windows pour les jeux, …

À noter que même sur une configuration mono OS, cela peut être intéressant également de séparer les données de la partition OS (en cas de réinstallation du système par exemple).

Donc l'idée est simple, on partitionne comme suit (on va prendre l'hypothèse d'une machine avec 2 OS Linux) :

  • une partition système Linux 1 (dans notre exemple, appelons là sda1, en système de fichiers ext4),
  • une partition système Linux 2 (sda2 en ext4),
  • une partition données (sda3 en ext4 également, sauf si vous souhaitez la partager avec un Windows ; auquel cas il faudra utiliser du NTFS),
  • tout autre partition que vous utilisez habituellement (swap, /boot,…).

La ruse consiste à laisser le répertoire utilisateur (/home) avec la racine (/) dans chaque partition système.

Vous allez me répondre "Ok mais alors mes données sont à répliquer dans chaque partition, c'est complètement nul ton truc !", mais que nenni : car nous allons faire pointer les différents répertoires /home/utilisateur/Documents (et autres) vers votre partition données. Classe, non ?

Alors commençons par structurer la partition données avec les répertoires suivants (standards Ubuntu, vous pouvez évidement faire autrement si vous préférez…) :

  • Bureau
  • Images
  • Musique
  • Téléchargements
  • Documents
  • Vidéos

Ensuite, nous allons utiliser mtab et fstab pour monter automatiquement la partition données (sda3) au démarrage de l'OS, montez la partition dans Fichiers puis dans un terminal tapez :

more /etc/mtab

La dernière ligne doit ressembler à quelque chose comme cela :

/dev/sda3 /media/utilisateur/data ext4 rw,nosuid,nodev,uhelper=udisks2 0 0

Copiez cette ligne et saisissez dans le terminal (en root) :

nano /etc/fstab

Et insérez la ligne copiée précédemment à la fin. Vous pouvez bien sûr l'optimiser (noatime pour un disque SSD notamment).

C'est maintenant que c'est intéressant, nous allons utiliser l'option mount avec l'option bind, ajoutez les lignes suivantes :

/media/utilisateur/data/Images /home/utilisateur/Images none rw,bind 0 0
/media/utilisateur/data/Musique /home/utilisateur/Musique none rw,bind 0 0
/media/utilisateur/data/Telechargements /home/utilisateur/Telechargements none rw,bind 0 0
/media/utilisateur/data/Documents /home/utilisateur/Documents none rw,bind 0 0
/media/utilisateur/data/Videos /home/utilisateur/Videos none rw,bind 0 0
/media/utilisateur/data/Bureau /home/utilisateur/Bureau none rw,bind 0 0

Et c'est tout. Votre répertoire utilisateur pointe désormais sur la partition partagée contenant les données. Il faudra évidement faire la même chose sur le second OS.

Pour vérifier, démontez la partition données et saisissez dans le terminal (en root) :

mount -a

Normalement, vous devriez pouvoir naviguer dans les données stockées sur la partition dédiée en passant par votre /home (et ainsi via les raccourcis de Fichiers).

Si votre machine est multi-utilisateurs, pensez à ajouter un niveau de répertoire pour gérer les droits de chacun.