Journal R.I.P.

Posté par  .
Étiquettes : aucune
0
1
sept.
2004
J'ai le regret de vous annoncer le décès imminent d'une Mandrake 10 Community (système unique de mon unique machine) suite à une malencontreuse erreur de manipulation, qui rappellera qu'il faut éviter de se logguer en root avec plus de 0,5 g d'alcool dans le sang :

rm -rf /boot /sbin

au lieu de

rm -rf boot sbin (dans un répertoire de test)

Sur ce bonne nuit :)
  • # argh !

    Posté par  (site web personnel) . Évalué à 10.

    Ca me rappelle la fois où un jour que je faisais le ménage sur mon disque,
    j'ai fait rm -rf recherche/
    (en pensant "qu'est ce que c'est encore que ce répertoire à la con")
    Deux secondes après, je me suis souvenu que mon métier était enseiggnant-chercheur, et que donc ledit répertoire ne contenait pas forcément des conneries...

    Bon, ben bonne nuit, hein...
    • [^] # Re: argh !

      Posté par  (site web personnel) . Évalué à 3.

      Pareil... avec ma tendance à effacer tous les répertoires tmp que je trouve...

      Oh, ben tiens... c'est vrai que le mv clé_usb -> tmp avant formattage de la clé n'avait servi à rien... /o\

      Comme dit le vieux dicton...

      "Il y a 2 types de rootards...
      - ceux qui ont fait une connerie
      et
      - ceux..."

      Sur ce, Comme dirait Julius... "Alea Jacta est !"
      • [^] # Re: argh !

        Posté par  . Évalué à 3.

        et ceux qui vont en faire une

        (pense un peu a ceux qui connaisse pas et finit ta citation la prochaine fois ;)
  • # Condoléances

    Posté par  . Évalué à 6.

    Je pense que ça nous est tous arrivé au moins une fois, la ligne de commande ne connait pas de poubelle ou alors il faut fait un alias bien senti sur rm....

    Y'a un bon point dans ton incident, tu va pouvoir installer une slack (je sais il est énorme il passera pas)

    =========>[]
    • [^] # Re: Condoléances

      Posté par  (site web personnel) . Évalué à 4.

      mais non ce n'est pas un troll, moi j'utilise une slack !


      Quoi ? moi aussi ? bon ok =====> []
      • [^] # Re: Condoléances

        Posté par  . Évalué à 2.

        On n'utilise pas une slackware, on la subit.
        Je vais dehors leur dire, tiens !

        ====>[]
    • [^] # Re: Condoléances

      Posté par  . Évalué à 3.

      « (...), la ligne de commande ne connait pas de poubelle... »
      C'est en travaux.
      <pub>
      http://www.shirka.org/phpwebsite/index.php?module=pagemaster&PA(...)
      La page du monsieur qui a entrepris cela :
      http://linuxfr.org/~shirka/(...)
      </pub>
      Souhaitons que son projet aboutisse.

      Fab.
      • [^] # Re: Condoléances

        Posté par  (site web personnel) . Évalué à 4.

        Question naîve: à l'époque du MSDOS, écrire un "undel" était relativement
        facile - voir par exemple Norton Utilies 1.0, mais un lecteur de 'La bible PC'
        comprenait le fonctionnement de la FAT en quelques minutes et pouvait
        potentiellement l'écrire. Visiblement sous le Linux d'aujourd'hui c'est une autre paire de manches.
        Est-ce que quelqu'un peut m'expliquer brièvement pourquoi ?
        • [^] # Re: Condoléances

          Posté par  . Évalué à 8.

          La problématique n'est en fait pas tout à fait identique : sous MS-DOS, l'effacement consistait à remplacer le premier caractere du nom de fichier dans la fat par un '?', si mes souvenir sont bon, et donc l'undeletion consistait logiquement à rechercher les entrées de la fat commancant par un '?' et à les restaurer (en demandant à l'utilisateur de se souvenir du premier caractere :p )

          Un système d'exploitation moderne à la capacité de fonctionner avec plusieurs systèmes de fichiers différents, donc la technique de restauration au plus bas niveau du FS ne fonctionne plus, sauf a faire un truc par fs (approche existante pour ext2) et en plus le but d'une "corbeille" est de garantir (sous conditions) la possibilité de récupération des fichiers effacés.

          Or un simple retrait d'entrée du FS ne suffit pas pour garantir ca, car l'espace et immédiatement libéré et un système moderne étant multitache, n'importe qu'elle appli en cours qui ecrit un fichier pourra potentiellement ecraser les données. Du coup faut faire un hook en kernel mode (donc apprendre a programmer en kernel mode) au niveau de l'api d'effacement des fichiers, et integrer la logique des conditions (histoire que les rm permettent bel et bien de recuperer de lespace disque au final, et ne se contente pas d'un mv de chaque fichier vers un autre repertoire).

          Dans un cas tu as quelque chose de preventif, dans l'autre de paliatif, dans un cas tu te place au niveau du FS, dans l'autre au niveau de l'interface kernel / user. Dans un cas tu as quelque chose qui fonctionne tout le temps, dans l'autre uniquement au moment de la récup.

          Mais selon moi un lecteur de 'la bible PC' capable de comprendre le fonctionnement de la FAT en quelques minutes et de coder un "undel" potable à de toute facon largement le niveau pour s'attaquer à un système de corbeille pour linux.
    • [^] # Re: Condoléances

      Posté par  (site web personnel) . Évalué à 3.

      export POUBELLE=cheminDeLaPoubelle
      alias "rm=myRM.sh"

      NdM : s'assurer que myRM est dans le path

      myRM.sh :

      #!/bin/bash
      if [ `pwd` = $POUBELLE ]
      then
      /bin/rm $1
      else
      mv --target-directory=$POUBELLE $1
      fi
      • [^] # Re: Condoléances

        Posté par  . Évalué à 3.

        un patch ;)

        --- myRM.sh 2004-09-02 21:08:24.597669968 +0200
        +++ mymyRM.sh 2004-09-02 21:07:47.920245784 +0200
        @@ -1,8 +1,8 @@
        #!/bin/bash
        if [ `pwd` = $POUBELLE ]
        then
        - /bin/rm $1
        + /bin/rm $*
        else
        - mv --target-directory=$POUBELLE $1
        + mv --target-directory=$POUBELLE $*
        fi
  • # Il ya deux types d'administrateur..

    Posté par  . Évalué à 2.

    Il ya deux types d'administrateurs :
    - Ceux qui vont faire une connerie.
    et
    - Ceux qui ont fait une connerie.

    Tu sais maintenant ou tu es !!!
  • # Protégez vos fichiers !

    Posté par  . Évalué à 3.

    Sauvez votre couple avec chattr -i fichier !
    • [^] # Effectivement,

      Posté par  (site web personnel) . Évalué à 10.

      Ceux qui savent manier le chattr avec doigté ont plus de chances de sauver leur couple.
    • [^] # Re: Protégez vos fichiers !

      Posté par  . Évalué à 5.

      > chattr -i fichier

      ça serait pas chattr +i fichier, parce que ta commande, justement, elle sert à suprimer cette protection!!!
  • # morte ?

    Posté par  . Évalué à 2.

    bin elle est pas morte ! Il suffit de faire deux cp -r et c'est reparti...
    • [^] # Re: morte ?

      Posté par  (site web personnel) . Évalué à 2.

      Et oui, tant que l'on ne perd pas /etc, /home ou /var ça craint pas encore trop. Même /lib c'est pas très grave. Il faut perdre le bon vieux réflexe de la reinstallation totale du système :)
      • [^] # Re: morte ?

        Posté par  (site web personnel) . Évalué à 5.

        Pour ma part, j'ai dans ma crontab une sauvegarde journalière de mon /etc avec rsync.
        Ca ne prend pas beaucoup de place, et c'est fort utile si la mise à jour d'un
        paquet écrase un fichier de conf sans prévenir (si si ça arrive)... ou
        simplement qu'on fait une connerie (ça arrive aussi).
        • [^] # Re: morte ?

          Posté par  . Évalué à 1.

          façon barar:

          Tu peux prendre un live-cd et monté ou copier son répertoire sbin en espérant qu'il n'y a pas de gros problème de lib.

          Puis tu réinstalle tous les packets qui avait un fichier dans /sbin.
        • [^] # Re: morte ?

          Posté par  . Évalué à 1.

          FauBackup peut peut-être t'intéresser :

          http://faubackup.sourceforge.net/(...)
  • # j'ai fait mieux

    Posté par  . Évalué à 1.

    deja fait un rm * bak dans /usr/bin par ssh !!!!
    (noter l'absense du point "." sa change tout)
  • # moi...

    Posté par  . Évalué à 2.

    Je n'ai pas repris la programmation depuis que j'ai fais :

    rm winex * -rf

    dans /home/max/

    Et dire que je voulais juste supprimer le winex.tar.gz et son extraction...

    J'ai essayé de recuperer les fichiers... Mais tellement de suppression... J'ai recuperé un fichier important... Mais sans le reste c'est pas vraiment la peine...

    Sous windows j'ai trouvé un logiciel pour recuperer des fichiers supprimés sous une ext :)
    Malheuresement il plantais ce con...

    Sinon un logiciel qui avait l'air pas mal sous linux... impossible de le compiler, j'y ai meme mis un autre pote qui etait sur debian à la compile, il a du modifier le programme pour essayer de le compiler et à part des erreurs en moins on est pas arrivé à le compiler...


    Si quelqu'un connait un bon logiciel libre si possible qui permettent de corriger les erreurs de type rm... et qui se compile facilement lol...
    • [^] # Re: moi...

      Posté par  . Évalué à 5.

      Un vrai bon shell (zsh pour ne pas le citer par exemple) te demanderait si tu veux vraiment faire la connerie que tu viens d'ecrire. Ca permet d'eviter la plupart des conneries meme s'il est toujours possible de tout casser.

      Et puis bon les backups c'est pas fait pour les chiens, un hd qui brule ca arrive vite :-)

      Sur de l'ext2 tu peux recuperer des fichiers mais en fait tu recuperes plutot une bouillie d'inode a reassembler a la main (sauf patchouillage du noyau il me semble). Sur de l'ext3 ca ne marche pas. Bref encore et toujours, ne pas avoir 2 versions sur supports distincts d'un fichier important c'est assez risque !
      • [^] # Re: moi...

        Posté par  . Évalué à 2.

        Si si, c'etait de l'ext3 et j'avais réussi à recuperer des fichiers mais ils etaient pas nommés mais j'avais leur poid en octet ce qui m'a permis de retrouver un fichier en particulier au bout de 2H...

        PS: Pourquoi je suis evalué à -1 ? j'ai encore fait trop de fautes ?
  • # Projet info

    Posté par  (site web personnel) . Évalué à 7.

    Vu que tout le monde y va de sa petite mésaventure, je vais m'y mettre.

    Pour un projet informatique j'avais à réaliser un outil graphique pour ajouter / modifier / supprimer un utilisateur Linux.

    J'avais fait un beau petit programme en tcl/tk qui allait modifier les fichiers /etc/shadow et /etc/passwd et bien sûr dans la fonction de suppression de l'utilisateur j'avais inclu la suppression de son répertoire personnel.
    Pour tester j'avais créé un utilisateur pipo sur ma machine. Et je ne sais pourquoi, mon programme n'arrivait pas à supprimer l'utilisateur pipo. A force de me prendre la tête et de m'énerver j'ai sélectionné un autre utilisateur à supprimer (Mon login normal) en oubliant que j'avais activé l'option de suppression du répertoire.
    "\o/ Miracle ça marche ! Mais c'est bizarre mon disque gratte o_O Arggggggg !!!!! Ctrl-C"

    J'ai perdu un bon quart de mon répertoire perso :)

    L'association LinuxFr ne saurait être tenue responsable des propos légalement repréhensibles ou faisant allusion à l'évêque de Rome, au chef de l'Église catholique romaine ou au chef temporel de l'État du Vatican et se trouvant dans ce commentaire

    • [^] # Re: Projet info

      Posté par  (site web personnel) . Évalué à 3.

      voilà la véritable leçon à tirer de tout ça ... Il ne sert à rien d'avoir un FS rapide, stable, journalisé, etc si celui là n'est pas lent pour supprimer les fichiers, sinon pas de Ctrl-C.

      /me, victime du "cd" avant un "rm -rf *"
  • # Dans le même genre

    Posté par  . Évalué à 2.

    Dans le même genre, mais juste avec l'excuse de la fatigue :
    J'installe une debian sur mon deuxième disque dur, le premier contenant une autre distrib et mes donnée. Il doit être 2 - 3 heures du matin. A la sélection des partition, je choisi hda6 et hda7 (exemple) L'installeur, pas bête, me demande si je suis sur de vouloir formaté, question conne, bien sur que je suis sur ! je valide, et de suite je me dit ? hda ? noooon, ca devait être hdb... pourtant.... Ahhhhhhhhh ! mes données !!!

    snif.
  • # Pour éviter le crash

    Posté par  . Évalué à 7.

    Je suppose que tu as gentiment gardé ta Mandrake allumée, et ta session root en marche...

    Pour réparer /boot, à mon avis, il suffit de mettre à jour le noyau (et si urpmi était dans /sbin, pas grave, il te suffira d'aller en chercher un par ftp sur kernel.org).

    Ensuite, si tu as Lilo, pas de problème, il n'aura pas été modifié par cette manip'. Si tu as Grub, ça m'a l'air plus délicat, mais tu pourras toujours booter en spécifiant la ligne de commande manuellement.

    Pour sbin, c'est plus compliqué. Mon conseil, dans un premier temps, c'est de se créer une faille dans le compte root, genre un utilisateur supplémentaire dont l'uid est de 0, ce qui évite de réécrire "su" (pour ajouter l'utilisateur, trafique donc /etc/passwd et /etc/shadow), et de prendre le risque de ne plus rien pouvoir faire. Ensuite, il faut absolument faire cat /proc/1/exe > /sbin/init, pour récupérer un programme init viable.

    A ce stade, le système est tout juste viable, et tu peux essayer de récupérer les sources des programmes de sbin chez MandrakeSoft pour les recompiler et les réinstaller.

    Un dernier conseil : avant de faire ton prochain init 0 (ou 6), grave-toi une Knoppix, des fois qu'il resterait des programmes critiques non réinstallés...
  • # dans le genre ...

    Posté par  (site web personnel) . Évalué à 2.

    gcc mon_prog.c -o mon_prog.c

    ca donne pas mal en fonction du temps passé a tapoter le dit fichier C ...

    merci la complétion sur TAB ...
    • [^] # Re: dans le genre ...

      Posté par  . Évalué à 3.

      Dans mon esprit, faire:

      /etc/rc.d/init.d/network stop
      /etc/rc.d/init.d/network start

      Sauf qu'à distance, ça marche pas.
      • [^] # Re: dans le genre ...

        Posté par  (site web personnel) . Évalué à 1.

        /etc/rc.d/init.d/network restart
        ca marche mieux, a condition de savoir recontacter le cible (genre ip fixe ou nomDeMachineFixe...)
        • [^] # Re: dans le genre ...

          Posté par  (site web personnel) . Évalué à 2.

          Non,non. Tu ne perds même pas ta connection. Tu peux même faire

          /etc/init.d/networking stop; sleep 30; /etc/init.d/networking start

          et tu n'as pas perdu ta connection ssh.
          • [^] # Re: dans le genre ...

            Posté par  . Évalué à 1.

            Oui, si les ips sont fixes :)

            Moi je devais faire un ping en arriere plan, et un tcpdump sur le receveur pour recapturer l'ip...

            (encore merci à screen)
  • # bienvenue au club

    Posté par  . Évalué à 0.

    ça m'est aussi arrivé (avec plus de 0,5 g d'alcool dans le sang) j'ai explosé ma /home en installant une sourcemage :)
    depuis, je me suis interdit le log en root en étant bourré :)
  • # dans le genre...

    Posté par  . Évalué à 1.

    En salle de tp, avec le mdp root sur les machines.

    Moi : ouais, cool, on peut faire rm -rf /*...
    Le voisin : ah bon, ça fait quoi ?
    Moi : bah vas-y, essaye...
    Le voisin : ...

    ...

    ...

    (quelques secondes plus tard)
    Au fait, rm, c'est pour effacer, non ?

    Moi, hésitant entre le rire et la consternation : oui...
    Le voisin : et /*, c'est quoi ?

    Là, je lui ai dit qu'il pouvait rebooter sur le réseau, et restaurer son poste... Il l'a bien mérité.
  • # C'est la faute au clavier...

    Posté par  (site web personnel) . Évalué à 2.

    Non mais c'est vrai, quelle idée de mettre la touche * si pres de la touche entrée, comme ca tu fais un rm -rf *qquechose, tu dérapes et hop un jolie rm -rf *.
    Je hais les claviers, je les hais...

    CdM : Il est a noter que ce type de bourde augmente proportionellement au taux d'alcool dans le sang, enfin jusqu'au point ou il redevient null mais la c'est qu'on a vraiment trop bu...
  • # eh ben

    Posté par  . Évalué à 3.

    Mieux vaut un systeme mort que des donnees perdues !!

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.