Nous avons un disque dur de 600 Go et presque plein. Il a été rempli de 18 501 765 fichiers (principalement de petites images de 19 000 images) et de 7 142 132 dossiers. Il est très difficile de savoir où exactement tout l'espace est allé aussi. Nos procédures de nettoyage régulières ne libèrent pas suffisamment d'espace, ce qui signifie que nous devons examiner ce lecteur dans son ensemble et déterminer ce qui existe et ce qui peut être déplacé ou supprimé. Nous avons essayé plusieurs applications et jusqu'à présent, elles ont explosé ou ont simplement fonctionné pendant une durée incroyable.
Informations sur le serveur
- Système d'exploitation: Windows Server 2003
- Système de fichiers: NTFS
Solution
Space ObServer a pu lire 18 501 765 fichiers et 7 142 132 dossiers sans occuper pratiquement aucune mémoire. Je suis sûr que cela est principalement dû au fait qu'il utilise un backend SQL pour stocker toutes les données. C'est malheureusement le plus cher de tous les produits à 259,95 $ par serveur.
Solutions tentées
Au cours de mes recherches, j'ai essayé plusieurs solutions différentes, payantes et gratuites. J'ai gardé une liste des produits que j'ai essayés ci-dessous pour l'information de chacun.
Logiciel gratuit
JDiskReport - s'arrête à 10 millionsWinDirStat - Arrête à 10 millionsSpaceMonger - Ignorer en raison de la mention de stockage RAMSpaceSniffer - s'arrête à inconnu - crash
Logiciel payant
FolderSizes - Arrête à 12 millions (3 millions de dossiers)TreeSize Professional - Ignorer en raison de la mention de stockage RAM
Mises à jour
Mise à jour # 1 : Le serveur que j'essaie d'analyser a 2 Go de RAM et la plupart des produits que j'essaie semblent essayer de conserver les informations sur les fichiers / dossiers en mémoire. Cela a tendance à s'épuiser beaucoup trop rapidement avec 18 501 765 fichiers et 7 142 132 dossiers.
Mise à jour # 2 : Il semble que les développeurs de WinDirStat se soient suffisamment impliqués pour nous dire qu'il peut compiler sous 64 bits. Cela lui donne plus de mémoire pour travailler, mais je ne suis pas sûr que cela suffira, à moins qu'ils ne persistent sur le disque.
la source
Réponses:
En supposant que votre système d'exploitation est Windows ...
Quoi qu'il en soit, la tabulation de millions de fichiers prendra toujours beaucoup de temps et sera limitée par les E / S du disque lui-même. Je recommande TreeSize Professional . Ou peut-être SpaceObServer . Vous pouvez également essayer la version gratuite de TreeSize.
la source
Essayez certainement WinDirStat : il donne une visualisation fantastique de l'utilisation du disque en décrivant chaque fichier comme un rectangle dessiné à l'échelle, codé par couleur par type de fichier. Cliquez sur n'importe quel élément de la visualisation et vous le verrez dans l'arborescence des répertoires.
La version standard 32 bits est limitée à 10 millions de fichiers et à 2 Go de RAM, mais le code source sera correctement généré en tant qu'application 64 bits. Le fait que le serveur en question ne dispose que de 2 Go de RAM peut être problématique dans ce cas spécifique, mais la plupart des serveurs avec un si grand nombre de fichiers auront beaucoup plus de RAM.
Edit # 1: Je regrette d'avoir découvert que, lors d'un test sur un volume de 4 To contenant des millions de fichiers, WinDirStat Portable s'est écrasé après avoir indexé environ 6,5 millions de fichiers. Cela peut ne pas fonctionner pour la question d'origine si le lecteur contient plus de 6 millions de fichiers.
Edit # 2: la version complète de WinDirStat plante à 10 millions de fichiers et 1,9 Go utilisés
Edit # 3: J'ai pris contact avec les développeurs WinDirStat et: (1) ils conviennent que cela a été causé par les limitations d'utilisation de la mémoire de l'architecture x86, et (2) ont mentionné qu'il peut être compilé en 64 bits sans erreurs. Plus à venir.
Édition n ° 4: le test d'une version 64 bits de WinDirStat a réussi. En 44 minutes, il a indexé 11,4 millions de fichiers et consommé 2,7 Go de RAM.
la source
J'utilise régulièrement FolderSizes sur plusieurs lecteurs de 1 To avec plusieurs millions de fichiers sans aucun problème.
la source
+1 pour les produits TreeSize, mais ...
Votre phrase à propos de "ne pas nettoyer suffisamment d'espace" me fait me demander: auriez-vous pu manquer d'espace réservé NTFS MFT? Si le système de fichiers récupère plus d'espace MFT que celui initialement alloué, il n'est pas renvoyé à l'espace fichier normal et n'est pas affiché dans les opérations de défragmentation.
http://support.microsoft.com/kb/174619
"Les volumes contenant un petit nombre de fichiers relativement volumineux épuisent d'abord l'espace non réservé, tandis que les volumes contenant un grand nombre de fichiers relativement petits épuisent d'abord l'espace de la zone MFT. Dans les deux cas, la fragmentation de la MFT commence à se produire lorsqu'une région ou autre devient plein. Si l'espace non réservé devient plein, l'espace pour les fichiers et répertoires utilisateur commence à être alloué à partir de la zone MFT en concurrence avec le MFT pour l'allocation. Si la zone MFT devient pleine, l'espace pour les nouvelles entrées MFT est alloué à partir du reste de le disque, à nouveau en concurrence avec d'autres fichiers. "
la source
Sérieusement. Je l'ai fait avec 5 ou 6 millions de fichiers; Je ne sais pas exactement ce que vous cherchez, mais un bon langage de script en mangera.
la source
Je ne suis généralement pas un utilisateur de Windows, mais je connais l'existence de Cygwin. :-)
Si cela fonctionne assez bien, quelque chose comme
ou peut-être à Cygwin
Quoi qu'il en soit, ceux-ci devraient vous imprimer les 50 plus grands répertoires (tailles en mégaoctets).
la source
J'ai trouvé quelques problèmes avec Spacemonger et à la recherche d'un utilitaire que je pouvais facilement transférer ou exécuter à partir d'une clé USB - Space Sniffer s'est avéré très polyvalent à cet égard et a géré les volumes de plusieurs téraoctets avec facilité.
la source
du -s
peut être utilisé à la rigueur et fonctionnera aussi longtemps que nécessaire.la source
Sous Windows, j'utilise SpaceMonger (ou une ancienne version gratuite ). Sur OSX J'utilise Disk Inventory X .
la source
Jetez un œil à GetFoldersize
la source
En ce qui concerne la table mft, de l'arrière de ma tête, je semble me souvenir que jkdefrag, la version open source d'origine, a donné une vue très précise du disque, y compris des couleurs différentes pour les zones mft. Je pense que je l'ai utilisé une fois auparavant pour une estimation approximative de la taille et de la fragmentation du mft.
Ne se soucie pas non plus de chdsk.
Pourrait essayer ça?
la source
http://www.freshney.org/xinorbis/
Une autre option potentielle
la source
J'ai utilisé Disk Usage Analyzer - Baobab sur Linux en utilisant sa fonction de scan à distance sur le serveur Windows. Je ne sais pas quelles sont ses limites.
Fedora LiveCD contient Baobab. Démarrez-le sur n'importe quel ordinateur de votre réseau local.
Tout est gratuit - comme dans la bière et dans le discours. Aussi pour usage commercial.
la source