Objectif de / dev / zero?
On février 17, 2021 by admin Jai essayé de cat /dev/zero
, et cela na pas semblé faire quoi que ce soit. Jai cherché sur Google /dev/zero
, et il dit que cest essentiellement un fichier vierge de taille infinie. cat
imprime-t-il un nombre infini de caractères inexistants? Comment cela marche-t-il? Comment fournit-il des données infinies sil « a 0 octet? Quelles sont les utilisations de ce fichier, si lon peut simplement créer un fichier vierge?
Commentaires
- Exécutez
cat -v /dev/zero
pour voir ce quil fait. Voir Effacer lespace inutilisé avec des zéros (ext3, ext4) dans un but commun. - Il y a aussi / dev / null qui se comporte comme un fichier vide si vous voulez le lire et comme un trou noir si vous y écrivez.
- @jofel mais vous pouvez ' t utiliser / dev / null pour un nombre infini de bits 0, non?
cat foo > /dev/null
etcat foo > /dev/zero
sont identiques, maiscat /dev/null
etcat /dev/zero
est-ce que ' est le même, correct? - @tkbx oui, correct.
/dev/null
renvoie immédiatement EOF si un programme veut y lire./dev/zero
renvoie une infinité de 0 octets.
Réponse
/dev/zero
est un fichier spécial (dans ce cas, un pseudo-appareil) qui fournit un flux sans fin de caractères nuls (donc hex 0x00)? Cest pourquoi votre cat
ne produit rien (mais essayez de lexécuter via od
(octal dump)).
« fichier vierge de taille infinie » nest pas correct à 100%: ce nest pas un fichier normal, mais un fichier spécial (plus comme un « flux » ou un générateur). Vous pouvez en lire autant que vous le souhaitez, par exemple avec dd
(comme dd if=/dev/zero of=yourfile count=1024 bs=1024
).
Il « nest pas vraiment un fichier vide , ni utilisé pour créer des fichiers vierges: il est utilisé pour créer des fichiers ou des pages de mémoire remplis uniquement de zéros. Vous pouvez également y écrire, en le faisant fonctionner comme un gouffre (son frère le plus populaire /dev/null
est plus couramment utilisé pour cela cependant).
srm
, mais la plupart ' gommes sécurisées ' préfèrent écrire des données (pseudo-) aléatoires au lieu de remettre à zéro un lecteur, car une passe de remise à zéro nest pas suffisamment sécurisée (certaines agences à trois lettres peuvent toujours déduire le contenu original dun disque dur remis à zéro, car les bits individuels ne sont pas vraiment à 100% 1 ou 0, mais juste " principalement 1 " ou " principalement 0 ". Comparez-le à un levier que vous pouvez mettre " complètement à gauche " ou " complètement à droite ", mais en général, une simple balançoire de lautre côté suffit.dd
une partition, vous voudrez peut-être remplir tout lespace vide à 0 plutôt que aléatoire pour obtenir un fichier compressé plus petit lat euh.