Portál AbcLinuxu, 12. května 2025 10:49

Dotaz: rm -rf / - jak zjistit, co se smazalo

21.1.2007 18:35 Martinus | skóre: 21 | blog: martinus
rm -rf / - jak zjistit, co se smazalo
Přečteno: 234×
Odpovědět | Admin
Ahoj, na základě svojí debility se mi podařilo smazat pomocí rm -rf / nějaká data. Podařilo se mi to zarazit relativně včas. Navíc samozřejmě spuštěno pod uživatelem, ne rootem. Copak o to, se ztrátou se smířím, i když je mi eště pořád špatně od žaludku. Ale zajímalo by mě, jestli je někde nebo nějak možný zjistit, co všechno se smazalo nebo jakým systémem ten příkaz postupuje... protože mi připadá, že mi zmizely různé části mého home adresáře, ale nenacházím v tom žádný systém...

A prosím jen příspěvky k věci. že jsem idiot vím sám.

Díky :-) nebo spíš :-(
Free your mind and the ass will follow...
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

David Watzke avatar 21.1.2007 18:46 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
Odpovědět | | Sbalit | Link | Blokovat | Admin
Podle mě v tom není systém. Zkus si tohle uložit jako lsdir.c:
#include <dirent.h>
#include <stdio.h>

int main (int argc, char **argv) {
        if (argc != 2) return 1;

        DIR *dir = opendir(argv[1]);
        struct dirent *entry;

        while ((entry = readdir(dir)) != NULL)
                puts(entry->d_name);
}
... zkompilovat ...
gcc lsdir.c -o lsdir
... a spustit (neboj) ...
./lsdir /
:-)
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
21.1.2007 19:13 Martinus | skóre: 21 | blog: martinus
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
Díky :-)

myslim, že to postupovalo tim způsobem co vypíše ten lsdir od tebe. Achjo. Vypadá to, že sem to zarazil včas a nepřišel sem o nic kriticky důležitýho. Snad jen semestrálku, která mě stála deset hodin práce a o komplet instalaci windows ve vmplayeru :-) . Ale na to se neumírá, mohlo to bejt horší. Aspoň mám na disku najednou 10G volnýho místa navíc :-)
Free your mind and the ass will follow...
21.1.2007 19:29 diverman | skóre: 32 | blog: život s tučňáčkem
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
No vidíš, ještě vyděláš :-D Dej si to do cronu, aby se to spouštělo pod náhodným uživatelem a v náhodném adresáři. Pak budeš mít pořát dostatek místa ;-)
deb http://ftp.cz.debian.org/debian jessie main contrib non-free
21.1.2007 23:13 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
To už se dneska normálně honí C99 nebo to jen z lenosti kompiluješ kompilátorem C++? :-)
David Watzke avatar 22.1.2007 06:05 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
nebo to jen z lenosti kompiluješ kompilátorem C++? :-)
Nevšiml jsem si, že bych to kompiloval C++ kompilátorem...
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
22.1.2007 13:56 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
Jen mě zarazila to DIR *dir, toť vše. :-)
David Watzke avatar 22.1.2007 14:45 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
Nechápu. Asi to bude tím, že se v tom ještě moc neorientuju (nebo lépe, skoro vůbec :-D).
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
Luboš Doležel (Doli) avatar 22.1.2007 14:49 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
V C (alespoň v tom, které znám) se asi používá struct DIR*.
22.1.2007 14:53 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
To určitě ne, aspoň manuálová stránka žádné struct nepožaduje (stejně jako u FILE*), takže to asi není tag ale typedefovaná struktura.
22.1.2007 14:54 podlesh | skóre: 38 | Freiburg im Breisgau
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
Pokud si dobře pamatuji, tak gcc toto toleroval odjakživa.
22.1.2007 14:51 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
V tradičním C musejí být deklarace proměnných na začátku funkce, takhle uprostřed to jde buď v C++ (odjakživa) nebo až C99. Já ovšem na tradice nedám a zásadně píšu 'DIR* dir', protože je to IMHO logičtější.
22.1.2007 15:21 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
Tak tak, já si to zapamatoval, když mě s tím Tornado II několikrát poslalo někam. :-D
22.1.2007 16:55 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
A ještě si to dovolím upřesnit: Ne na začátku funkce, ale na začátku složeného příkazu. :-) Tedy každá ta věc se složenými závorkami si může deklarovat vlastní proměnné.
22.1.2007 05:18 *
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
libc ma v sobe jeste nejakou samorekurzivni atomickou funkci, ktera se postara o to, ze kdyz nekdo vymaze cely adresar nad tim aktualnim, ze se prestane zajimat o aktualni a jeho vnorene a vyskoci zpet na dalsi existujici polozku... jako argument to bere tusim funkci a ne a ne si vzpomenout jak se to jmenuje.
22.1.2007 13:22 Ales Hakl
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
Az na to mazani by to odpovidalo na ftw(3).
21.1.2007 22:22 Jooky (inactive) | skóre: 39 | blog: Jooky | Bratislava
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
Odpovědět | | Sbalit | Link | Blokovat | Admin
-Ked si to pustil pod userom a mas na systemu dobre nastavene prava (default si nemenil), tak ten prikaz mohol pomazat len /home/"user", v /tmp tebou vlastenene data a v /mnt nieco co je pripojene pre userov ako rw. Na ostatne len zahlasi rm: cannot remove `xyz': Permission denied

- pokial ti tam nebezi nejaky audit tak uz asi tasko zistis co to pomazalo

- bdw. keby to dobehlo tak mas velmy pekne vycisteny svoj home adresar :o)
22.1.2007 13:39 Vinicius
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
Odpovědět | | Sbalit | Link | Blokovat | Admin
Jeste to dobre dopadlo. Tady je aspon videt, ze je dobre co nejmene veci na pocitaci pachat jako superuzivatel.
Zkusil nekdo
deltree c:\ na Microsoft Windows ?
22.1.2007 13:52 R
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
deltree /y \
22.1.2007 19:30 Martinus | skóre: 21 | blog: martinus
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
jojo, nikdy by mě nenapadlo spustit něco co nevim pořádně co dělá jako superuživatel... zas úplnej sebevrah nejsem :-) ono ostatně můj problém vzniknul na základě pouhé nepozornosti, protože to echo na začátku mě zlákalo k tomu zjistit co se vlastně vypíše a v tý změti znaků se to |sh na konci úplně ztratilo :-) kdo neví o čem mluvim, tak je to tady.
Free your mind and the ass will follow...
Honza Balák avatar 22.1.2007 19:59 Honza Balák | skóre: 23 | blog: Jaxův linuxový zápisník | Předklášteří
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
Heh, to ja jsem zase ze zvedavosti spustit prikaz z diskuze nekde tady na Abicku. Byl to nejaky hexadecimalni zapis rm -rf /. Jenza ja vul jsem si prilis pozde vsiml, ze jsem pod rootem. Sice jsem to stopnul, ale pul systemu byla fuc. Tak me to aspon primnelo prejit ze Suse 10 na Dappera :-D. Od ty doby pouzivam sudo a davam si pozor :-).
<null>
22.1.2007 20:31 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
Zajímavé, že to všechny vždycky přimělo změnit distro, ale snad ještě nikdy to nikoho nepřimělo nebýt zvědavý. :-D
Honza Balák avatar 22.1.2007 20:35 Honza Balák | skóre: 23 | blog: Jaxův linuxový zápisník | Předklášteří
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
Ja uz se dlouho predtim poohlizel po Ubuntu, ale nechtelo se mi opustit docela funkci system. Takhle jsem opustil ten nefunkcni a bylo to :-D
<null>
David Heidelberg avatar 24.5.2007 02:29 David Heidelberg | skóre: 46 | blog: blog_
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
zlaty sudo, prijde me, ze je mensi riziko omylu nez se su :-D

0K!AS
24.5.2007 08:28 happy barney | skóre: 34 | blog: dont_worry_be_happy
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
sudo bash, nedajbože bez zadania hesla? :-D
riziko omylu znížiš napr takto:
alias rm='echo "Skutocne chces mazat? [y/n]"; read line; [ "$line" = "y" ] && rm'
22.1.2007 13:59 Václav Kramář | skóre: 31 | Nechanice
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
Odpovědět | | Sbalit | Link | Blokovat | Admin

He he. Mě se v sobotu podařilo <Shift>+<Del> a automaticky <Enter> nad všemi dokumetny... Škoda sice o poznání menší, ale taky "potěší"... :-(

22.1.2007 21:15 Boris Dušek | skóre: 22 | blog: everything
Rozbalit Rozbalit vše Re: rm -rf / + Debil = jasna smrt
Mno tak pokud ti o ty dokumenty jde, tak pro řadu filesystémů je něco jako undelete. Aby ses nemusel bát, že ti undelete udělá nějakou paseku (na reiseru to paseku dělá), tak si můžeš udělat image toho filesystému pomocí dd, asi ho hodit na hodně velký disk, kam se vejde, a pak přes losetup si ho namapovat na device, na ten device spustit ten (v případě ReiserFS) reiserfsck --rebuild-tree (nějak tak) a zkouknout výsledek v lost+found, kde to ale bude pojmenovaný pouze číselně, takže se hodí pro identifikaci správného souboru k obnově grep a pod. Už jsem tak jednou zachránil cennou věc. A taky si rozneřádil filesystém tak, že jsem musel obnovit ze zálohy - protože jsem to dělal na ostré verzi filesystému :-)
vim ~/.emacs
24.5.2007 08:25 happy barney | skóre: 34 | blog: dont_worry_be_happy
Rozbalit Rozbalit vše Re: rm -rf / - jak zjistit, co se smazalo
Odpovědět | | Sbalit | Link | Blokovat | Admin
ak máš nainštalovaný locate a ešte sa neaktualizoval (nezbehol update, viď anketa :-) ), tak je to jednoduché ...

imho rm maže podľa poradia v direntry (ls --sort=none -1)

Josef Kufner avatar 24.5.2007 10:51 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: rm -rf / - jak zjistit, co se smazalo
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zjistis to uplne jednoduse -- podivas se do zalozni kopie ;-)
Hello world ! Segmentation fault (core dumped)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.