theocrite Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 Règles du 100% questions pour un pinguoin : Tout le monde peut poser une colle sur l'environement GNU/Linux et le libre en général. Les buts peuvent être divers : se sortir d'une situation périeuse, automatiser une action, une action utile dans la vie de tous les jours.... Bref vous n'êtes limités que par votre seule votre imagination. Les problèmes doivent être humainement faisables (hein Rem ) ie, quelqu'un doit pouvoir trouver une solution en un temps raisonnable. Ceci dit, il n'est pas interdit de poster une question dont on n'a pas la réponse afin de faire travailler les cellules grises de nos inpactiens linuxiens. Si un problème ne trouve pas de réponse en un temps/nombre de posts raisonnables, alors il est recommandé de poster une autre question, ceci pour éviter que ce topic meure par l'oubli ou le freepost. Le gagnant est celui qui propose la plus belle solution le plus rapidement possible. Ce qui n'empêche pas de proposer une solution alternative. Le gagnant gagne le droit de proposer une autre question si personne d'autre ne le fait Résumé des questions La question 0.1RC1 (pas encore officiellement le topic des questions libres) [chmod a-x]Sandeman La question 1 (Ce post ) [Fichier supprimé]Theo La question 2 [chmod 777]Rem La question 3 [date actuelle]Sandeman La question 4 [man texte]Theo La question 5 [Transfo caractères]Theo La question 6 [récuperer un user]Theo La question 7 [Liens symboliques]Lorinc La question 8 [Limites user]Lorinc La question 9 [lignes vides]Theo La question 10[HDD Master/Slave]Sandeman La question 11[Extentions]Theo La question 12[Libs OpenGL]Rem La question 13[Chemin absolu en Bash]Gauret La question 14[spécial Konqueror]Sandeman La question 15[Cryptage dans le shadow]Gauret La question 16[Ligne incompréhensible]savory La question 17[Répétition infinie sans boucle]Sandeman La question 18[Chrono en prompt]Sandeman La question 19[Manipulation d'images]lorinc La question 20[Périphérique sur lequel est monté chemin en cours]lSandeman __________________________________________________________________ Vous avez un fichier qui contient une information quelconque (disons les paroles + partitions/tablatures de Nightswich). Pas de chance, vous faites rm -f /home/moi/nightswich (oui, je sais, c'est le bordel, tout est à la racine). Et au moment ou vous appuyez vous entrée, vous vous appercevez que vous avez oublié une partie de la chanson qui se trouvait dans le fichier (mémoire défaillante à votre âge?). Comment retrouver cette partie ? Hypothèses : - Pas d'accès au net - Administrateur de la machine - Pas de moirroirs/backup/sauvegardes - Pas feuilles imprimés - Il n'existe aucun lien (symbolique ou non) sur la machine et le fichier a réellement été supprimé. - Système de fichier ext2. - Les données ne sont plus sur le disque (les bits ont été effacés par un autre fichier) Voila EDIT : Hypothèses. EDIT2 : Mise en page EDIT3 : Ortho/Mise en page/Liens Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sandeman Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 Les Soluces question 0.1RC1 chmod -x chmod Pour chmod a-x chmod, une réponse parfaite donnée par Théocrite question 1 rm d'un fichier si le fichier était encore en mémoire, il faut aller le chercher dans le /proc/kcore sinon, avec un peu d'espoir, un cat /dev/hdxY | strings | grep -100 "mot clé" (à valider) question 2 chmod -R 777 / pas de réponse encore validée (un truc avec un --reference par rapport à un cd d'origine restait à tester) question 3 question 4 question 5 question 6 question 7 question 8 question 9 question 10 hda->hdb, hda étant disque système question 11 question 12 question 13 question 14 génération de MD5 question 15 exécution via dc décode un message ASCII, ici RTFM pas facile de faire la synthèse Lien vers le commentaire Partager sur d’autres sites More sharing options...
lorinc Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 le systeme de fichier est journalisé ou pas, parce si oui Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 31 août 2004 Auteur Partager Posté(e) le 31 août 2004 Bon, je reformule, tu as un fichier texte, tu l'as effacé, tu veut en retrouver une partie (ou complet si possible). Ce qu'il y a dedans quoi. Disons que si le fichier était encore là, tu aurais fait cat /home/moi/nightswich (ou vi, c'est mieux). C'est mieux là ? lornic : Je rajoute une hypothèse. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sandeman Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 alors j'ai bon ? après mes 2 edit ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 31 août 2004 Auteur Partager Posté(e) le 31 août 2004 Bon, sandeman a édite... Ben je ne sais pas, je teste (mais c'est tordu quand même). je commence par monter la partition RO pour pas faire de boulettescat /dev/hdxY | strings | grep -100 "nightwish" edit2 : ou dd if=/dev/... c'est plus élégant (enfin quand on voit le reste de la ligne, l'élégance ...) Tu est sûr que ça fonctionne ça ? Au passage cat /dev/hdxY | strings => strings /dev/hdxY lornic, je veux bien voir ta solution avec le fs journalisé. Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 31 août 2004 Auteur Partager Posté(e) le 31 août 2004 Bon, c'est un peu long cette méthode apparament. Il n'a toujours pas trouvé et il cherche encore. Il y a une méthode au moins qui trouve en 1 minute grand maximum. Je vais me coucher bientôt. Je le laisse tourner. Je te dis demain s'il a trouvé. Tu peut tester aussi Sandeman. Bonne nuit à tous. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Minimalist Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 J'ai vu un truc comme ça sur un linux mag, dans un scan of the month. c'était pour étudier des logs supprimés ou un truc comme ça, et le logiciel utilisé avec une interface Web. Si personne a trouvé mieux je veux bien rechercher dans le placard. Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 31 août 2004 Auteur Partager Posté(e) le 31 août 2004 Minimalist : Poste ta solution que quelqu'un trouve ou non. Et quand bien même personne ne trouverais, je posterais ma solution (qui n'est pas de moi, mais je ne peut pas dire d'ou elle vient tant que personne n'a trouvé ^^). Interface web, c'est interressant, mais je préfère quand même la ligne de commande. Le but du topic, c'est d'apprendre des trucs. Du moins, c'est comme ça que je le vois. C'est pas une question formatée bijective genre une question <=> une réponse. Lien vers le commentaire Partager sur d’autres sites More sharing options...
lorinc Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 au hasard : debugfs -w /dev/hdx >lsdel reperage de l'inode qui a été deletée par malheur >mi <n° de l'inode en question> mettre 'deletion time' à 0 et 'link count' à 1 (c-à-dire anuler à la main l'operation d'effacement) enfin pas oublier de lancer e2fsck pour valider l'operation... PS : je pense qu'un grep -a -B n -A n nightwish /dev/hdtruc marche et merci pour la premiere solution, qui elle marche à coup sur (je viens d'essayer). Lien vers le commentaire Partager sur d’autres sites More sharing options...
Minimalist Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 T'as tout à fait raison en fait. J'ai pas eu l'INpactitude sur ce coup-là. C'était juste le fait d'ouvrir 35 volumes à la suite pour trouver qui me dérangeait un peu ce soir. Mais ayant une chance incroyable le 1er fut le bon. Donc, issu du LinuxMag n°47, Scan of the month 24 : C'est le scan d'une disquette servant à un traffic de drogue. Donc avant ils montent l'image en loopback, puis : "L'analyse sera effectuée avec le produit Open Source The @stake Sleuth Kit (TASK) et son interface Web Autopsy." et ils donnent ça comme adresse : http://project.honeynet.org/scans/scan24/s...k/solution.html Lien vers le commentaire Partager sur d’autres sites More sharing options...
tuXXX Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 je venait de trouver... avec debugfs : lsdel, stat, dump puis avec le début du fichier (dump) et la taille de l'inode (donnée par le stat), on récupère avec dd... Je met mon lien ou pas allez : http://www.praeclarus.demon.co.uk/tech/e2-undel/howto.txt Lien vers le commentaire Partager sur d’autres sites More sharing options...
-rem- Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 En fait, on peut lire la ram.... C'est un truc de sioux, mais c'est possible sous linux. Par contre, ce n'est pas facile a faire, et on a rarement le fichier complet mais plutot des bouts ou des parties. Ca m'est arrivé une fois pour récupérer un projet en C apres un rm *. Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 31 août 2004 Auteur Partager Posté(e) le 31 août 2004 Finalement, je n'ai pas eu le cougage de me coucher sans savoir s'il y avait des réponses. Super les réponses. J'aimerais bien savoir si on peut en faire le 1/10 sous l'OS du coté obscur (aucune chance ). Bon, j'aurais du dire qu'on a fait un cat /dev/null > /home/moi/nightswich, mais bon ça compte Ma solution, elle provenait de linuxfr. Il suffit de faire --- root@fermat# strings /proc/kcore | grep -10 nightswan --- A savoir : - kcore n'est pas un vrai fichier, c'est la RAM + le swap donc, c'est assez gros (chez moi 1,5Go), ce qui veut dire que le motif du grep a interet à être bien choisi. - Inconvénient : vu que c'est de la mémoire vive, il ne faut pas que la machine ralloue cette espace pour faire le grep (pas de bol quand même) ou pour un autre processus (sur une machine chargée). Il ne faut pas rebooter entre temps. - Avantage : Tant que tu n'as pas rebooté, tu as une chance de récupérer quelque chose. (genre chez moi avec un grep update-rc.d me donne un truc qui a plus de deux semaines ) Aller qui se lance ? (nan nan, je ne refais pas ma blague pourrie ) EDIT : Rha, Remy a trouvé pendant que je postais. Lien vers le commentaire Partager sur d’autres sites More sharing options...
lorinc Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 En fait, on peut lire la ram.... C'est un truc de sioux, mais c'est possible sous linux. Par contre, ce n'est pas facile a faire, et on a rarement le fichier complet mais plutot des bouts ou des parties. Ca m'est arrivé une fois pour récupérer un projet en C apres un rm *. ilsuffit de copier les peripherique de RAM avec un dd, puis de 'greper' l'info que tu veux dans ce nouveaux periph, non? Lien vers le commentaire Partager sur d’autres sites More sharing options...
-rem- Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 EDIT : Rha, Remy a trouvé pendant que je postais. Merci. En fait, experience inside, ca aide bcp. Et ce que j'adore sous linux, c'est qu'on peut lui dire en gros " tu fais ce que je dis et tu executes, tu discutes pas". Malheureusement, parfois, ca coute cher. Pour anedocte , quand j'etais encore a la fac, n bossait avec mon binome sur un preprocesseur en C. Lui en emacs, moi en vi. Et a la fin, en faisant les scripts d'install et le readme, juste avant le tarball, j'ai trouvé malin de faire un rm src/*.*~ pour virer les sauvegardes temporaires faites par emacs. Le pb, c'est que lorsqu'en local on appuyais sur '~' ca ne s'affichait pas, mais lorsque l'on pressait entrer ca l'affichait. Par Telnet ( et oui, la fac avait un acces telnet !! ) , et bien je me suis dit que ca ferait pareil, donc j'ai tapé rm src/*.*~, le ~ n'est pas apparu, j'ai pressé "Entrée".... préprocesseur C.... Lien vers le commentaire Partager sur d’autres sites More sharing options...
Minimalist Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 J'aimerais bien savoir si on peut en faire le 1/10 sous l'OS du coté obscur (aucune chance ). Quand j'utilisais encore cette chose étrangement programmée, j'ai niqué une partition de 15Go fraichement installée. Il y a un bon utilitaire (payant, inutile de le préciser) nommé R-NTFS Studio qui m'a sauvé la vie en rechopant toutes mes données Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 31 août 2004 Auteur Partager Posté(e) le 31 août 2004 lol. remy : Moi j'ai fais pareil, c'est comme ça que j'ai retenu. Un fichier vi qui était ouvert. Je ne sais plus pourquoi, j'ai perdu le fichier. Bref, ce n'est pas important. Comme un j'ai utilisé cette commande pour récupérer le .fichier.c.swp au lieu d'utiliser la commande de récup de vim. Mais à ma décharge, c'était à mes (tout) débuts, quand je ne savais pas trop ce que c'était vim (en gros un word sans fenètre ). Vive Vi et vive la ligne de commande Bon qui lance une question ? EDIT : Minimalist, c'est pas très sport d'enlever ta dernière remarque Lien vers le commentaire Partager sur d’autres sites More sharing options...
-rem- Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 en root : chmod -R 777 / Comment tu fais sans réinstaller ??? ps: je precise que les sUID ont sauté donc.... Lien vers le commentaire Partager sur d’autres sites More sharing options...
lorinc Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 tu veux nous faire un systeme de fichier windaube, là? (nan, parce que ma clef usb est à peu pres dans ce genre de permission...) Lien vers le commentaire Partager sur d’autres sites More sharing options...
-rem- Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 La honnetement, c'est pas une question a 2 balles lorinc.... Lien vers le commentaire Partager sur d’autres sites More sharing options...
lorinc Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 je vois bien, je seche, c'est tout. je serai tenté de faire des chmod sur un peu tous les dossier de maniere en redonner des droits a peu pres correct, mais ça en fait tellement que y aurait forcement des trous qq part. En tout cas, c'est déjà moins genant que chmod -R 0000 / Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 31 août 2004 Auteur Partager Posté(e) le 31 août 2004 C'est une commande simple ou un script ? Et le but c'est de remettre tout tes fichiers comme avant, ou minimiser les dégats (genre séparer root et les autres). En tout cas, c'est déjà moins genant que chmod -R 0000 / lol Lien vers le commentaire Partager sur d’autres sites More sharing options...
-rem- Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 non, tu tapes par megarde "chmod -R 777 / " Je vous deconseille de le tester, vous ne pourrez plus vous loggez sur votre os, et a mon avis, il est mort. Plus qu'a booter sur un autre media, et sauver les données, noyaux eventuellement etc... Autre truc amusant : while(1) fork(); /* dans un fichier temp.c */ gcc temp.c -o Tmort && chmod 700 Tmort... Ensuite, ./Tmort En general, c'est fatal a la plupart des unix ou linux surlequels c'est executé. A faire via ssh, telnet, etc...sur la machine distante d'un collegue pour s'amuser... Ce qui se passe , pour info, c'est qu'en gros le prgm avale chq commande lancée....donc toutes les commandes lancées sur ce systeme ne pourront pas etre executées. Lien vers le commentaire Partager sur d’autres sites More sharing options...
lorinc Posté(e) le 31 août 2004 Partager Posté(e) le 31 août 2004 Je vous deconseille de le tester, vous ne pourrez plus vous loggez sur votre os, et a mon avis, il est mort. Plus qu'a booter sur un autre media, et sauver les données, noyaux eventuellement etc... Autre truc amusant : while(1) fork(); /* dans un fichier temp.c */ gcc temp.c -o Tmort && chmod 700 Tmort... Ensuite, ./Tmort En general, c'est fatal a la plupart des unix ou linux surlequels c'est executé. A faire via ssh, telnet, etc...sur la machine distante d'un collegue pour s'amuser... Ce qui se passe , pour info, c'est qu'en gros le prgm avale chq commande lancée....donc toutes les commandes lancées sur ce systeme ne pourront pas etre executées. je comprends pas pourquoi on purrait plus se logger en root ??? que le suid soit mort, ça ne gene que les autre users, et vu que tu a a+rwx tu peux tout faire normalement (ou alors j'ai rien compris) pour l'autre programme, il me semble que le nombre de processus est limité et que tu peux faire en sorte qu'un programme s'arrete si fork() echoue (pour eviter ce genre de saloperie, justement), mais c clair que c'est la mort de beaucoup d'OS... EDIT : c idiot, ce que je dis. mais si la moitié recoit un signal de kill, les autres vont se dupliquer et on retombe au point de départ... Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.