Créer un fichier volumineux à partir de la ligne de commande ou de l'utilitaire de disque à des fins de test

Les gros fichiers vides sont souvent utilisés à des fins de test lors des tests d'accès au disque, du développement, de l'assurance qualité, de la mise à zéro des données et des scripts. Bien que ce ne soit certainement pas applicable à la plupart des utilisateurs, il est assez facile de faire que n'importe qui peut l'essayer même si vous n'avez pas de besoin spécifique.

Nous allons couvrir trois façons de générer rapidement des fichiers de n'importe quelle taille, deux utiliseront la ligne de commande; l'un étant indépendant du système d'exploitation et l'autre spécifique à MacOS et Mac OS X, et une autre approche plus conviviale qui utilise l'application Disk Utility native de Mac OS X.


Ceci est évidemment destiné à des utilisateurs un peu plus avancés avec une certaine aisance dans la ligne de commande. Pour suivre, ouvrez l'application Terminal pour commencer.

Créer un fichier volumineux à partir de la ligne de commande

Le moyen le plus simple de générer instantanément un gros fichier vide est d'utiliser la commande 'mkfile', qui peut immédiatement créer un fichier de n'importe quelle taille, qu'il soit assez petit en octets ou énorme en gigaoctets. La syntaxe pour mkfile est la suivante:

mkfile -n size[b|k|m|g] filename

Par exemple, pour créer un fichier de 1 Go appelé "LargeTestFile" sur le bureau, la commande serait:

mkfile -n 1g ~/Desktop/LargeTestFile

Le fichier est créé instantanément et prend la taille complète. Les gros fichiers créés à partir de mkfile sont pleins de zéros.

Vous pouvez confirmer la taille du fichier généré avec la commande finder Get Info, ou en utilisant ls:

ls -lh ~/Desktop/LargeTestFile

Le seul inconvénient de la commande mkfile est qu'elle semble limitée à Mac OS X, donc si vous cherchez une solution compatible multi plates-formes qui fonctionnera avec d'autres versions d'Unix et de Linux, vous devrez utiliser "dd" à la place.

La commande dd est un peu moins simple à utiliser que mkfile, mais elle est relativement simple, vous devez spécifier un nom de fichier, une taille de bloc et un nombre de blocs:

dd if=/dev/zero of=FileName bs=1024 count=1000

Une autre approche consiste à utiliser l'indicateur de recherche avec une simple multiplication d'une taille de bloc de mégaoctets (1024), ainsi la commande suivante créerait un fichier de 100 Mo (1024 x 100):

dd if=/dev/zero of=LargeTestFile.img bs=1024 count=0 seek=$[1024*100]

La dernière méthode de multiplication de CyberCit peut être un peu plus facile si vous n'êtes pas génial pour estimer des tailles d'octets importantes.

Créer un énorme fichier avec l'utilitaire de disque

Bien que la plupart des utilisateurs qui cherchent à créer de gros fichiers vides préfèreront probablement la ligne de commande, vous pouvez également utiliser Utilitaire de disque.

  • Lancez Utilitaire de disque et choisissez "Nouvelle image"
  • Nommez le fichier comme approprié, puis déroulez le sous-menu "Taille" et sélectionnez une taille de fichier appropriée à vos besoins
  • Ignorer tous les autres paramètres et choisissez "Créer"

DiskUtility créera une image disque de la taille spécifiée, ce qui fonctionne bien pour les tests. Localisez le DMG nouvellement conçu dans le Finder et vous verrez qu'il prend la taille complète qui a été spécifiée, dans ce cas, la taille d'un DVD de 2, 6 Go:

Contrairement à dd ou à mkfile, l'image disque sera réellement accessible en écriture, sauf indication contraire, ce qui peut ou non être utile à ces fins de développement.

Quelle que soit la méthode que vous utiliserez, vous voudrez probablement supprimer le (s) grand (s) fichier (s) de test par la suite, sinon votre disque dur peut rapidement être rongé par des fichiers de test inutiles d'une taille énorme. Si vous avez créé les fichiers de test dans un dossier obscur et que vous ne pouvez plus les localiser vous-même, n'oubliez pas que vous pouvez effectuer des recherches spécifiques à Spotlight dans le Finder OS X pour rechercher rapidement tout élément volumineux dans le fichier système.