LinuxPedia

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

Outils pour utilisateurs

Outils du site


expert:partitions_ntfs
no way to compare when less than two revisions

Différences

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


expert:partitions_ntfs [2018/11/17 12:53] (Version actuelle) – créée - modification externe 127.0.0.1
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 12:53 de 127.0.0.1