LinuxPedia

Wiki libre et indépendant dédié à GNU-Linux et BSD.

Outils pour utilisateurs

Outils du site


expert:partitions_ntfs

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

expert:partitions_ntfs [2018/11/17 13:53] (Version actuelle)
Ligne 1: Ligne 1:
  
 +
 +====== Lecture-Écriture sur NTFS avec NTFS-3G ======
 +//**Auteur : Pat **//\\
 +//**Date : 27 février 2007 **//\\
 +
 +Le support du format NTFS sous Linux a été, pendant de nombreuses ​ années, en lecture seule. Si vous aviez seulement besoin de lire des fichiers, cela suffisait et cet accès est disponible par défaut sur toutes les distributions.
 +
 +Pour assurer une interopérabilité //(en 2 temps)//, une partition FAT32 est   la solution la plus simple et la plus sure. Mais elle ne dispense pas   ​d'​incessant aller et retour entre linux et windows. :juggle: Quid de la lecture-écriture directe depuis linux sur NTFS ? Pendant longtemps, il n'y avait pas de solution fiable et open-source. Il existe au moins une //solution payante NTFS for Linux//​__Souligné__ //de Paragon Software//
 +
 +Récemment, des pilotes ont été développés pour avoir un accès en **lecture et en écriture**. Mais ils étaient encore considérés comme expérimentaux et c'est pour cette raison qu'ils ne sont pas utilisés par défaut sur les distributions.
 +
 +**Étaient car NTFS-3G** http://​www.linuxpourlesnuls.org/​v4/​modules.php?​name=Forums&​file=viewtopic&​t=4841] vient de sortir en version 1 considérée par ces développeurs comme stable.
 +''​
 +**ntfs-3g** est un driver //“3rd generation NTFS driver”// qui tourne avec un module :** fuse**.
 +Attention avant tout''​ et pour éviter tout accident, vérifiez vos partitions NTFS car l'​utilisation de ntfs-3g demande des partitions NTFS exemptes d'​erreurs,​ pour cela utiliser** chkdsk** sous DOS et/ou http://​man.linux-ntfs.org/​ntfsfix.8.html#​sect3]ntfsfix sous linux //
 +
 +voir "Autre méthode pour les disques récalcitrants"​ plus bas //:
 +
 +   ​PatMachine:/​home/​po # umount /dev/hdc5
 +   ​PatMachine:/​home/​po # ntfsfix /dev/hdc5
 +   ​Mounting volume... OK
 +   ​Processing of $MFT and $MFTMirr completed successfully.
 +   NTFS volume version is 3.1.
 +   NTFS partition /dev/hdc5 was processed successfully.
 +
 +cet utilitaire ne fonctionnera plus sur une partition montée avec ntfs-3g.
 +
 +
 +===== INSTALLATION =====
 + 
 +
 +2 paquetages sont à installer : **FUSE et NTFS-3G**
 +
 +NOTES :
 +
 +  *Les versions 2.6.x de FUSE ne sont pas supportées par des kernels antérieurs à 2.6.9 (fichier NEWS de FUSE)
 +  *La version >= à 2.6.14 du kernel intègre le module FUSE (comme le signale le fichier NEWS de FUSE et ZafX !)
 +  *Ce même module fourni avec le noyau ne supporte pas ttes les fonctionnalités de NFS (README de FUSE)
 +  *Pour avoir un module up to date utiliser l'​option --enable-kernel-module cf plus loin ... (//README de FUSE)//
 +  *À aujourd'​hui (28/02/07) le driver NTFS-3G n'est pas fourni avec les distributions ​ ou est obsolète ​ (suse 10.2 par exemple)
 +  *NTFS-3G gère NTFS sur Windows XP, Windows Server 2003, Windows 2000 and Windows Vista (README de ntfs-3g)
 +
 +
 +==== Installation de FUSE ====
 +
 +
 +L'​installation de FUSE par smart c'est à dire les paquetages rpm : 
 +
 +  * fuse 2.6.0-9 (rien à voir avec la ver du kernel !)
 +  * fuse-devel 2.6.0-9
 +  * fuse_kio ver 2.6.0-9
 +
 +ne marche pas  !!!  On se retrouve avec le très fameux message d'​erreur :
 +   ​WARNING:​ Deficient FUSE kernel module detected. Some driver features are
 +   not available (swap file on NTFS, boot from NTFS by LILO), and
 +   ​unmount is not safe unless it's made sure the ntfs-3g process
 +   ​naturally terminates after calling '​umount'​. The safe FUSE kernel
 +   ​driver is included in the official Linux kernels since version
 +   ​2.6.20-rc1,​ or in the FUSE 2.6.0 or later software packages,
 +   ​except the faulty FUSE version 2.6.2. Please see the next page
 +   for more help: http://​www.ntfs-3g.org/​support.html#​fuse26
 +Et rien n'y fait, ni reboot, ni modprobe ...
 +Pourquoi ... je ne sais pas exactement, il manque sans doute quelque chose ou la version n'est pas assez récente :?: Ou j'ai fait une fausse manip (non impossible :( pas moi !).
 +
 +**Donc procédons à l'​ancienne !!!**
 +FIXME
 +
 +1°) Récupérer les sources http://​sourceforge.net/​project/​showfiles.php?​group_id=121684&​package_id=132802]ICI
 +
 +2°) Taper dans une console
 +
 +   tar -xvzf fuse-2.6.3.tar.gz
 +   cd fuse-2.6.3/
 +
 +Dans le fichier readme du paquetage on peu lire : 
 +   Les kernels à partir du 2.6.14 contiennent le support de FUSE dès l'​installation. Si le support de FUSE est détecté, le module contenu dans ce paquetage ne sera pas compilé. Il est possible de forcer la compilation avec l'​option de "​configure"​ suivante : 
 +   ​--enable-kernel-module ​
 +
 +Donc allons-y !
 +
 +   ​./​configure --enable-kernel-module
 +   make
 +   su
 +   Mot de passe :
 +   make install  ​
 +   ​modprobe fuse
 +
 +
 +==== Installation de NTFS-3G ====
 +
 +
 +1°) Récupérer les sources http://​www.ntfs-3g.org/​index.html#​download
 +
 +2°) Taper dans une console :
 +
 +   tar -xvzf ntfs-3g-1.0.tgz
 +   cd ntfs-3g-1.0/​
 +   ​./​configure
 +   make
 +   su
 +   Mot de passe :
 +   make install
 +
 +
 +
 +
 +===== PREMIER TEST =====
 + 
 +
 +Pour notre exemple [b]hda4[/b] est une partition NTFS montée jusqu'​ici grace à [b]fstab[/​b] par : 
 +   /​dev/​hda4 /​local/​programmesXP ntfs ro,​user,​users,​gid=users,​umask=0002,​nls=utf8 0 0
 +Le répertoire [b]/​local/​programmes[/​b] qui est son point de montage est déjà créé.
 +Toujours dans une console et comme root :
 +   ​PatMachine:/​etc # umount /dev/hda4
 +   ​PatMachine:/​etc # mount -t ntfs-3g /dev/hda4 /​local/​programmesXP
 +   ​WARNING:​ Deficient FUSE kernel module detected. Some driver features are
 +   not available (swap file on NTFS, boot from NTFS by LILO), and 
 +   ​unmount is not safe unless it's made sure the ntfs-3g process
 +   ​naturally terminates after calling '​umount'​. The safe FUSE kernel
 +   ​driver is included in the official Linux kernels since version
 +   ​2.6.20-rc1,​ or in the FUSE 2.6.0 or later software packages,
 +   ​except the faulty FUSE version 2.6.2. Please see the next page
 +   for more help: http://​www.ntfs-3g.org/​support.html#​fuse26
 +[color=green][size=24]- HAAA! je me suis fait rouler ![/size] On a fait tout çà pour rien, encore cette mxxxx de fxxxx message d'​erreur !  [/​color] ​
 +- Mais non, mais non il faut simplement [color=green][b]REBOOTER[/​b][/​color] pour que cela marche ! :wink:
 +Et après : 
 +   ​PatMachine:/​home/​po # umount /dev/hda4
 +   ​PatMachine:/​home/​po # mount -t ntfs-3g /dev/hda4 /​local/​programmesXP
 +   ​PatMachine:/​home/​po #
 +
 +rien, pas la moindre insulte ! un divin silence :-D
 +
 +on peut constater sur un gestionnaire de fichier (ici Krusader) que [i]programmesXP[/​i] est en [b]rwx[/b] alors que d'​autres partitions NTFS comme [i]videos[/​i] ou [i]musiques[/​i],​ qui ont été monté "​normalement"​ sont en [b]r-x[/​b]  ​
 +
 +[[http://​lpln.free.fr/​pics/​6rbsqxcw.png|{{ http://​lpln.free.fr/​minis/​6rbsqxcw.png }}]]
 +
 +Dans [i]programmesXP[/​i] nous n'​avons plus du [b]ntfs[/b] mais du [b]fuseblk[/​b],​ tous les fichiers et répertoires sont en [b]rwx[/b] !
 +
 +[[http://​lpln.free.fr/​pics/​pzp6f8qp.png|{{ http://​lpln.free.fr/​minis/​pzp6f8qp.png }}]]
 +
 +[color=darkblue][b]Bon tout ça c'est bien beau mais il faudrait que ce soit totomatic ![/​b][/​color] ​
 +
 +
 +===== MODIFICATION DU FSTAB =====
 + 
 +
 +Pour bénéficier des fonctionnalités de ntfs-3g dès le boot, il faut modifier le fichier [b]/​etc/​fstab[/​b] en root. Facile avec MC en console ! 
 +
 +**Exemple de fichier fstab :** 
 +   <​code>/​dev/​hdb6 ​           /                    ext3       ​noatime,​acl,​user_xattr ​       1 1
 +   /​dev/​hdb1 ​           /boot                ext3       ​noatime,​acl,​user_xattr ​       1 2
 +   /​dev/​hdb7 ​           /home                ext3       ​noatime,​acl,​user_xattr ​       1 2
 +   /​dev/​hdb10 ​          /​local/​WinLinux ​     vfat       ​user,​users,​gid=users,​umask=0002,​utf8=true 0 0
 +   /​dev/​hdb9 ​           /​local/​backup_1 ​     ext3       ​noatime,​user,​acl ​             1 2
 +   /​dev/​sda1 ​           /​local/​mp3 ​          ​vfat ​      ​user,​user,​users,​gid=users,​umask=0002,​utf8=true 0 0
 +   /​dev/​hdb8 ​           /​local/​musiques ​     ntfs       ​ro,​users,​gid=users,​umask=0002,​nls=utf8 0 0
 +   /​dev/​hda4 ​           /​local/​programmesXP ​ ntfs       ​ro,​user,​users,​gid=users,​umask=0002,​nls=utf8 0 0
 +   /​dev/​hdc5 ​           /​local/​videos ​       ntfs       ​ro,​user,​users,​gid=users,​umask=0002,​nls=utf8 0 0
 +   /​dev/​hdb5 ​           swap                 ​swap ​      ​defaults ​             0 0
 +   ​proc ​                /​proc ​               proc       ​defaults ​             0 0
 +   ​sysfs ​               /sys                 ​sysfs ​     noauto ​               0 0
 +   ​debugfs ​             /​sys/​kernel/​debug ​   debugfs ​   noauto ​               0 0
 +   ​usbfs ​               /​proc/​bus/​usb ​       usbfs      noauto ​               0 0
 +   ​devpts ​              /​dev/​pts ​            ​devpts ​    ​mode=0620,​gid=5 ​      0 0
 +   /​dev/​fd0 ​            /​media/​floppy ​       auto       ​noauto,​user,​sync ​     0 0</​code>​
 +Nous avons **/​dev/​hda4** ​ qui est une partition NTFS en lecture seule (ro) ... normal :)
 +Nous avons en lançant un **l /​local** ​
 +   <​code>​po@PatMachine:​~>​ l /local
 +   total 120
 +   ​drwxr-xr-x 10 root root   4096 jan 28 11:24 ./
 +   ​drwxr-xr-x 21 root root   4096 fév 28 20:47 ../
 +   ​drwxrwxrwx ​ 4 root root   4096 fév 18 14:18 backup_1/
 +   ​drwxr-xr-x ​ 2 root root   4096 jan 28 11:24 mp3/
 +   ​dr-xr-xr-x ​ 1 root users  4096 fév 11 00:39 musiques/
 +   ​dr-xr-xr-x ​ 1 root users 32768 fév 24 17:16 programmesXP/​
 +   ​dr-xr-xr-x ​ 1 root users 20480 jan 23 00:51 videos/
 +   ​drwxrwxr-x 16 root users  8192 jan  1  1970 WinLinux/</​code>​
 +
 +
 +**Modification du fichier fstab** :   
 +   <​code>/​dev/​hdb6 ​           /                    ext3       ​noatime,​acl,​user_xattr ​       1 1
 +   /​dev/​hdb1 ​           /boot                ext3       ​noatime,​acl,​user_xattr ​       1 2
 +   /​dev/​hdb7 ​           /home                ext3       ​noatime,​acl,​user_xattr ​       1 2
 +   /​dev/​hdb10 ​          /​local/​WinLinux ​     vfat       ​user,​users,​gid=users,​umask=0002,​utf8=true 0 0
 +   /​dev/​hdb9 ​           /​local/​backup_1 ​     ext3       ​noatime,​user,​acl ​             1 2
 +   /​dev/​sda1 ​           /​local/​mp3 ​          ​vfat ​      ​user,​user,​users,​gid=users,​umask=0002,​utf8=true 0 0
 +   /​dev/​hdb8 ​           /​local/​musiques ​     ntfs       ​ro,​users,​gid=users,​umask=0002,​nls=utf8 0 0
 +   #/​dev/​hda4 ​           /​local/​programmesXP ​ ntfs       ​ro,​user,​users,​gid=users,​umask=0002,​nls=utf8 0 0
 +   /​dev/​hda4 ​           /​local/​programmesXP ​ ntfs-3g ​   user,​users,​gid=users,​umask=0002,​nls=utf8 0 0
 +   /​dev/​hdc5 ​           /​local/​videos ​       ntfs       ​ro,​user,​users,​gid=users,​umask=0002,​nls=utf8 0 0
 +   /​dev/​hdb5 ​           swap                 ​swap ​      ​defaults ​             0 0
 +   ​proc ​                /​proc ​               proc       ​defaults ​             0 0
 +   ​sysfs ​               /sys                 ​sysfs ​     noauto ​               0 0
 +   ​debugfs ​             /​sys/​kernel/​debug ​   debugfs ​   noauto ​               0 0
 +   ​usbfs ​               /​proc/​bus/​usb ​       usbfs      noauto ​               0 0
 +   ​devpts ​              /​dev/​pts ​            ​devpts ​    ​mode=0620,​gid=5 ​      0 0
 +   /​dev/​fd0 ​            /​media/​floppy ​       auto       ​noauto,​user,​sync ​     0 0</​code>​
 +
 +Il suffit de commenter l'​entrée actuelle (on ne sait jamais :roll:) et de rajouter la nouvelle entrée ! ... et de sauvegarder :?
 +On remplace **ntfs** par **ntfs-3g** et on enlève **ro** si non on a travaillé pour rien 
 +
 +Pour tester, on lançe à nouveau un **l /local** après un démontage/​montage :     
 +   <​code>​po@PatMachine:​~>​ su
 +   Mot de passe :
 +   ​PatMachine:/​home/​po # umount /dev/hda4
 +   ​PatMachine:/​home/​po # mount /dev/hda4
 +   ​PatMachine:/​home/​po # l /local
 +   total 120
 +   ​drwxr-xr-x 10 root root   4096 jan 28 11:24 ./
 +   ​drwxr-xr-x 21 root root   4096 fév 28 20:47 ../
 +   ​drwxrwxrwx ​ 4 root root   4096 fév 18 14:18 backup_1/
 +   ​drwxr-xr-x ​ 2 root root   4096 jan 28 11:24 mp3/
 +   ​dr-xr-xr-x ​ 1 root users  4096 fév 11 00:39 musiques/
 +   ​drwxrwxr-x ​ 1 root users 32768 fév 24 17:16 programmesXP/​
 +   ​dr-xr-xr-x ​ 1 root users 20480 jan 23 00:51 videos/
 +   ​drwxrwxr-x 16 root users  8192 jan  1  1970 WinLinux/
 +   ​PatMachine:/​home/​po #</​code>​
 +Magique !!!
 +
 +**Maintenant vous pouvez écrire, effacer, modifier, créer autant de fichiers que vous voulez sur ntfs, la vieille barrière linux   ntfs n'​existe plus.** Mais ... il y a de petites restrictions ​   ​
 +
 +
 +
 +===== RESTRICTIONS et CONCLUSIONS =====
 +
 +
 +Et oui, ne croyez pas au père Noël    ​
 +
 +**Ce que vous NE DEVEZ pas faire** ​
 +
 +  - L'​accès aux fichiers chiffrés
 +  - L'​écriture de fichier compressés
 +  - Le changement des droits et permissions des différents utilisateurs
 +  - Le changement des noms d'​utilisateurs
 +
 +
 +Voilà, j'​espère avoir été complet et compréhensible :​bye1: ​
 +
 +===== LIENS =====
 +
 +
 +http://​fuse.sourceforge.net/​
 +http://​www.ntfs-3g.org/​index.html
 +http://​www.linux-ntfs.org/​
 +http://​doc.ubuntu-fr.org/​systeme/​ntfs-3g
 +
 +
 +
 +===== Autre méthode pour les disques récalcitrants =====
 +
 +//**Auteur : Andy180**//​\\
 +//**Date : 27 août 2007**//\\
 +
 +Ceci est un post dedié à l'aide pour monter un disque NTFS sous Ubuntu/​linux (à adapter donc à votre distribution). Malgré toutes les aides dispo sur le net et les différents forums, j'ai eu beaucoup de mal à m'en sortir, étant un newbie de Linux :baby: Et j'ai donc eu l'​idée de vous proposer ce piti tuto
 +Bonne lecture ;)
 +
 +
 +Sources : 
 +http://​doc.ubuntu-fr.org/​tutoriel/​ntfs
 +http://​forum.ubuntu-fr.org/​viewtopic.php?​id=128224
 +http://​www.linuxpourlesnuls.org/​v4/​modules.php?​name=Forums&​file=viewtopic&​t=6438
 +http://​www.linuxpourlesnuls.org/​v4/​dokuwiki/​doku.php?​id=tutoriaux:​systeme:​monter_partitions_demarrage
 +et enfin le début de ce tuto crée par Pat (à lire absolument !! En particulier la conclusion)
 +
 +==== 1/ Installer ntfs-3g ====
 +
 +
 +Selon la doc Ubuntu, il faut en premier lieu activer le dépot univers (voir 1er lien)
 +
 +<​code>​sudo apt-get install ntfs-3g</​code>​
 +
 +Ensuite on est "​censé"​ avoir un outil graphique("​ntfs-config",​ à installer via apt-get)qui permet d'​activer l'​ecriture sur le Hd en question...chez moi cet utilitaire plantait.
 +Donc pas le choix, on va mettre les mains dans le camboui ​
 +
 +==== 2/ Monter le disque ====
 +
 +
 +  * En tout premier lieu on va créer un dossier dans /media et lui donner tous les droits d'​accès :
 +
 +<​code>​sudo mkdir /​media/​test</​code>​
 +
 +<​code>​sudo chmod 777 /​media/​test</​code>​
 +
 +
 +  * Puis on va tenter de le monter "à chaud" : 
 +
 +<​code>​sudo mount -t ntfs-3g /​dev/​leDisque /media/test -o force</​code>​
 +
 +
 +Note : /​dev/​leDisque correspond au disque/​partition ntfs que l'on veut ajouter.
 +Pour connaitre son nom : 
 +
 +<​code>​sudo fdisk -l</​code>​
 +
 +
 +  * Le message d'​erreur :
 +
 +Si le disque NTFS provient d'une ancienne installation de WinXP, il est très probable que vous ayiez un message du type : 
 +
 +   ​$LogFile indicates unclean shutdown (0, 0)
 +   ​Failed to mount '/​dev/​sde1':​ Operation not supported
 +   Mount is denied because NTFS logfile is unclean. Choose one action:
 +   Boot Windows and shutdown it cleanly, or if you have a removable device then
 +   click the '​Safely Remove Hardware'​ icon in the Windows taskbar notification
 +   area before disconnecting it.
 +   Or
 +   Run ntfsfix version 1.13.1 on Linux unless you have Vista.
 +   Or
 +   Mount the NTFS volume with the '​ro'​ option in read-only mode.
 +
 +
 +Pas de panique, ca indique juste que le disque n'a pas été correctement arreté (allez savoir pourquoi...)
 +
 +
 +  * Résolution
 +
 +Comme nous le dis le message précédent,​ on va faire un ptit coup de ntfsfix afin de rendre le disque "​clean"​ (et plus unclean) :
 +
 +<​code>​sudo apt-get install ntfsfix</​code>​
 +
 +Ensuite on le lance via la console : 
 +
 +<​code>​sudo ntfsfix /​dev/​leDisque</​code>​
 +
 +On obtient un message du style :
 +
 +   ​ntfsfix /​dev/​leDisque
 +   ​Mounting volume... FAILED
 +   ​Attempting to correct errors...
 +   ​Processing $MFT and $MFTMirr...
 +   ​Reading $MFT... OK
 +   ​Reading $MFTMirr... OK
 +   ​Comparing $MFTMirr to $MFT... OK
 +   ​Processing of $MFT and $MFTMirr completed successfully.
 +   ​Setting required flags on partition... OK
 +   Going to empty the journal ($LogFile)... OK
 +   NTFS volume version is 3.1.
 +   NTFS partition /​dev/​leDisque was processed successfully.
 +
 +
 +  * Montage
 +
 +Bien, maintenant que le disque est clean, on peut le monter :)
 +
 +Allez courage, on est à la fin :crash:
 +
 +2 cas :
 +
 +  - Le disque est un HD externe et occasionnel
 +
 +Dans ce cas, soit on ne le monte pas en automatique,​ mais manuellement via :
 +
 +<​code>​sudo mount -t ntfs-3g /​dev/​leDisque /media/test -o force</​code>​
 +
 +Piti message nous avertissant qu'un disque "​dirty"​ a été monté de force. Ca n'est pas bien grave ;)
 +
 +<​code>​WARNING:​ Dirty volume mount was forced by the '​force'​ mount option.</​code>​
 +
 +  - Le disque est interne ou externe(+permanent)
 +
 +Ici, on va modifier le fstab :
 +
 +<​code>​sudo vim /​etc/​fstab</​code>​
 +
 +On va à la dernière ligne, on tappe sur "​i"​ pour se mettre en mode insertion :
 +
 +<​code>​ /​dev/​leDisque /dev/test ntfs-3g silent,​umask=0000,​utf8=true</​code>​
 +
 +Echap, ":​wq"​ (pour enregistrer et quitter).
 +umask=0000 pour donner l'​acces total à tout le monde
 +
 +Ensuite on tappe :
 +
 +<​code>​sudo mount -a</​code>​
 +
 +Voila, au redémarrage,​ le disque sera monté et disponible en ecriture et lecture !  ​
expert/partitions_ntfs.txt · Dernière modification: 2018/11/17 13:53 (modification externe)