rusty je napisao/la:Kad smo već kod opasnih naredbi... koliko se zečeva ovdje skriva?
- Kod:
zec(){ zec|zec& };zec
Ovo je modificirani
fork bomb!
Samo jedan zeko, al' se množi k'o zec.
Fork bomba ne mora biti zlonamjerna. Može se desiti kao bug u skripti ili programu, kad god neki proces upadne u petlju i forka sam sebe.
Kako se broj procesa eksponencijalno povećava, računalo u par sekundi jednostavno ostane bez memorije i procesorskog vremena i zablokira.
Problem je to što linux distre obično dolaze konfigurirane bez limita na broj pokrenutih procesa.
Taj limit može postaviti u
/etc/security/limits.confOtvori se kao administrator i dodaju se ovako dvije linije ispod onih zakomentiranih (i restarta komp):
- Kod:
#dududu nema nam pomoći
#dudududu dudududu
root hard nproc 600
jurastublic hard nproc 300
Meni se za desktop 600 i 300 pokazalo OK. Inače mi ukupni broj procesa praktički nikada ne pređe 200.
Onda, ako se desi kakva fork bomba, računalo postaje usporeno ali se može i dalje raditi, dovoljno da se provjeri koji proces šteka i isti ubije. Ili ako je pokrenut GUI program pa se ne može do terminala, moguće je i dalje ulogirati se u konzolu (sa CTRL-ALT F1 npr.) i iz nje srediti prijestupnika.
Ili restartati računalo i nadati se najboljemu.