:koi:
Sinon, il est recréé en rebootant (tout au moins chez moi).
Version imprimable
Bonjour,
En se penchant réellement sur la question et non sur des emplacements hasardeux de mes doigts lors de la frappe, disedorgue fait une remarque qui fait avancé les choses.
En effet lors de la commande sudo mv lefFichier /dev/null celle-ci écrase donc bien le fichier, la commande ls -l /dev/null montre bien que le fichier est au départ un fichier FIFO et qu'à l'écrasement
les permissions passe de crw-rw-rw- à celle du fichier déplacé.
Comme le dit disedorgue la commande $ sudo su - -c "cd /dev ; MAKEDEV std" recréera le device null ou un sudo reboot (plus long ...).
Donc dans ce cas que se passerait -il concrètement avec le /dev/null si il est donc écrasé ? Fonctionnerait-il toujours ? Sera-t-il capable de récupérer les flux ?
D'un œil non avisé je pense que le fonctionnement sera différent mais que cela n'empêchera pas forcément la redirection des flux et l'écrasement des derniers arrivés par les flux venant par la suite; cela sera comme écraser des flux par des autres sur un fichier régulier donc ?
Au redémarrage de la machine ou après la commande $ sudo su - -c "cd /dev ; MAKEDEV std" le /dev/nul écrasé par le ou un fichier régulier sera lui même ré-écraser par le /dev/null initiale (si ont peut dire...); se qui reviendra un peu au même je pense.
Si quelqu'un a une idée sur la question pourrait-il me donner son point de vue.
Merci cordialement.
Heureusement, qu'au reboot, il recrée les devices même si historiquement, ça n'a pas toujours été le cas.
Mais, j'imagine mal de devoir rebooter un serveur de production à cause d'une mauvaise manipulation de ce genre :aie:
Alors, le fcihier /dev/null n'est pas un FIFO mais un fichier device de type caractère.
Et le fait que celui-ci soit transformé en fichier normal peut devenir très impactant pour ton système:
-Problème de droit
-Disque dur qui se sature de façon non visible (et oui, on peut continuer à remplir un fichier qui a été supprimé)
Voici un exemple que l'on emploi de temps en temps pour par exemple modifier des fichiers sans passer explicitement par un fichier tampon:
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13 $ ls -ai 7036874418195687 . 89790517570844964 .. 17169973579771568 bob $ cat bob 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 $ exec 3<bob $ rm bob $ ls -ai 7036874418195687 . 89790517570844964 .. $ cat <&3 >bob $ ls -ai 7036874418195687 . 89790517570844964 .. 6755399441122155 bob $ cat bob 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
Comme tu peux le voir dans les 2 exemples, on efface le fichier avant d'exploiter les données du dit fichier.Code:
1
2
3
4
5
6 $ exec 3<bob $ rm bob $ ls -ai 7036874418195687 . 89790517570844964 .. $ cat <&3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
Le premier exemple, est juste là pour montrer que dans ce cas, on change bien l'inode du fichier que l'on modifie.
Bonjour,
Merci infiniment pour toutes ces informations et pour le temps passé afin de m'apporter des réponses qui m'ont grandement servi et m'ont été d'une grande aide.
Merci également pour votre réactivité à tous et pour le soutien, réellement important, que vous apportez (bénévolement) aux débutants ou à tous ceux qui se posent des questions.
Mention spécial pour disedorgue, jack-ft, papajoker, N_BaH.
Mention pour JipétéTrès cordialement.