cpio
En informatique, cpio est un utilitaire d'archivage ainsi qu'un format de fichier utilisé sur UNIX. Il était conçu à l'origine comme un moyen de sauvegarder des données sur bande magnétique sur les premières versions d'UNIX System III et UNIX System V. Il est cependant dépassé en popularité par tar[1], mais reste important, et est employé notamment par le RPM Package Manager et par initrd, ainsi que pour les archives distribuées par Oracle. Une des versions les plus répandues de ce logiciel est celle du projet GNU.
Archive cpio
Une archive cpio est un assemblage de fichiers et de répertoires à l'intérieur d'un seul fichier d'archive. Elle utilise souvent le suffixe .cpio. Le format comporte un en-tête qui permet à des utilitaires comme le GNU cpio de reconnaître le format et d'en extraire les fichiers. L'archive mentionne les attributs de chaque fichier, comme son nom, sa date de modification, son possesseur et ses permissions.
Le format cpio est fonctionnellement similaire à celui de tar, et a été conçu pour conserver des copies de sauvegarde sur bande magnétique de façon contiguë. Comme pour tar, les archives cpio ne sont ni comprimées ni chiffrées contrairement à DAR, et on fait souvent appel à un outil de compression séparé, comme gzip ou bzip2 quand c'est utile.
cpio et POSIX
L'utilitaire cpio a été standardisé par la norme POSIX.1-1988. Il a été abandonné par des versions ultérieures de la norme à partir de POSIX.1-2001, en raison de sa limitation aux fichiers de 8 GB. L'outil standard POSIX pax peut être utilisé pour lire et écrire des archives cpio.
Implémentations
- GNU cpio, l'implémentation par le projet GNU est aujourd'hui présente dans la plupart des distributions GNU/Linux.
- Mac OS X utilise bsdcpio, du projet FreeBSD
- Le projet Heirloom Toolchest, qui a repris des utilitaires Open Source des sociétés Sun et Caldera à présent disparues, propose une version de cpio
- On en trouve différentes implémentations sur les systèmes Unix Cray UNICOS, SGI IRIX, UnixWare, Tru64 UNIX, etc.
GNU cpio
GNU cpio est l'implémentation par le projet GNU de l'utilitaire UNIX cpio. C'est une des implémentations les plus répandues, on la trouve en particulier sous Linux.
Le format d'archives de GNU cpio est identique à celui de GNU tar et les deux outils peuvent être utilisés indifféremment.
Notes et références
- Peek J, O'Reilly T, Loukides M. 1997. Unix Power Tools. O'Reilly & Associates, Inc. (ISBN 1-56592-260-3).
Articles connexes
Liens externes
- Page de manuel de cpio sur le site Linux Certif
- (en) La commande cpio sur le site du projet GNU
- (en) Page de manuel de cpio, implémentation par le projet GNU
- (en) Page de manuel de cpio, implémentation par le projet FreeBSD
- (en) Page de manuel de cpio, implémentation par le projet Heirloom Toolchest
- Portail des logiciels libres