Apportez votre aide…
Ceci est une ancienne révision du document !
Note aux utilisateurs de Ubuntu 5.10 et 6.06 : un outil graphique vous permet de gérer facilement (mais de façon moins poussée) vos partitions. Pour plus d'informations sur cet utilitaire, consultez le document concernant l'outil de montage de disques. (Cet outil n'apparaît plus dans Ubuntu 6.10.)
Comment accéder à ses partitions Windows depuis Linux ?
Pour les personnes utilisant Ubuntu installé en multi-amorçage avec Microsoft Windows, il peut être intéressant de pouvoir accéder aux partitions FAT32 et NTFS de Windows, afin de pouvoir récupérer des fichiers et les utiliser sous Linux. Le plus agréable serait que la partition soit accessible automatiquement lors du démarrage sous Ubuntu. Ce document a pour but de vous aider à rendre les partitions Windows accessibles automatiquement depuis Ubuntu.
1° : Création d'un point de montage
Il est nécessaire de créer un point de montage pour chacune de vos partitions Windows à rendre accessible. Un point de montage est un répertoire, dans l'arborescence de votre ordinateur, à partir duquel il sera possible d'accéder aux données contenues dans votre partition Windows. Ce répertoire peut être situé à n'importe quel endroit de votre arborescence.
Créez d'abord un point de montage pour la partition Windows que vous voulez monter. Dans un terminal, saisissez la commande suivante:
$ sudo mkdir votre_point_de_montage
Ainsi, toutes les données contenues dans votre partition Windows à monter seront accessibles à partir du répertoire que vous avez défini comme point de montage.
La façon classique sous Linux d'organiser les points de montage est que chaque point de montage (répertoire) soit créé à l'intérieur du répertoire /mnt/
. Toutefois, rien ne vous empêche de créer votre point de montage dans un autre répertoire. Par exemple, vous pourriez préférer utiliser un point de montage /home/utilisateur/musique
pour monter une partition ne contenant que votre audiothèque; s'agissant de votre audiothèque, il est logique qu'elle soit accessible depuis votre dossier personnel.
En suivant une règle simple, il est possible de faire apparaître automatiquement un lien vers votre ou vos partitions Windows sur votre bureau, et dans le poste de travail et dans le menu "Raccourcis" du tableau de bord. Pour ce faire, le ou les points de montage doivent se trouver dans le répertoire/media
.
Le lien se crée automatiquement lorsque la partition est accessible et disparaît automatiquement lorsqu'elle ne l'est plus. Si vous souhaitez accéder rapidement à vos partitions par ces moyens, il s'agit donc de l'emplacement à privilégier.
Le choix du nom des points de montage est totalement libre. Ainsi, vous pourriez les appeler selon la lettre de lecteur qu'ont vos partitions sous Windows (c
, d
, e
…), selon le nom de périphérique de vos partitions – nous verrons plus loin ce que c'est – (hda1
, hda2
, hdb1
…) ou encore selon l'utilisation à laquelle est destinée la partition (windows
, systeme
, documents
, audiotheque
, musique
, videotheque
…). Laissez place à votre imagination
Il est à noter que, si vous désirez rendre accessible plus d'une partition Windows, chaque partition doit avoir son point de montage propre (son propre répertoire dans votre arborescence).
Prenons un exemple concret pour illustrer ce que nous venons de voir. Nous disposons de trois partitions Windows que nous désirons rendre accessibles depuis Ubuntu. Certaines seront accessibles en lecture et écriture, d'autres en lecture seule (nous en verrons la raison plus loin). Trois partitions différentes signifient trois points de montage différents. Nous créerons donc trois répertoires. Nous voulons aussi que ces partitions possèdent des raccourcis créés automatiquement sur le bureau et dans le poste de travail; nous créerons donc les trois répertoires dans le dossier /media
. Enfin, afin de les distinguer en un clin d'oeil, nous donnerons des noms différents à ces partitions, reflétant leur utilisation.
$ sudo mkdir /media/windows $ sudo mkdir /media/documents $ sudo mkdir /media/mediatheque
2° : Découvrir ses partitions Windows
Une fois les points de montage créés, il faudra assigner chacune des partitions Windows à rendre accessibles à l'un ou l'autre des points de montage. Mais avant de pouvoir procéder à cette assignation, il faut découvrir le nom du périphérique de vos partitions Windows.
Un disque dur est comme une tarte : fractionné en plusieurs parts. Dans la vie réelle, il vous est extrêmement facile de demander à maman, avec des paroles et des gestes, de vous servir « cette part-là, sur cette tarte-là ». Il ne vous est, par contre, pas possible de demander à votre ordinateur de rendre accessible « cette partition-là, sur ce disque-là ».
Linux utilise donc un système de notation à l'aide de lettres et de chiffre afin de désigner chacune des partitions: le nom du périphérique. Les partitions sont désignées selon un système /dev/hdXY
, dans lequel X
est une lettre représentant un disque dur physique et Y
est un chiffre indiquant le numéro de la partition. Si vous entrez les bonnes commandes pour rendre accessible la partition dont le nom de périphérique est /dev/hda1
dans votre point de montage /media/windows
(créé à l'étape #1, rappelez-vous ), Linux saura placer vos données de la 1ère partition (1
) du premier disque dur (a
) dans le répertoire /media/windows
de votre ordinateur. Si nous voulions poursuivre la liste:
- Le périphérique
/dev/hda2
désignerait la 2è partition (2
) du premier disque dur (a
) ; - Le périphérique
/dev/hda3
désignerait la 3è partition (3
) du premier disque dur (a
) ; - Le périphérique
/dev/hdb1
désignerait la 1ère partition (1
) du second disque dur (b
) ; - Le périphérique
/dev/hdc5
désignerait la 5è partition (5
) du troisième disque dur (c
) ; - …
Comment découvrir le nom du périphérique de vos partitions Windows ? L'utilitaire fdisk
vous le permettra. Dans un terminal, saisissez la commande suivante :
$ sudo fdisk -l
L'option -l (un L minuscule) que nous avons précisé à l'utilitaire fdisk
permet de lister les partitions actives de vos disques. Pour plus d'information à propos de fdisk, lisez le manuel : man fdisk.
Vous devriez obtenir une réponse semblable à (mais différente de) ce qui suit :
Disque /dev/hda: 8455 Mo, 8455200768 octets 255 têtes, 63 secteurs/piste, 1027 cylindres Unités = cylindres de 16065 * 512 = 8225280 octets Périphérique Amorce Début Fin Blocs Id Système /dev/hda1 * 1 933 7494291 7 HPFS/NTFS /dev/hda2 934 951 144585 83 Linux /dev/hda3 952 1027 610470 82 Linux swap / Solaris Disque /dev/hdb: 41.1 Go, 41110142976 octets 16 têtes, 63 secteurs/piste, 79656 cylindres Unités = cylindres de 1008 * 512 = 516096 octets Périphérique Amorce Début Fin Blocs Id Système /dev/hdb1 * 1 8320 4192933+ ef EFI (FAT-12/16/32) /dev/hdb2 8321 79656 35953313 f W95 Etendu (LBA) /dev/hdb5 8321 13706 2714512+ 83 Linux /dev/hdb6 13707 45470 16008709+ ef EFI (FAT-12/16/32) /dev/hdb7 45471 62251 8457592+ 83 Linux /dev/hdb8 62252 79656 8772088+ 83 Linux
Des six colonnes retournées, seules la première et la dernière nous intéressent.
Dans la dernière colonne, Système, est indiqué le système de fichiers de chacune des partitions de vos disques durs. Les partitions Windows peuvent être formatées selon deux systèmes de fichiers : FAT32 et NTFS. C'est grâce à cette information que vous pourrez distinguer vos partitions Windows des autres partitions de vos disques durs. Notez les noms des périphériques (dans la première colonne, Périphérique) associées à vos partitions Windows, de même que le système de fichiers associé à chacune d'elles.
Dans cet exemple, il y a trois partitions Windows: la première partition (1
) sur le premier disque dur (a
), formatée en NTFS (HPFS/NTFS
); la première partition (1
) du second disque dur (b
), formatée en FAT32 (EFI (FAT-12/16/32)
); et la sixième partition (6
) du second disque dur (b
), formatée en FAT32 aussi.
3° : Renseigner ses partitions Windows au démarrage de Ubuntu
Vous avez créé un point de montage pour chacune des partitions Windows à rendre accessible depuis Linux et vous savez désormais les noms de périphériques de chacune de ces partitions. Maintenant, il vous faut renseigner les informations de montage à Ubuntu afin qu'il puisse monter de lui-même vos partitions Windows.
Monter une partition, c'est la rendre accessible à votre système d'exploitation. Lorsqu'une partition est montée, vous pouvez accéder à tout son contenu (fichiers texte, audio, vidéo, de configuration …). Au contraire, lorsqu'une partition n'est pas montée, votre système d'exploitation ne peut pas accéder à son contenu. Une partition peut être montée manuellement (c'est-à-dire grâce à une ligne de commande à tout moment) ou automatiquement, au démarrage de votre système d'exploitation. Nous nous attarderons sur ce second cas.
Les partitions à monter automatiquement sont renseignées dans le fichier /etc/fstab
. Vous pouvez ouvrir ce fichier avec un logiciel d'édition de texte simple, comme gEdit (sous Ubuntu), Kwrite (sous Kubuntu) ou Mousepad (sous Xubuntu). Si vous préférez l'austérité du terminal ou si vous ne disposez pas d'un environnement graphique, vous pourriez aussi utiliser Nano, qui est un logiciel en console, basique mais facile d'utilisation.
Pour modifier le fichier /etc/fstab
, vous avez besoin d'acquérir les droits d'administration. Vous ouvrirez donc votre logiciel d'édition de texte en faisant précéder votre commande, dans un terminal, par "sudo" dans le cas d'applications en mode console ou par "gksudo" ou "kdesu" pour les applications graphiques :
Alt+F2 puis : gksudo gedit /etc/fstab (Ubuntu) ou kdesu kwrite /etc/fstab (Kubuntu) ou gksudo mousepad /etc/fstab (Xubuntu) ou $ sudo nano /etc/fstab
Vous obtiendrez un résultat semblable à ce qui suit :
# /etc/fstab: static file system information. # # <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc defaults 0 0 /dev/hdb8 / reiserfs defaults 0 1 /dev/hda2 /boot ext3 defaults 0 2 /dev/hdb7 /home ext3 defaults 0 2 /dev/hdb5 /opt ext3 defaults 0 2 /dev/hda3 none swap sw /dev/hdc /media/cdrom0 udf,iso9660 ro,user,noauto 0 0 /dev/hdd /media/cdrom1 udf,iso9660 ro,user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0 0 0
Note: avant d'effectuer toute modification du fichier /etc/fstab
, pensez à en faire une copie de sauvegarde ! Cela peut être fait grâce à la commande suivante, dans un terminal:
$ sudo cp /etc/fstab /etc/fstab_sauvegarde
3.a : Ajouter une partition de système de fichiers FAT32
Pour ajouter une partition dont le système de fichiers est le FAT32 (voir plus bas pour les partitions de type NTFS), il vous suffit d'ajouter une instruction à la fin de votre fichier /etc/fstab
, sous la forme suivante:
# Partitions Windows - FAT32 périphérique point de montage vfat rw,user,auto,exec,gid=100,uid=1000,umask=002,iocharset=utf8,codepage=850 0 0
Ajoutez une instruction comme celle-ci pour chacune de vos partition FAT32. Vous ne devez indiquer qu'une seule instruction par ligne! en décochant la case retour automatique à la ligne dans l' onglet préférences de l' éditeur de texte .
Détaillons un peu cette instruction afin de mieux comprendre ce que vous faites:
- Le périphérique correspond au nom du périphérique de la partition Windows que vous voulez monter. Vous l'avez trouvé à l'étape précédente.
- Le point de montage correspond au point de montage de votre partition. Vous l'avez défini à la première étape.
- vfat indique que le système de fichiers de votre partition est le FAT32
- Viennent ensuite les options de montage, qui donnent certaines qualifications à votre partition:
- L'option rw indique que vous souhaitez accéder à cette partition en lecture et en écriture (read/write). Si vous ne souhaitez accéder à votre partition qu'en lecture seule, vous pourriez préférer ro (read only).
- user permet à n'importe quel utilisateur de monter ou démonter cette partition, donc pas seulement le superutilisateur. Vous pouvez l'omettre si vous ne désirez pas ce comportement.
- auto est l'option indiquant que la partition doit être montée automatiquement au démarrage d'Ubuntu.
- exec est une option qui permet l'exécution de programmes installés dans cette partition. Sans elle, une erreur vous sera affichée lorsque vous essayez d'exécuter un programme installé dans cette partition (« Permission non accordée »).
- gid=100 assignera l'ensemble des fichiers au groupe dont le gid (pour group id, identifiant de groupe) est 100. Sous Ubuntu, le gid 100 correspond au groupe users, auquel tous les utilisateurs font normalement partie. Vous pouvez retrouver une liste de tous les groupes existants sur votre machine avec leur gid dans le fichier
/etc/group
. Si vous omettez cette option, tous les fichiers seront assignés au groupe 0, soit root (le super-utilisateur). - uid=1000 assignera l'ensemble des fichiers de la partition à l'utilisateur dont l'uid (pour user id, identifiant d'utilisateur) est 1000. Sous Ubuntu, l'uid 1000 correspond au premier utilisateur, créé lors de l'installation de Ubuntu. Si vous omettez cette option, tous les fichiers seront assignés à l'utilisateur root (le super-utilisateur).
- L'option umask=002 donnera les droits d'accès, sur l'ensemble des répertoires et fichiers, en lecture et en écriture à tous, de même qu'en exécution au propriétaire du fichier. (L'umask se calcule de la façon suivante: 777 - umask = 777 - 002 = 775, soit rwxrwxr-x. Pour plus d'information sur la gestion des droits d'accès, se référer au site de Léa-Linux.)
- Pour Ubuntu en versions Hoary ou ultérieure, l'option iocharset=utf8,codepage=850 permet l'utilisation du jeu de caratère UTF-8 sur les partitions FAT32.
Pour prendre un exemple concret, nous utiliserons les informations de l'exemple plus haut:
# Partitions Windows - FAT32 /dev/hdb1 /media/documents vfat rw,user,auto,exec,gid=100,uid=1000,umask=002,iocharset=utf8,codepage=850 0 0 /dev/hdb6 /media/mediatheque vfat rw,user,auto,exec,gid=100,uid=1000,umask=002,iocharset=utf8,codepage=850 0 0
- /dev/hdb1 et /dev/hdb6 sont mes noms de périphériques
- /media/documents et /media/mediatheque sont mes points de montage
- J'ai indiqué une instruction par ligne
Notes:
- Concernant l'option gid, vous pouvez utiliser un autre groupe ou en créer un en fonction de vos besoins. Vous devrez toutefois y assigner tous les utilisateurs (y compris vous) qui auront droit d'accès en lecture/écriture sur les fichiers de cette partition. Pour procéder, vous pouvez utiliser l'interface graphique de gestion de comptes, accessible à partir du menu Système ⇒ Administration ⇒ Utilisateurs et Groupes.
- Si vous renseignez un gid, vous pouvez omettre l'uid. Par défaut, l'utilisateur root sera le propriétaire des fichiers et dossiers, mais vous y aurez toujours accès en lecture et écriture grâce aux options umask et gid.
- Une fois la partition FAT32 montée, vous ne pouvez plus modfier les droits d'accès aux fichiers et dossiers. Le système de fichiers FAT32 ne gère pas les droits d'accès selon la norme POSIX, comme le font les systèmes basés sur Unix (Linux, *BSD, MacOS, etc.). Ubuntu émule le comportement des droits d'accès comme l'utilise Linux au montage de la partition. Pour changer les droits d'accès, vous devrez démonter la partition puis la remonter avec de nouvelles options.
- Il peut arriver que l'erreur "utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!" s'affiche lors du lancement d'Ubuntu. Si tel est votre cas, il suffit de remplacer
iocharset=utf8
parutf8
uniquement. - Pour pouvoir employer des caractères accentués dans les noms de fichiers, il est nécessaire d'utiliser le jeu de caractère
iso-8859-1
(ouiso-8859-15
pour avoir le signe €) à la place de l'UTF-8. Pour cela, il faut spécifier l'optioniocharset=iso8859-1
ouiocharset=iso8859-15
3.b : Ajouter une partition de système de fichiers NTFS
Pour ajouter une partition dont le système de fichiers est le NTFS (voir plus haut pour les partitions de type FAT32), il vous suffit d'ajouter une instruction à la fin de votre fichier /etc/fstab
, sous la forme suivante:
# Partitions Windows - NTFS périphérique point de montage ntfs ro,user,auto,gid=100,nls=utf8,umask=002 0 0
Ajoutez une instruction comme celle-ci pour chacune de vos partition NTFS. Vous ne devez indiquer qu'une seule instruction par ligne!
Détaillons un peu cette instruction afin de mieux comprendre ce que vous faites:
- Le périphérique correspond au nom de périphérique de la partition Windows que vous voulez monter. Vous l'avez trouvé à l'étape précédente.
- Le point de montage correspond au point de montage de votre partition. Vous l'avez défini à la première étape.
- ntfs indique que le système de fichiers de votre partition est le NTFS.
- Viennent ensuite les options de montage, qui donnent certaines qualifications à votre partition:
- L'option ro indique que vous souhaitez accéder à cette partition en lecture seule (read-only). Lisez les notes plus bas au sujet de l'écriture sous Linux sur les partitions NTFS.
- user permet à n'importe quel utilisateur de monter ou démonter cette partition, donc pas seulement le super-utilisateur. Vous pouvez l'omettre si vous ne désirez pas ce comportement.
- auto est l'option indiquant que la partition doit être montée automatiquement au démarrage d'Ubuntu.
- gid=100 assignera l'ensemble des fichiers au groupe dont le gid (pour group id, identifiant de groupe) est 100. Sous Ubuntu, le gid 100 correspond au groupe users, auquel tous les utilisateurs font normalement partie. Vous pouvez retrouver une liste de tous les groupes existants sur votre machine avec leur gid dans le fichier
/etc/group
. Si vous omettez cette option, tous les fichiers seront assignés au groupe 0, soit root (le super-utilisateur). - nls=utf8 permet l'utilisation du jeu de caratère UTF8 sur les partitions.
- L'option umask=002 donnera les droits d'accès, sur l'ensemble des répertoires et fichiers, en lecture et en écriture à tous, de même qu'en exécution au propriétaire du fichier. (L'umask se calcule de la façon suivante: 777 - umask = 777 - 002 = 775, soit rwxrwxr-x. Pour plus d'information sur la gestion des droits d'accès, se référer au site de Léa-Linux.) Toutefois, cette option n'a aucun effet au niveau de l'écriture dans les fichiers et répertoires, car la partition est montée en lecture seule: personne ne peut donc y écrire.
Pour prendre un exemple concret, nous utiliserons les informations de l'exemple plus haut:
# Partitions Windows - NTFS /dev/hda1 /media/windows ntfs ro,user,auto,gid=100,nls=utf8,umask=002 0 0
- /dev/hda1 est mon nom de périphérique
- /media/windows est mon point de montage
- J'ai indiqué une instruction par ligne
Écriture sur des systèmes de fichiers NTFS
Un support partiel de l'écriture sur une partition NTFS est considérée comme stable à partir des noyaux en version 2.6.15 et ultérieure (donc, le noyau présent dans Ubuntu 6.06 et versions ultérieures). Ce support partiel ne concerne que la modification de fichier existant déjà dans la partition NTFS. Toutes les autres manipulations possibles (création, renommage et suppression de fichiers) sont encore expérimentales sous Linux et risquent de corrompre vos données, voire détruire complètement la partition. À moins de savoir exactement ce que vous faites, il n'est donc pas recommandé de permettre l'écriture sur ce type de partitions. D'ailleurs, le module d'écriture sur NTFS n'est pas activé par défaut.
Si vous savez ce que vous faites et désirez tout de même activer le support de l'écriture sur vos partitions NTFS, vous pouvez installer le pilote Captive-NTFS (qui semble être plus sécuritaire, mais plus difficilement installable, voire même non installable sous Ubuntu sans une recompilation du noyau) ou installer Fuse, ou activer le module du noyau selon la procédure suivante:
- Vérifiez que le système de fichiers NTFS est supporté par votre noyau à l'aide de la commande suivante:
$ sudo cat /proc/filesystems | grep -v nodev
Si dans la liste des formats supportés vous voyez apparaître ntfs, c'est qu'il est déjà supporté. Autrement, il vous faut modifier le fichier
/etc/modules
, à l'aide de votre logiciel d'édition de texte favori :Alt+F2 puis : gksudo "gedit /etc/modules" (Ubuntu) ou kdesu "kwrite /etc/modules" (Kubuntu) ou gksudo "mousepad /etc/modules" (Xubuntu) ou $ sudo nano -w /etc/modules
Ajoutez dans la liste : ntfs.
- Modifiez le fichier
/etc/fstab
de cette façon:périphérique point de montage ntfs rw,user,auto,gid=100,umask=002 0 0
(L'option ro devient rw pour passer du mode lecture seule à lecture/écriture.)
Attention: Nous vous rappelons, encore une fois, d'évitez à tout prix de créer des fichiers ou répertoires dans vos partitions NTFS, sous peine de ne pas les retrouver ou de ne pas pouvoir les ouvrir sous Windows, voire corrompre totalement votre partition NTFS.
A noter: il existe maintenant ntfs-3g qui permet un accès en RW sur les partitions ntfs. On se référera à la documentation publiée.
4° : Sauvegarde des fichiers et montage des partitions
Une fois les modifications apportées, enregistrez votre ou vos fichiers de configuration, afin de prendre en compte ces modifications.
Vous pouvez redémarrer votre ordinateur dans le but de tester si les partitions Windows seront montées automatiquement. Si vous préférez redémarrer plus tard, vous pouvez simplement saisir la commande suivante dans un terminal:
$ sudo mount -a -o remount
ou bien
$ sudo mount -a
Certains utilisateurs ont rapporté que cette méthode ne fonctionnait pas chez eux. Dans ce cas il est nécessaire de redémarrer votre ordinateur. Ou de monter les partitions une par une manuellement. Par exemple:
sudo umount /media/windows/ sudo mount /media/windows
Il se peut que les partitions ntfs disparaissent sous ubuntu lorsque windows plante au préalable suite à une erreur: l'intégrité de l'arborescence du disque dur doit alors être réparée automatiquement par une fermeture correcte de windows (sans plantage).
Contributeurs: Manu, AlexandreP
Bibliographie : Automatically Mount Partitions et fstab