Upgrade Lenny do Squeeze – co poszło źle.

Ponieważ system po nieudanej aktualizacji już działa (w ogóle okazało się, że przyczyną „problemów z grubem” była w rzeczywistości najprawdopodobniej niedociśnięta taśma od stacji dysków) i mogę dostać się do swoich danych, to pora na konkrety i przestrogę.

Komunikat, który mówił o problemach z przejściem na dependency based boot przy upgrade z Lenny’ego do Sarge Squeeze i który może nie tyle zignorowałem, co chciałem zająć się nim po reboocie (bo zapisałem) wyglądał dokładnie tak:

Unable to migrate to dependency-based boot system

Tests have determined that problems in the boot system exist which prevent migration to
dependency-based boot sequencing:

insserv: warning: script 'K20atieventsd' missing LSB tags and overrides, insserv: warning: script
'atieventsd' missing LSB tags and overrides,

If the reported problem is a local modification, it needs to be fixed manually. If it's a bug in the
package, it should be reported to the BTS and fixed in the package. See
http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot for more information about how to fix the
problems preventing migration.

To reattempt the migration process after the problems have been fixed, run "dpkg-reconfigure sysv-rc".

Skrypt atieventsd pochodzi z flgrx, z którego nie korzystałem od migracji na Lenny’ego. Taka zemsta ATI/AMD zza grobu.

Ale co sobie powalczyłem, to powalczyłem (kolejne sprawności zdobyte: instalator nie jest taki świetny i ma głupie defaulty dla instalacji gruba – kto to widział, że przy instalacji wszystkiego na sdb i niczego na sda chce umieścić gruba na sda?; rescue mode daje radę). Okazało się, że CD-ROM też już nie działa – zasilacz od dawna był słaby i miał problemy z kręceniem dwoma dyskami, ale teraz doszło do tego, że i jednym nie kręci, jeśli CD-ROM jest podpięty. No chyba, że stacja dyskietek tak bruździła. Nie wiem, nie wnikam, działa – nie dotykam (ładne rymowane motto, swoją drogą).

UPDATE: Inna możliwa przyczyna, to własny – a nie dystrybucyjny – kernel. Dziś kolejna osoba miała problem ze swoim kernelem na Squeeze, identyczne objawy (pusty /dev), a na dystrybucyjnym działało OK. Instalacja linux-image-2.6-amd64 (lub linux-image-2.6-486 dla systemów 32-bitowych) przed rozpoczęciem upgrade’u do Squeeze wydaje się dobrym pomysłem. 😉 Zresztą jest to opisane w release notes procesu aktualizacji Lenny do Squeeze (wersja robocza; TBH nie czytałem przed aktualizacją – nie wiem czy był już dostępny – mea culpa).

Historia pewnego upgrade

Minęły prawie 2 lata odkąd zrobiłem upgrade tej maszynki do Lenny’ego. Stwierdziłem, że Squeeze, którego używam od dłuższego czasu jest dobry, przydałoby się parę nowych pakietów no i można przetestować jak ten upgrade wychodzi. KDE 3.5 też jakoś nie jest tym, co mi ostatnio pasuje (a pasuje mi LXDE), więc stwierdziłem, że parę dni wolnego to dobry moment, żeby zrobić upgrade.

Problem numer jeden, który uniemożliwił mi zalecaną wersję upgrade’u, to za mała ilość wolnego miejsca. 1 GB wolnego na /, po porządkach 1,3 GB. Zdecydowanie nie to, co tygrysy lubią najbardziej. Postanowiłem, że po prostu podmienię wpisy w sources.list z lenny na squeeze, zrobię wajig update; wajig upgrade a następnie wajig dist-upgrade. Wcześniej wywaliłem jeszcze javę i OpenOffice. Gołe dist-upgrade niestety nie mieściło się.

Update poszedł bez problemu, po nim kontrolny reboot. Wszystko ładnie działa. Pora zatem na dist-upgrade. Ten też w zasadzie przebiegł bezproblemowo. Jedyne co pojawiło się z dziwnych rzeczy, to ostrzeżenie, że nie może korzystać z dependency based boot, które skrypty przeszkadzają i gdzie szukać pomocy. Oczywiście zapisałem sobie te komunikaty, dałem OK. Update się zakończył, pora na reboot.

I tu zaczęły się schody. Przy próbie montowania /home z osobnej partycji, stwierdził, że /dev/hda3 nie istnieje i zaproponował uruchamianie w maintaince mode. Hm! Stwierdziłem, że pewnie kwestia kernela (mam własny), więc doinstaluję dystrybucyjny. Prawie się udało, niestety grub nie chciał się zaktualizować – brak dysków w /dev. Faktycznie ich nie było. Trochę powalczyłem ze skryptami startowymi, które były prawdziwą przyczyną zamieszania (bez większych sukcesów, namierzyłem jedynie nieuruchomiony hald) i stwierdziłem, że skoro / jest na osobnej partycji, to najszybciej będzie zainstalować system debootstrapem. Przy okazji zmigruję z ext3 na ext4.

Tylko jak uruchomić debootstrap, jeśli USB jest nieczynne (dziękujemy padniętym kondensatorom na płycie), a live nie ma? Przełożę dysk! Tak też zrobiłem. Niedługo później system był zainstalowany. Teoretycznie, bo aktualnie przy wejściu do gruba wykonuje malowniczy reboot.

Właśnie ściągam płytę instalacyjną. Mam nadzieję, że nagrywarka i czytnik są sprawne i że po zainstalowaniu instalatorem będzie się bootował.

Podsumowując: mam dość upgrade’ów, a konkretnie żonglowania sprzętem, na dłuższy czas, a już na pewno nie na sprzęcie, gdzie w prosty sposób nie można odpalić live. Najlepiej z USB.

Akcja rewitalizacja, ale gdzie organizacja?

Jeden z wortali tematycznych przechodzi rewitalizację. Jako rzecze wikipedia jest to termin obecnie nadużywany i nazywa sie tak każdą większą modernizację. Prawda.

Jako medium spotkania wybrano IRC. Nie wiem co było motywacją tego wyboru, ale wiem, że ciężko jest prowadzić w ten sposób sensowną dyskusję w więcej niż kilka osób. Cóż, próbować można…

Tradycyjnie ludziom ciężko było się zgrać czasowo – IRC ma to do siebie, że zwykle ktoś przychodzi chwilę wcześniej, na kogoś się czeka, w tym czasie towarzystwo się rozkręca i zaczynają się offtopici. Miało się zacząć o 21:00, w praktyce coś zaczęło się dziać dopiero 30 minut później (TBH, widząc tempo poszedłem spać – nic nie zapowiadało, że coś się jeszcze wydarzy). Rozkręciło się po 22:00… Nigdzie wcześniej nie była podana orientacyjna długość spotkania. Ja rozumiem, że „zaczynamy o X i siedzimy aż nam się znudzi” to jest jakaś metoda, ale jest to metoda fatalna.

Kolejny „miły” akcent to defaultowe odebranie prawa głosu przybyłym. Nie bardzo rozumiem, po co ściągać ludzi na określoną godzinę, na żywo, jeśli zabiera się im możliwość wypowiedzi? Niby można było poprosić o voica (na kanale obok, niech żyje prostota), ale IMO nieładnie jest kogoś zapraszać do dyskusji bez możliwości wypowiedzi. Rozumiem odebranie głosu, jeśli ktoś ewidentnie przeszkadza, ale z defaulta? Śmierdzi TWA. Prościej wrzucić log z kanału do przeczytania dla zainteresowanych (tak zrobili ci z większym doświadczeniem(?) – poprosili o logi).

Spotkanie zakończyło się o 23:00. Zasadniczym ustaleniem – z mojego punktu widzenia – było to, że był chaos i że trzeba zrobić kolejne spotkanie, poświęcone mniejszej ilości tematów. Szybkie ustalenia widać tu – trochę lipa jak na potencjał kilkunastu/kilkudziesięciu osób i 2h…

Inne wrażenie: nie wiadomo, dokąd tak naprawdę chcemy iść (nie ma wybranej wizji/polityki, zwał jak zwał), ale ustalamy jak idziemy i wybieramy narzędzia.

Czemu ten wpis? Bo jako żywo przypomina mi to, co działo się w SzLUUG. A koniec końców i tak ważne rzeczy załatwiało kilka osób, na telefon itp. Po prostu, prościej mieć spójną wizję i szukać ludzi, którzy ją poprą, niż zebrać ludzi i starać się wymyślić coś, co można robić wspólnie.

Na koniec parę rzeczy, o które chciałem zapytać/powiedzieć na spotkaniu:

  • Jakie są kryteria dodawania kanałów RSS do planety?
  • Czemu ktoś miałby pisać dla wortalu, skoro może u siebie? Można to podlinkować, ew. poprosić o zgodę na wykorzystanie tekstu.
  • Czemu wortal dla początkujących z Linux w nazwie zajmuje się *BSD? To zwyczajnie myli. Wortal z definicji powinien zajmować się węższą tematyką.
  • Skoro większość rzeczy jest wzorowanych na innych portalach, czy nie prościej wspomóc je merytorycznie, tym bardziej, że wortal jest pod kreską?
  • Mniej czasu na spotkania i dyskusje o pracy, więcej pracy.
  • Mam nadzieję, że nie będzie nikomu przeszkadzało, jeśli będę robił wpisy na wiki. Jakby przeszkadzało, to sobie usunie ew. poprosi, żebym tego nie robił.

Intencją wpisu jest, by był odebrany jako konstruktywna krytyka.

UPDATE: Pojawiło się pełne podsumowanie spotkania. Lepiej rozwiązane – formularzem – jest zadawanie pytań (także tych trudniejszych, na które odpowiedź potrwa dłużej lub wymaga dyskusji) oraz wyjaśnione wątpliwości dot. uzupełniania wiki.