Création d'une partition commune entre Windows et Ubuntu

Souvent lors d'une cohabitation entre Windows et Ubuntu, une des difficultés que l'on rencontre est l'accès commun aux données pour les deux systèmes.
En effet, Windows ne sachant pas nativement lire les partitions EXT4 d'Ubuntu, vous ne pourrez pas, à partir d'un Windows, accéder à vos données stockées sur une partition Ubuntu. Il est donc nécessaire de créer une partition Windows en NTFS ou en EXFAT que ubuntu saura lire et écrire.

Le EXFAT est préférable dans l'un des trois cas suivants:
  • A terme vous pensez ne plus utiliser windows: Il faudra donc ne plus avoir de partition NTFS qui n'est parfaitement réparable qu'avec windows.
  • Vous estimez nécessaire de conserver la fonctionnalité d'hibernation de windows: Dans ce contexte, La partition EXFAT reste disponible en écriture contrairement à la partition NTFS.
  • Vous disposez d'une alimentation électrique ou d'un système informatique instable. Le format EXFAT ne nécessite pas de réparation lors d'un démarrage consécutif à un arrêt non prévu de l'ordinateur contrairement à la partition NTFS. Cependant le mécanisme de protection contre les utilisateurs non autorisés est limité et le fonctionnement de la corbeille n'est pas possible.

Ce tutoriel décrit la marche à suivre pour créer cette partition.

Les dossiers Bureau, Modèles et Public ne sont pas concernés par ce tutoriel. Ainsi, toutes les données que vous avez l'habitude d'y enregistrer ne seront pas accessibles à Windows. Nous décrirons le processus pour un utilisateur banalisé. S'il y a plusieurs utilisateurs sur le système, chaque utilisateur doit refaire les séquences spécifiques de cette procédure.

Normalement vous devriez déjà avoir au moins deux partitions, une en NTFS avec Windows et une autre en EXT4 pour Ubuntu. Étant donné que l'on ne souhaite pas stocker ses données sous Ubuntu, il n'est pas nécessaire de créer une partition home séparée.
Il faut donc créer une partition, que nous appellerons Commun, par convention. Pour cela il suffit de réduire la partition Windows avec gparted, ou l'outil Windows ET CRÉER UNE NOUVELLE PARTITION AVEC L'ESPACE LIBÉRÉ ET lui donner l'étiquette Commun.
Si vous aviez déjà une autre partition NTFS avec vos données sous Windows, il vous faudra simplement lui donner l'étiquette Commun.

Pour faciliter l'accès aux dossiers des données personnelles, il est possible de créer une bibliothèque.

Les dossiers partagés avec ubuntu vont être stockés dans le volume Commun, probablement accessible par la lettre D:, dans les sous-répertoires suivants: Documents, Images, Musique, Téléchargements, Vidéos du répertoire "Nom de l'utilisateur UNIX dont le nom correspond au nom de l'utilisateur windows". Si vous avez bien choisi, cela peut avoir la même valeur.

Vous pouvez les créer préventivement ou attendre que ubuntu les installe. Vous pouvez aussi y déposer vos propres fichiers que vous souhaitez faire connaître à ubuntu. Voici un exemple.

Allez dans le volume C: puis naviguez jusqu'à vos dossiers : Utilisateurs → Votre_nom_d'utilisateur (C:\Users\utilisateurs). Faites un clic droit sur les dossiers concernés, par exemple Documents, puis dans l'onglet Emplacement cliquez sur Déplacer. Naviguez jusqu'au volume Commun → Nom d'utilisateur → Documents. Voir cette page.

Si vous avez déjà une telle bibliothèque, vous pouvez l'adapter pour qu'elle devienne conforme à la proposition d'installation. Vous pouvez aussi modifier la façon d'installer pour rester conforme à votre organisation.

Si vous êtes, avec certitude, le seul utilisateur, vous pouvez ne pas créer le répertoire "Nom de l'utilisateur UNIX dont le nom correspond au nom de l'utiliseur windows". Il faudra en tenir compte par la suite.

Il est nécessaire de paramétrer un montage automatique comme décrit sur ce tutoriel sinon l'accès aux données n'est pas possible. Cette action n'est à réaliser qu'une seule fois. Vous pouvez aussi faire le montage en ligne de commande:

Version avant ubuntu 22.04

sudo mkdir -v /media/Commun
echo LABEL=Commun  /media/Commun ntfs nosuid,nodev,windows_names,nofail,x-gvfs-show 0 0 | sudo tee -a /etc/fstab
ou
echo LABEL=Commun  /media/Commun ntfs-3g defaults,windows_names,nofail,x-gvfs-show 0 0 | sudo tee -a /etc/fstab
sudo mount -va 

Version depuis ubuntu 22.04

Un nouveau pilote est disponible

sudo mkdir -v /media/Commun
echo LABEL=Commun  /media/Commun ntfs3 defaults,nofail,x-gvfs-show,nohidden,sys_immutable,uid=1000,gid=1000 0 0 | sudo tee -a /etc/fstab
sudo mount -va 

Il existe des sécurités pour interdire d'écrire ou de créer dans certains endroits. La documentation expliquant le fonctionnement reste à trouver. Il semble qu'il soit possible de choisir directement le C: en ne pouvant pas faire n'importe quoi.

En utilisant la grille des permissions, on peut assez facilement se mettre en autorisation d'écriture répertoire par répertoire.

Les anciennes techniques de montage restent utilisables.

Problème rencontré :
  • En essayant la deuxième version avec Ubuntu 22.04.3 LTS; j' ai eu des problèmes de permission; en utilisant la première commande ca a marche. Tester la création d'un fichier après le mount pour vérifier la ligne rajoutée a /etc/fstab .
  • En effet, ntfs ou ntfs-3g qui sont équivalent sous ubuntu 22.04 et sont différents de ntfs3? ntfs3 qui est recommandé par la communauté
  • Après plusieurs essais; ces options marchent bien avec ntfs3 : nosuid,nodev,windows_names,nofail,uid=1000,gid=1000
  • Les options tels que x-gvfs-show,nohidden,sys_immutable ne sont pas nécessaires; certaines ne sont pas compatibles pour ubuntu

Ces commentaires sont soumis pour revue.

Pour faciliter l'accès aux dossiers des données personnelles et pour ne pas perdre l'enregistrement automatique des applications dans les dossiers par défaut (par exemple LibreOffice va enregistrer automatiquement les fichiers dans Documents, un logiciel pour ripper les CD dans Musique, etc) il faudra indiquer aux logiciels que l'emplacement a changé de place et est maintenant dans la partition appelée /media/Commun.

Création des dossiers

Si les dossiers n'ont pas été créés par windows ou une ancienne installation de ubuntu ou d'un autre O.S., il faudra créer les cinq dossiers prévus dans /media/Commun/NomDeL'utilisateur soit avec l'interface graphique, soit en ligne de commande

mkdir -pv /media/Commun/$USER/{Documents,Images,Musique,Vidéos,Téléchargements}

Duplication du contenu des dossiers

Plus cette action est faite rapidement, moins il y aura de fichiers à dupliquer. Si cette action est faite immédiatement après l'installation, il n'y en a pas. Cette duplication peut se faire avec l'interface graphique ou en ligne de commandes.

cp -vru $HOME/{Documents,Images,Musique,Vidéos,Téléchargements}  /media/Commun/$USER

Suppression des dossiers d'origine

Les dossiers doivent être supprimés. Les conserver ou les refabriquer ultérieurement provoquera des doublons avec la référence officielle et des conséquences non connues. Cette suppression peut se faire avec l'interface graphique ou en ligne de commandes.

rm -rv $HOME/{Documents,Images,Musique,Vidéos,Téléchargements}

Mise à jour du référentiel applicatif

En général, les interfaces graphiques ignorent en standard les répertoires et fichiers cachés. Seule la ligne de commande est possible pour ce contexte.

On va donc indiquer au référentiel que les répertoires ne sont plus à l'endroit officiel avec ces commandes:

xdg-user-dirs-update --set DOCUMENTS /media/Commun/$USER/Documents
xdg-user-dirs-update --set PICTURES  /media/Commun/$USER/Images
xdg-user-dirs-update --set MUSIC     /media/Commun/$USER/Musique
xdg-user-dirs-update --set DOWNLOAD  /media/Commun/$USER/Téléchargements
xdg-user-dirs-update --set VIDEOS    /media/Commun/$USER/Vidéos

On va aussi dire que l'O.S. de base n'a pas à les modifier même lorsque la partition COMMUN est en incident!.

cp -nv /etc/xdg/user-dirs.conf $HOME/.config && sed -i 's/True/False/' $HOME/.config/user-dirs.conf 

Toutes les applications respectant cette norme continueront de bien fonctionner et prendront en charge les nouveaux répertoires. Malheureusement l'application fichiers continue d'afficher les anciens noms. En cliquant dessus, on obtient le message "Oups ! Quelque chose c'est mal passé". Pour éviter ce piège, le plus simple est de se déconnecter et se reconnecter pour réinitialiser l'interface graphique.

Quelques commandes utiles

  • Créer un nouveau répertoire
    xdg-user-dirs-update --set DIVERS    /media/Commun/$USER/Divers
  • Lister les fichiers d'un répertoire
    ls -ls $(xdg-user-dir PUBLICSHARE)
  • Lire un fichier
    xdg-open $(xdg-user-dir PUBLICSHARE)/Date_SAVE.txt

Pour terminer il est aussi possible de créer une corbeille commune entre Ubuntu et la partition Commun mais pas avec windows.

La création du répertoire caché et l'allocation à l'utilisateur sont à faire avec les commandes suivantes:

sudo mkdir -v /media/Commun/.Trash-$UID
sudo chown -v $USER /media/Commun/.Trash-$UID

Si plusieurs utilisateurs sont définis dans windows et dans ubuntu et qu'ils ne s'entendent pas très bien, il peut être nécessaire de paramétrer le fichier de permissions afin que chacun reste dans son coin bien sagement. Pour plus de détails, read-me

Exemple d'appairage fait par le fichier /home/.NTFS-3G/UserMapping

1000:1000:S-1-5-21-1833069642-4243175381-1340018762-1002
1001:1001:S-1-5-21-1833069642-4243175381-1340018762-1008

Rappel. En standard, tout est autorisé.

Jusqu'à la version 21.10, le logiciel utilisé est NTFS-3G.

Depuis le version 22.04 le logiciel utilisé est NTFS3 de la sociétéParagon permettant 50% de gain dans les écritures.

Vous pourrez maintenant accéder à vos données que vous soyez sous Windows ou sous Ubuntu de façon totalement transparente.

Vous pouvez faire la même chose entre plusieurs O.S libres. A lire pour toutes les explications.

  • tutoriel/partitions_communes_windows_ubuntu.txt
  • Dernière modification: Le 10/01/2024, 00:09
  • par 77.197.14.168