web-dev-qa-db-fra.com

Ubuntu TRIM peut-il une autre partition (NTFS)?

J'ai trois questions pour les experts Ubuntu et TRIM/SSD.

  1. J'ai un lecteur SSD (SanDisk SDSSDP128G 128Gb).
  2. Actuellement, c'est le seul disque dur. Connecté via un câble SATA dans le BIOS en utilisant cependant le mode IDE plutôt que le mode AHCI.
  3. Installé WinXP SP2 sur la première partition (16 Ko, NTFS), puis aligné sur les blocs SSD à l'aide de gparted Live CD
  4. Installé Ubuntu 12.04 LTS sur la deuxième partition (16 Go, ext4, immédiatement après la partition précédente)
  5. Le reste de la commande est non partitionné pour le moment. grub est utilisé comme chargeur de système d'exploitation.
  6. Ubuntu monte la première partition NTFS au démarrage (comme l'a fait l'installation Ubuntu, je n'ai pas touché à cela)
  7. Hdparm a confirmé que ce lecteur prend en charge TRIM
  8. TRIM activé dans Ubuntu en utilisant "fstrim /" qui est exécuté par cron

Maintenant, j'ai passé des semaines à essayer d'obtenir cette information sur le Web. Certaines sources disent que NTFS prend en charge TRIM, d’autres disent que Win7 le prend en charge (tout en utilisant NTFS). Certaines sources indiquent fstrim TRIM à l’ensemble du lecteur physique, tandis que d’autres affirment que TRIM ne contient que la partition actuelle.

  1. Est-ce que "fstrim /" dans le scénario ci-dessus s'applique à la partition 16 GiB ext4 uniquement ou à l'ensemble du lecteur de 128 Go?

  2. S'il s'applique uniquement à la partition ext4, est-il possible de TRIMER la première partition NTFS (à partir d'Ubuntu ou de WinXP, mais uniquement à l'aide des outils natifs Ubuntu ou Win, sans téléchargement de dodgy software.com)? Hdparm et le déplacement/la copie de secteurs physiques pourraient-ils aider? Partitionner le clonage

  3. Quel est le pire scénario si TRIM n'est pas possible pour NTFS: y a-t-il des garbage collectors qui pourraient faire la même chose sans commandes de système d'exploitation?

Ne recommandez pas de passer à Win 7, je suis toujours satisfait de l’environnement de développement sous Win XP. Je suis toujours heureux d'utiliser un système d'exploitation "obsolète" s'il démarre en 7 secondes, donne une réponse immédiate à tout ce que vous faites, et charge Photoshop en 3 secondes (pour la première utilisation :)

Merci d'avance, Yaroslav

2
user259452

TRIM est une opération au niveau du système de fichiers. Il doit savoir quels secteurs du disque sont libres pour pouvoir en informer le matériel. Ni "Discard" ni "Trim" ne sont fonctionnalités documentées du pilote ntfs-3g donc je dirais que non, ce n'est probablement pas possible.

Il y a eu aussi quelques appels séparés pour cela mais c'est une fonctionnalité qui ne toucherait vraiment que quelques personnes.

Mes seules vraies solutions à long terme sont:

  • Collez-le sur une machine Windows (ou démarrez Windows) une fois tous les quelques mois (je ne sais pas quel est votre taux de désabonnement).
  • Utilisez un vrai système de fichiers. Rien ne rend les gens jaloux comme une partition ext4 bien formatée. Vous devrez cependant jongler avec les données.
4
Oli

Mise à jour, on dirait que NTFS-3g a obtenu fstrim support dans un correctif de 2014-juin .

Ubuntu 15.04 a bien fonctionné avec fstrim sur une image de système de fichiers NTFS montée en boucle que je voulais créer plus économe. Si la version 15.04 de ntfs-3g inclut ce correctif, il devrait également fonctionner sur des partitions montées.

En dehors de cela, ntfs-3g inclut une commande ntfswipe, qui écrit des zéros sur tout l’espace inutilisé. N'utilisez pas cela sur un SSD, cela augmenterait l'usure. J'ai envisagé de l'utiliser, puis de lancer fallocate --Dig-holes (pour scinder tous les blocs de 4k qui étaient tous des zéros). IDK fallocate mappe pour se défaire/ajuster lorsqu'il est utilisé sur un périphérique bloc, mais ce peut être le cas. Quoi qu'il en soit, utilisez fstrim pour supprimer SANS écrire avec des zéros en premier, car cela fonctionne maintenant.

Quel est le pire scénario si TRIM n'est pas possible pour NTFS: y a-t-il des garbage collectors qui pourraient faire la même chose sans commandes de système d'exploitation?

Non, la réduction de l'espace libre d'un système de fichiers NTFS nécessite un outil qui comprend NTFS. Personne n'est assez fou pour mettre quelque chose comme ça dans le micrologiciel SSD, car c'est un travail mieux fait, quel que soit le logiciel sur l'ordinateur qui lit le système de fichiers NTFS.

2
Peter Cordes

Oui, il s’applique uniquement à la partition sur laquelle vous l’exécutez, et il devrait fonctionner correctement si vous l’exécutez sur votre partition NTFS au lieu de /.

0
psusi