naujienos trumpai

Fedora 12

2009-11-17, GODhack

Fedora 12; vienos iš populiariausių Linux distribucijų naujausia versija šiandien išleista.

Vakar, straipsnyje „Arūnas Žalnierius. Ar verta valstybės įstaigoms pereiti prie atviro kodo?“, perskaičiau „Blue Bridge“ nuomonę, reakciją į „Darbo partijos“ pareiškimą dėl atviro kodo naudojimo.

Keista jų pozicija. Jie užsiima verslu ir bet kokios paslaugos susijusios su IT yra potencialus pelno šaltinis. Ir štai, patys tvirtina, kad „…perėjimas prie kitos programinės įrangos reikalauja didelių pradinių investicijų…“, bet pasinaudoti nuskilusia proga neskuba. Mano supratimu jie turėtu būti patys pirmieji reikalaujantys priimti „Darbo partijos“ pasiūlymą. Juk jie pelno siekianti organizacija, ne altruistai. Verslininkai užuodę pinigus dažniausiai stengiasi prikąsti liežuvi, nesako tiesos, pasako tik tai kas jiems naudinga. Kartais net atvirai meluoja. Galimas didžiulis valdiškas užsakymas, ne pačiu geriausiu verslui metu, neabejotinai turėtu sužadinti grobuonišką instinktą…

O gal tiesa visai kitokia ─ atviras kodas realiai sumažina išlaidas ir tuo pačiu IT kompanijų pelną?

Manau jau visi girdėjot apie GPS navigacijos biznio „pabaigą“. Google, visų mylimas monstriukas, nemokamai pateikė savus žemėlapius, žinia apie tai akimirksniu apkarpė Garmin ir TomTom akcijas.

Nors Google ir stengiasi laikytis principo „nepakenkti“, bet kuo toliau, tuo sunkiau jiems tai sekasi. Žinau iš kur kojos dygsta ─ Google yra didelė atvira akcinė bendrovė ir ji yra priklausoma nuo akcininkų. Žaidimo taisykles nustato akcininkai, nepriklausomai nuo S. Brino ir L. Page norų. O taisyklės paprastos ─ privalai plėstis nepaisant nieko. Antraip akcijų kaina ims kristi, akcininkai bruzdėti.

Vėliau ar anksčiau Google taps tokiu pačiu monstru kaip M$. Bet ne viskas taip blogai, yra vilčių, kad kada nors augimas ir ambicijos apsiramins kaip nutiko su IBM. Pasakoja, kad ši kompanija taip pat buvo godus monstras, o dabar tėra tik dar viena didelė korporacija.

Kroitus uždavė vieną iš tų amžinųjų klausimų į kurį neįmanoma atsakyti teigiamai ─ ar tikrai linukse negali plisti virusai*? Kaip įtikinti Windows vartotojus, kad negali? Užduotis neįveikiama, nes tuojau būna pateiktas kontrargumentas, toks kaip „nėra virusų nes linuksas nepaplitęs“, kuriam paneigti reikia sulaukti visuotinio linukso paplitimo.
* „Virusais“ čia pravardžiuoju visokiausias nepageidaujamas programas, trojanus, kirminus ir kitą bjaurastį

Žiūrint principingai, nė vienas ekspertas netvirtins, kad linukse virusų plitimas neįmanomas. Bet jie pasakytu, kad linuksas iš esmės saugesnis. Tik neaišku kiek ir įdomu kas tą saugumą sukuria? Nesigilinant į architektūrą ir kitokius techninius dalykus, yra dar viena priežastis dėl kurios virusai windows-uos plisti gali o linukse ne. Tai ta pati priežastis, dėl kurios yra įmanomos ligų epidemijos ─ vientisa, palanki plitimui terpė.

Windows-e virusai plinta ne šiaip sau, dažnai problema pasiekia epidemijos mastus dėl jų identiškumo. Jie yra labai palanki terpė žalingų programų plitimui ─ jų operacinė sistema visur vienoda, su default-iniais nustatymais ir vienodomis populiariausiomis programomis. Ir tikros žalos virusai pridaro tik kada kyla epidemija. Tik dėl epidemijos mastų virusų kūrimas yra patrauklus užsiėmimas visokiems nusikaltėliams. Jei epidemijos nėra, virusai nunyksta „savaime“, nespėję pasižymėti. Kad išplatinti virusus nenorinčius plisti tarp daugiau-mažiau skirtingų sistemų, jų kūrėjams tektų labai pasistengti. Ar kas nors norėtu dėl to daug vargti? Nemanau, yra lengvesnių plėšikavimo būdų.

Epidemija tarp linuksinių kompiuterių neįmanoma iš principo, dėl didžiulės jų įvairovės. Būtent skirtingų distributyvų kiekis garantuoja didesnį saugumą nuo virusų, ne vien tik techninės priemonės. Kad ir kokią rinkos dalį užimtu linuksai, vienos rūšies distributyvų vis vien bus per mažai, kad sukelti rimtesnių problemų.

Įdomu, kiek rinkos turėtu užimti Windows, kad jie taptų nebepatrauklūs virusų platinimui? Kaip ten bebūtu, mažėjant Windows paplitimui, virusų problema taip pat turės mažėti. Greičiausiai jie visiškai neišnyks ir gal būt atsiras vienas kitas linuksinis, bet tokio masto problemų kokias turim dabar nebeliks.

Zombių būna ne vien Holivude, linukse jie taip pat kartais apsigyvena. Juos aptikti nėra sunku, bet nužudyti problematiška, mirti jie nesiteikia. Juk jie zombiai! Skirtingai nuo Holivudiškų, linuksiniai zombiai nekenksmingi ir neužkrečiami.

Zombiais linukse vadinami procesai, kurie jau nustojo veikti, bet įrašas iš procesų sąrašo dar nepašalintas. Tą įrašą pašalinti turėtu „motininis“ (parent) procesas, kuris sukūrė „dukterinį“ (child) procesą, bet pastarasis nusibaigė anksčiau nei buvo tikimąsi. Jei viskas tvarkoje, zombis po kurio laiko bus pašalintas. Bet kartais, dėl programinių klaidų, zombis lieka kabėti.

Kaip zombius aptikti? Tikriausiai žinot komandą top. Pasileiskit, ir Tasks eilutės gale bus įrašas „kažkiek zombie“. Štai, pas mane yra net vienas toks:

zombie

Tikriausiai apie jį norėsite sužinoti daugiau informacijos, koks procesas nenori mirti ir iš kur jis atsirado? Informaciją apie zombį parodys ši komanda:

$ ps -el | grep Z

F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
4 Z 0 17607 1671 0 80 0 - 0 ? ? 00:00:00 dhcpcd <l;defunct<

Pas mane niekaip nemiršta dhcpcd procesas, kurio ID 17607. Kad išsiaiškinti zombio gimdytoją, pirmiausia žiūriu į PPID (Parent Process ID) ir tada ieškau procesu su šiuo ID:

$ ps -el | grep 1671

1 S 0 1671 1 0 80 0 - 42278 ? ? 00:08:44 wicd
0 S 0 1675 1671 0 80 0 - 20296 ? ? 00:02:44 wicd-monitor
4 Z 0 17607 1671 0 80 0 - 0 ? ? 00:00:00 dhcpcd

Štai kas pagimdė mano zombį, wicd ─ WiFi demonas! Pabandykim zombį nužudyti:

$ sudo kill -9 17607

Deja, zombiai taip lengvai nemiršta. Šis negyvėlis vis dar gyvas :( Kad nužudyti zombį linukse, žudyti reikia ne patį zombį bet jo gimdytoją! Bet ne viskas taip paprasta, jei zombio gimdytojas yra init procesas (PID numeris 1), tai nužudę jį užmušim visą linuksą. Bus tas pats kaip nuspausti reset mygtuką. Mano atveju, nužudžius wicd nieko baisaus nenutiks, tik neturėsiu interneto. Ir kai paleisiu wicd vėl, jis sukurs tą patį dhcpcd procesą, kuris dėl kažkokios smulkios klaidelės vėl taps zombiu.

Tai ką daryti? Ogi nieko. Linuksiniai zombiai smegenų nevalgo ─ nenaudoja atminties ir nerija procesoriaus resursų. Viskas ką jie daro, tai užima papildomą eilutę procesų sąraše, nieko daugiau.

Truputį daugiau apie zombius skaitykit čia [EN]. Ir dar čia, bendrai apie procesus [RU].