czwartek, 25 lutego 2010

Co roku to samo

Wczoraj chciałem dodać nowy wpis, ale iceweasel (debianowy firefox) nie mógł załadować okna bloggera. Wiedziałem, że dłużej już nie mogę odwlekać upgrade'u systemu.

Na Linuksie to dość stresująca czynność, gdyż całkowita podmiana oprogramowania prawie nigdy nie udaje się bez bólu. Szczególnie, jeśli od czasu poprzedniego upgrade'u dystrybucji minęło półtora roku.

W teorii jest to cudowne rozwiązanie: wpisujesz 'aptitude update; aptitude dist-upgrade' i system w tle ściąga nowe wersje pakietów aby zastąpić stare. Jeśli robisz to w miarę regularnie, to podmiana jest bezbolesna. Gorzej, jeśli w międzyczasie wchodzi nowa wersja menadżera okien, niektóre pakiety są wycofane lub rozbite na inne. Wówczas pojawiają się tzw. konflikty.

To co odrzuca większość ludzi od Linuksa to konfiguracja. Na Windowsie wszystko jest proste: ściągasz sterowniki, odpalasz instalkę, restartujesz i używasz. Uruchomienie tych samych narzędzi na Linuksie to często mordęga, gdyż producenci nie dostarczają do nich sterowników i jesteśmy zdani na pasjonatów, którzy poświęcają własny czas, by uruchomić np. tablet na swoim systemie.

Dawniej zainstalowanie takich sterowników wymagało kompilowania kodu sterownika lub jądra Linuksa, co sprawiało trudności nawet informatykom. Należało się przekopać przez setki plików dokumentacji, manuali itp. Jeśli ktoś w tym siedział na bieżąco, to czuł bluesa, ale jeśli chciał tylko postawić system i go używać a nie konfigurować, to zawsze tracił dużo czasu i nerwów, gdyż takie konfiguracyjne 'triki' szybko się zapomina.

Obecnie życie linuksiarza jest dużo prostsze, bo większość sterowników jest w pakietach i instaluje się automatycznie. Tylko czasem wyskakują takie kwiatki, jak miałem wczoraj, że z powodu konfliktu zależności menadżer pakietów wywalił mi sterowniki do karty graficznej. Tyłek uratował mi Windows, na którym przeklejałem do googla komunikaty z konsoli.

I tak to niestety wygląda - postawienie debiana przez zwykłego informatyka wymaga Windowsa albo drugiego kompa podłączonego do sieci. Dziś od rana walczyłem z javą i rozwiązanie problemu rozłożyło mnie na łopatki. Żeby odpalić aplikacje sieciowe javy trzeba zrobić coś takiego:

If your Java networking is broken and any traffic always
results in a "java.net.SocketException: Network is unreachable" error, then here comes a quick fix:

   1. edit /etc/sysctl.d/bindv6only.conf
   2. change value net.ipv6.bindv6only=1 into 0
   3. invoke-rc.d procps restart

Niezłe co? Wyobrażacie sobie dojście do tego rozwiązania bez dostępu do sieci? I jak tu się dziwić, że jak już uda się człowiekowi wszystko poustawiać i skonfigurować, nie tyka przez rok update'ów :) Tymczasem software się rozwija, potrzebujesz nowego programu, a ten potrzebuje nowych pakietów zależnych, których uaktualnienie wymaga nowszych wersji innych pakietów i za jakiś czas historia z użeraniem się z systemem zatacza koło.

Mimo tych niedogodności podzielenie wielkiego systemu na tysiące pakietów, programików, skryptów i dużych aplikacji jest bardzo dobrym rozwiązaniem. Linuksa instaluje się raz na początku a potem tylko upgrade'uje do końca żywota komputera. Nawet przeboje z próbą uruchomienia systemu mają zaletę: uświadamiają nam jak krucha jest wirtualna rzeczywistość i jak wielkie uzależnienie wielu z nas od niej :)

14 komentarzy:

  1. Eee, nie jest tak zle z Debianem, choc IceWeasel moglby nei co szybciej dzialac. Choc w sumie pytanie na jakiej wersji debiana siedzisz, jak na niestabilnej to faktycznie sie moga ciekawostki dziac. Choc do Ubuntu i tak daleko (zrezygnowalem z niego jak po updacie nie moglem w zaden sposob regulowac glosnosci, wiec ani gitary podlaczyc, ani nic nagrac, no tragedia) Plus jest taki ze jak cos poleci to jestes w stanie to jakos naprawic, znalezc co sie wywala. Na windwosie masz blu screena.

    OdpowiedzUsuń
  2. Sądząc po obecności pliku /etc/sysctl.d/bindv6only.conf zaktualizowałeś stable do unstable, albo stable do testing. Tego się tak nie robi. Chyba, że chce się mieć problemy. ;-)

    Jeśli chcesz mieć stabilny system z poprawkami bezpieczeństwa użyj stable i security-updates.

    Jeśli chcesz testować Debiana, użyj testinga.

    Jeśli chcesz budować pakiety w chroocie, zainstaluj w nim unstable.

    Jeśli chcesz mieć stabilny system i kilka nowych wersji (prawdopodobnie Twój przypadek) zainteresuje się backportami.

    Wersja rozwojowa na produkcyjnym systemie (czyt. na laptopie, na którym pracuję) może wystąpić w chroocie albo na maszynie wirtualnej. Inaczej produkcyjny system przypominać będzie samolot kamikadze.

    OdpowiedzUsuń
  3. @WhiteLightning:
    Za to lubie debka - jakiekolwiek nie wystapia w nim problemy, zawsze sprowadzaja sie do wpisania paru linijek do plikow konfiguracyjnych albo zainstalowania sila potrzebnego pakietu (wget na konsoli ;).

    @Anonimowy:
    Nigdy nie uzywalem innego debiana niz Sid ;) Ogolnie prawie zawsze jest stabilny, czasami trzeba poczekac na jakis pakiet, bo aktualny nie dziala (albo jak sie da, to zainstalowac starszy). W sumie ponarzekalem, a cala konfiguracja zajela wczorajszy wieczor i dziesiejszy poranek. Jak na przewidywany czas pracy systemu przed kolejnym upgradem to pozytywnie.

    Pozdr

    OdpowiedzUsuń
  4. Po kilku próbach z linuksem wróciłem windowsa.
    Niestety jest tak jak opisał autor.

    Widzę świetlaną przyszłość dla systemów, które rozdzielają base system od dodatków. Tutaj można się kłócić co mam na myśli, ale zacząć należałoby od wyrzucenia jakichkolwiek zależności między pakietami. Patrz MacOSX, czy np. PCBSD.

    Miejsce na dysku dzisiaj nie jest problemem ...

    Pozdrawiam,
    Robert

    OdpowiedzUsuń
  5. Jako tworca gier przychylam sie do tego wniosku (o kompletnosci pakietow). Nie chcialbym, zeby np. moja gra przestala dzialac dlatego, ze jakas wspoldzielona biblioteka ulegla zmianie.

    Z drugiej strony jesli chodzi o aplikacje uzytkowe, ktore podlegaja ciaglemu rozwojowi, nie da sie chyba wykluczyc wspoldzielenia. Moze moc komputerow i nowe alogrytmy pomoga rozwiazywac konflikty.

    OdpowiedzUsuń
  6. Przyznam ze podoba mi sie Twoje zdrowo rozsadkowe podejscie. Ze widzisz ze system ma zarowno swoje wady jak i zalety, jak i to ze niektore rzeczy (jak wlasnie chocby gry) latwiej robic pod innym systemem. A nie takie typowo geekowe ze wszystko czego nei uzywam SUXXX :)
    Swoja droga chcialem popatrzec co to za gierki robisz i widze ze link ktory masz w "O mnie" nie dziala.

    OdpowiedzUsuń
  7. @WhiteLightning
    Nie podawalem strony do mojego (a raczej naszego, bo wspolpracuje z bardzo fajnym grafikiem) byznesu, zeby pozostac anonimowym. Ale w sumie co za roznica - tu sa nasze produkcje:

    http://dagiel.pl

    Jak podpiszemy umowe na projekt, ktory teraz negocjujemy, zrobie kilka wpisow o nich, bo tworzenie wlasnych "dziel" to prawdziwa frajda.

    OdpowiedzUsuń
  8. czesc dedek!
    w koncu uchyliles rabka tajemnicy!
    niezla sprawa z tą waszą dzialalnością!

    OdpowiedzUsuń
  9. Czesc herodot.
    Kiedys moment musial nadejsc, ale zmienilem sie przez ostatni rok na tyle, ze nie ma dla mnie znaczenia czy pisze anonimowo czy pod nazwiskiem - lansowac sie nie zamierzam, bede dalej pisal co mysle. Przy okazji znalazlem wpis, pod ktorym pytales co robie. Teraz kolej na ciebie, bo tez jestes tajemniczy ze swoim biznesem ;)

    pozdr

    OdpowiedzUsuń
  10. heh dedek juz dawno sie zdradzil u APP ;)
    szkoda tylko ze nie rozwija sklepu :>

    OdpowiedzUsuń
  11. No faktycznie :) myslalem, ze wszyscy juz zapomnieli. A sklep lezy, bo znowu sprzedalismy prawa do tytulow, wiec 'na polce' lezalyby tylko 2 programy.

    OdpowiedzUsuń
  12. :) dedek - biznesem to tego co robie bym nie nazwal.. ;) - ale mozesz rzucic okiem na trzask.pl
    pozdrawiam!

    OdpowiedzUsuń
  13. robicie to o czym marzy wiekszosc biznesmenow - "jak sie dorobie i zwolnie, to bede podrozowal po swiecie" :D Zwiedzic kawal swiata, to musi byc cholernie inspirujace.

    pozdro

    OdpowiedzUsuń
  14. a ja jak przestane jezdzic po swiecie to zajme sie biznesem ;) :P

    pozdr.

    OdpowiedzUsuń

W ramach eksperymentu wyłączam moderację komentarzy.

Zasady komentowania:
- żadnego spamu i reklam (także linków do serwisów w nazwie użytkownika),
- komentarze obraźliwe będą usuwane,
- proszę o zachowanie kultury i brak kłótni; różnice zdań należy wyrażać poprzez dyskusję wspartą argumentami.

Podtwórca