# Rufus (logiciel)

Rufus, acronyme de « the Reliable USB Formatting Utility (with Source) » (en français : l'utilitaire fiable de formatage USB (avec les (codes) sources), est un logiciel libre et, par conséquent, open-source sous licence publique générale GNU. Il permet de créer des supports bootable (live USB) sur un périphérique externe comme une clé USB.
Il est développé par Pete Batard d'Akeo Consulting, à titre personnel.

## Présentation

Disponible sous Windows, son objectif premier est de permettre au plus grand nombre de créer des live USB sur un périphérique externe en une seule opération, sans connaissances particulières, minimisant les erreurs humaines et s'assurant également de l'intégrité du support et de la fiabilité des opérations effectuées (pendant l'écriture). Ça permet de minimiser les instabilités de l'installation d'une image disque sur un périphérique, afin de maximiser les chances de démarrage dans des cas de figures non anticipés.
Rufus s'appuie, pour sa conception, sur d'autres logiciels libres bien connus, dont notamment :
* E2fsprogs (pour sa vérification de blocs défectueux) ;
* Syslinux (gestionnaire d'amorces (bootloader) en ext, BTRFS, FFS, UFS, FAT, vFAT, et NTFS) ;
* GRUB 2 (gestionnaire d'amorces (bootloader) en ext, BTRFS, UDF, FAT, vFAT, NTFS...) ;
* ms-sys (pour la création/modification de secteurs de boot Windows).

## Historique

Rufus était à l'origine conçu pour remplacer HP USB Disk Storage Format Tool for Windows, qui était utilisé principalement pour créer des live USB DOS, constatant que Windows n'incluait aucun autre outil natif pour ce besoin. Entre-temps, Windows USB/DVD Download Tool (WUDT), un outil de Microsoft, fût diffusé (sous la licence libre GPLv2 depuis novembre 2009), mais reste cependant rudimentaire et limité comparativement à Rufus.

### Les versions marquantes

* v1.0.3 : la première version distribué de Rufus (les précédentes étant uniquement interne : alpha), sorti le 12 décembre 2011. Elle supportait uniquement MS-DOS.
* v1.0.4 - introduction du support de FreeDOS.
* v1.1.0 - support d'image ISO.
* v1.2.0 - Jusqu'à la v1.2.0, deux versions distinctes étaient fournies : une pour MS-DOS et une pour FreeDOS.
* v1.3.0 - support du formatage de périphériques en FAT32 supérieur à 32 Go.
* v1.3.2 - support de boot UEFI et introduction de l'interdiction d'opérer sur le lecteur C:
* v1.4.0 - Internationalisation et localisation.
* v1.4.2 - support du protocole USB UAS (ou UASP, 'P' pour protocole) : il permet de se rapprocher du débit théorique maximum de l'USB, alors que le protocole habituel (BOT) ne permet en pratique qu'un dixième de ce débit.
* v2.0 - support de Windows To Go, et des images basé sur GRUB4DOS ou GRUB 2.
* v2.3 - permet de choisir, lors d'utilisation d'une image hybride, la manière de l'installer (il demandera s'il convient de l'installer en BIOS, en UEFI, ou les deux à la fois).
* v2.13 - Lorsque Rufus opère sur le périphérique, il en a l'accès exclusif : cela permet de se prémunir contre certaines collisions/corruptions.
* v2.18 - dernière version à supporter Windows XP et Vista.
* v3.0 - refonte graphique de l'application afin d'améliorer l'ergonomie.
* v3.22 - dernière version à supporter Windows 7

## Fonctionnalités

* diversité des images : Rufus supporte beaucoup de fichiers .iso, incluant de nombreuses distributions Linux et des .iso d'installation Windows, ainsi que des images disques brutes (y compris compressées). Si nécessaire, il installera un bootloader (une amorce) comme Syslinux ou GRUB sur le périphérique pour le rendre bootable.
* diversité des supports de stockages : il permet aussi l’installation de MS-DOS et de FreeDOS sur des supports externes, comme la création d'un média Windows To Go sur une clé USB. Il prend en charge le formatage des systèmes de fichiers suivant : FAT, FAT32, NTFS, exFAT, UDF, ReFS.
* calcul d'une signature numérique : Rufus peut calculer la signature (hash) MD5, SHA-1 et SHA-256 de l'image sélectionnée.
* protection contre l'erreur humaine : certaines actions ou certains choix de l'utilisateur peuvent amener à l'échec de la création du live USB, à un formatage erroné ou à un PC inopérant. Des sécurités sont donc mises en œuvre pour les corriger comme de créer son live USB sur C: (l'emplacement de Windows sur le disque dur actif), par exemple.
* contre-mesures : Rufus permet de contourner certains problèmes apparaissant généralement sur de vieilles architectures, à travers des coches ✓ (« Options avancées »). Il permet notamment de supprimer les restrictions matérielles pour l'installation de Windows 11 (mémoire RAM minimale, Secure Boot et TPM 2.0) et d'effectuer l'installation sans nécessiter de compte Microsoft en ligne.
* portabilité : l'ajout d'un « p » au nom de l'exécutable permet d'exporter les paramétrages dans un fichier, et de rendre ainsi l'état de l'interface indépendante du PC sur lequel il est lancé.