Przygoda z lapkiem – naprawianie filesystemu ReiserFS.

Sytuacja z życia wzięta: jest sobie laptop, który nie bootuje się z USB, ma dysk IDE podzielony na partycje. Po brutalnym wyłączeniu prądu (edukacja techniczna współdomowników poszła w las, niestety – wykazali się nadgorliwością przy wyłączaniu) okazuje się, że / z ReiserFS montuje się w trybie read only. Druga partycja z ext4 jest zdrowa, ale jest czymś w stylu /opt. Skoro nie można uruchomić żadnego systemu live (tzn. z USB, płyty CD nie mam pod ręką), to pozostaje maintaince mode.

Niby żaden problem – istnieją narzędzia do naprawy filesystemów, ale fsck.reiserfs nie należy do najbezpieczniejszych narzędzi, o czym zresztą sam ostrzega (i nie jest to ostrzeżenie nieuzasadnione, kiedyś nadgodziny przez to zaliczałem…). Uruchomienie z opcją –fix-fixable (co za nazwa), pomogło, ale nie do końca – dalej jest read only, a program sugeruje uruchomienie z opcją przebudowania drzewa. Tym razem ostrzeżenie zajmuje cały ekran i wprost sugeruje zrobienie backupu, najlepiej przerzucenie obrazu w bezpieczne miejsce przy pomocy ddrescue. I podają nawet adres, gdzie można uzyskać support, za jedyne 25 dolarów. Cóż, skoro tak, to jednak postaram się uruchomić jakieś liveCD, żeby zrobić porządek (cóż, wypalona płyta może się przydać kiedyś, więc bez dramatu, bo chociaż do niedawna sądziłem, że wszystko już potrafi uruchomić się z USB, to nie do końca tak jest)…

Niestety, okazuje się, że CD-ROM nie jest w pełni sprawny. Albo, że liveCD Squeeze’ego nie działa (bo płytę widzi, początek bootowania zachodzi). Na dodatek na zdrowej partycji jest ok. 7 GB miejsca, a na zepsutej zajęte ponad 8 GB, a sama ma rozmiar kilkudziesięciu GB, więc skopiowanie tam obrazu średnio wchodzi w grę, nawet z kompresją. Na inny system obrazu nie przerzucę, bo jak / jest w read only, to wifi nie działa (kabla nie sprawdzałem, nie chciało mi się podłączać). Może by działało, jakby było wicd-curses zainstalowane, ale nie było, a Xy oczywiście nie wstawały.

Ostatecznie postanawiam podmontować zdrowy filesystem, skopiować na niego tylko najpotrzebniejsze dane (czytaj: katalog domowy) i w najgorszym wypadku, jeśli nie zdoła naprawić, skończy się przekładaniem dysku i reinstalacją systemu.

Pojawia się kolejny problem – skoro / jest w trybie read only, to nie można utworzyć katalogu, by podmontować gdzieś zdrowy filesystem. I to jest ten moment, który mnie na chwilę zawiesił. Rozwiązanie okazało się trywialne – / może być w read only, ale /dev/shm to nie dotyczy. Szybkie mkdir /dev/shm/backup, zamontowanie zdrowej partycji w tym miejscu i już można na spokojnie skopiować wybrane dane.

Kilka minut później uruchomiłem fsck.reiserfs z opcją przebudowania drzewa. Tym razem dał radę. Ale poważnie myślę nad zrobieniem dodatkowej partycji ratunkowej o rozmiarze 1GB, z minimalnym systemem (znaczy łączność, narzędzia do naprawy filesystemów, ddrescue itp.).

Tagi na Blox jako przykład usability fail.

Bardzo lubię tagi jako znaczniki do wpisów, bo to chyba najszybsza metoda na znalezienie wpisu (w swoich wpisach), poza tym, można w prosty sposób kierować do podobnych tematycznie wpisów, także między platformami (np. z wykorzystaniem Folksr; opis integracji Blox i Folksr tutaj), więc bardzo ucieszyłem się, gdy Blox je wprowadził.

Moja radość nie trwała długo – mój mały system półautomatycznego przypisywania tagów (AKA tag-ego-rise) szybko dobił do limitu 100 tagów. Później limit został zwiększony do 250, ale i to nie starczyło na długo. Podobno istnieje jakieś uzasadnienie limitu tagów dla danego bloga. Więcej, nawet nie wiedząc nic o bebechach Blox potrafię sobie wyobrazić powody limitowania. Ale czemu tylko 250? Nic to, przyjmijmy to za ograniczenie techniczne. I w sumie da się przeżyć…

Kolejna sprawa to pisownia – obecny system, gdzie każdy tag jest globalny dla wszystkich blogów na Blox i może być dodany tylko w jednej wersji (duże i małe litery) wymusza arbitralne decyzje, czy będzie Safari (przeglądarka) czy safari (polowanie), Opera (przeglądarka) czy opera (muzyka, budynek). Kto pierwszy ten lepszy (no dobrze, admini mają możliwość interwencji, ale…), ale dzięki temu mamy tagi typu Policja (na pewno nikt z ekipy JP nie dodawał tagu), Katastrofa (taka kaczka?), Rock (musiało to być potężne brzmienie) i Wpis (Wpis na Blogu – brzmi dumnie, niestety blog jest małą). Też w sumie niekrytyczne, choć przydałaby się opcja pozwalająca na prezentowanie wszystkich tagów bez użycia wielkich liter (albo wszystko kapitalikami). Może nawet da się to w CSS jakoś zrobić.

No dobrze, powyższe mają jakieś uzasadnienia techniczne. Ale jak wytłumaczyć to, że z poziomu administratora bloga:

  • Nie ma sortowania tagów po ilości użycia w ramach danego bloga? I weź tu szukaj rzadko używanych tagów…
  • Nie można kliknąć tagu, żeby zobaczyć wszystkie wpisy na blogu (albo lepiej, listę ich tytułów), do których jest przypisany? Sama funkcjonalność istnieje, bo kliknięcie tagu pod wpisem dokładnie tak działa… No ale nie będę się w greasemonkey bawić, żeby łatać dziurę.

Pisząc oczywiście mam nadzieję, że podziała to stymulująco na developerów i późno bo późno, ale dorobią. Lepiej późno, niż wcale.

Geekowy grzejnik (powered by Debian).

Powoli robi się szaro i zimno i trzeba było pomyśleć o uruchomieniu ogrzewania w mieszkaniu. Grzeję prądem, niestety (drogo), ale nie zmienię tego, bo ani mieszkanie moje, ani pewnie warunków technicznych na co innego nie ma. A skoro już ogrzewanie elektryczne, to równie dobrze może być komputer zamiast grzejnika, tym bardziej, że mam jeden nieużywany. W sumie miałem go oddać, ale jakoś nie doszło do tego, bo i daleko był, i nie byłem pewien, czy całkiem sprawny jest. Okazuje się, że jest sprawny.

Zawsze to ciekawiej grzać komputerem, niż grzejnikiem, no i można różne ciekawe rzeczy sobie potestować, na które do tej pory, bez komputera nieprodukcyjnego, pod ręką, ale włączonego 24/7 nie było warunków (ot choćby dn24). Poza tym w końcu chyba pobawię się poważniej apt-p2p. No i żeby się nie nudziła maszynka, to jakieś dociążenie się przyda w stylu obliczenia rozproszone.

W środku nic specjalnego:

$ cat /proc/cpuinfoprocessor       : 0vendor_id       : AuthenticAMDcpu family      : 6model           : 8model name      : AMD Sempron(tm) 2300+stepping        : 1cpu MHz         : 1588.825cache size      : 256 KB

Do tego 512 MB RAM.

Jako system oczywiście GNU/Linux Debian, tym razem Squeeze (czyli jeszcze testing). I w miarę nowy soft, i stabilnie jest. Hostname? Oczywiście grzejnik. 😉

Po krótkim namyśle jako utylizator cykli procesora został wybrany GIMPS, którym – jeśli chodzi o obliczenia rozproszone – bawiłem się chyba najdłużej. Odpowiedni poziom nieużyteczności posiada, nie jest całkiem bezsensowny (w przeciwieństwie do szukania kosmitów), są statystyki i teamy, jeśli kogoś to bawi (mnie odpowiednio: tak, nie). Przy okazji zrobiłem mały research i wychodzi, że minimum 4 lata nie bawiłem się GIMPS. No i 2 lata minęły od znalezienia liczb pierwszych odpowiednich do przyznania nagrody. Tak w ogóle, to z obliczeń rozproszonych do tej pory kolejno bawiłem się SETI@Home, GIMPS, M4 project, no i teraz powraca GIMPS.

Programy, które są/będą uruchomione na grzejniku:

Myślę, co by tu jeszcze wrzucić…?

Every time you use breaks on highway, God kills a kitten.

Będzie o minionym jakiś czas temu urlopie, a w zasadzie dojeździe i powrocie. Ponieważ był to wyjazd w góry™, to uznany został za odległy. Ponieważ został uznany za odległy, to pociąg odpadał – mała nie da rady. Samochód jest jednak i bardziej wygodny, i bardziej elastyczny. I – koniec końców – przydaje się na miejscu, bo zawsze można gdzieś podskoczyć. To, że lubię jeździć pomijam.

Okazało się, że Poznań nie tylko w stronę Szczecina nie ma porządnej drogi. W stronę Wrocławia też jest bieda. Za pierwszym razem Google wybrało trasę przez Jarocin (odradzam), za drugim wracałem czymś niby trochę lepszym, ale tak naprawdę miało być o tym, czego nie ma, czyli o autostradach. Stan autostrad w Polsce widać na wiki i specjalnie nie ma co dywagować nad jego oczywistą niedolą. W każdym razie wynika z niego, że z Poznania do stolicy porządną drogą się nie dojedzie (a ze Szczecina i owszem ;->) i że autostrad jest w Polsce… niewiele.

Zapewne z niewielkiej ilości wynika fakt, że przeciętny Polak nie umie jechać po autostradzie. Albo się wlecze (czytaj: jedzie poniżej 120), albo gna na złamanie karku (czytaj: jedzie ponad 180), ale zawsze jedzie nierówno i wymusza nierówną jazdę innych. Nierówną, czyli z dużymi zmianami prędkości. Wręcz z hamowaniem. A przecież every time you use breaks on highway, God kills a kitten.

Czemu piszę Polak? Tak sądząc po blachach. Jakoś Niemcy jeżdżą u nas po autostradach sensowniej. Nawet jeśli jadą nieco szybciej, to widząc, że kogoś wyprzedzasz lub powinieneś zacząć wyprzedzać, żeby samemu nie hamować, zwolnią delikatnie (nie w ostatniej chwili) i wpuszczą, pozwalając bezstresowo wykonać manewr. Z drugiej strony sami też nie czekają z wyprzedzaniem do ostatniej chwili.

Specjalnie zacząłem zwracać na to uwagę w drodze powrotnej i praktycznie zawsze samochody na niemieckich blachach jechały płynnie i umożliwiały płynną jazdę innych w granicach 130-150 km/h (absolutnie bezpieczna prędkość, choć wg przepisów za szybko), natomiast na naszych blachach – loteria i brak myślenia kilkadziesiąt sekund naprzód. A przecież tak naprawdę jazda po autostradzie z taką prędkością to prawie szachy – spokojnie można przewidzieć kolejność samochodów i potrzebne manewry na kilkadziesiąt sekund naprzód dla wszystkich aut w zasięgu wzroku.

Oczywiście nie mówię o sytuacjach awaryjnych – takie się zdarzają, podobnie jak dziwne manewry innych i wtedy hamować po prostu trzeba, ale następnym razem jak wyjedziesz na autostradę pamiętaj: every time you use breaks on highway, God kills a kitten. I ogólnie, że świetny refleks przez 99,999% (tak, pięć dziewiątek i wiem co to znaczy) czasu kierowcy się nie przydaje do niczego, za to wyobraźnia i myślenie – jak najbardziej.

PS. Przy podanych prędkościach zakładam, że samochód jest sprawny technicznie, nie jest czterośladem i ma normalne ogumienie, a jazda nie odbywa się w nietypowych warunkach. Kupowanie auta, a na opony nie starczyło jest u nas dość popularne, niestety. Czteroślady chyba jeszcze też.

Czytnik RSS vs newsreader.

Właśnie odpaliłem newsreader, żeby poczytać o wątek na polipie o TP-IX i PL-IX (w sumie wyniknął ładny skandalik, a przynajmniej jest news w sieciowym światku) i uświadomiłem sobie, że z newsów praktycznie już nie korzystam, a kiedyś był to mój podstawowy sposób komunikacji ze światem. A jednak newsreader to najwygodniejsze narzędzie do czytania grup news – WWW nie zbliża się nawet do niego, nawet tylko do odczytu.

Nadal szukam porządnego graficznego newsreadera – bardzo podobało mi się Knode z KDE 3.5 (miało chyba wszystkie potrzebne funkcje i fajny look & feel), ale odkąd pożegnałem się z KDE, nie bardzo chcę je instalować – ciągnie to za sobą serwer MySQL (jako zależność od akonadi-server), którego nie mam życzenia widzieć na moim desktopie. Ludzie polecili Pan – byłby fajny, ale jakiś taki mało konfigurowalny jak dla mnie jest – nie widzę jak w prosty sposób wyświetlić wszystkie nagłówki, nie widzę jak wyłączyć emotikony…

Na pierwszy rzut oka ciekawie wygląda XPN, ale trochę wolny jest (przy większych operacjach typu wyszukiwanie grupy czy jej dodawanie). I trochę drażni domyślne wątkowanie (pozostały default całkiem dobrze). W sumie podobny do Pana, ale jakby bardziej konfigurowalny – zdecydowanie dostaje szansę, bo Pan to jednak nie to, czego szukam.

Ale nie o tym miało być – newsy umarły. Postów znacznie mniej, nowych ludzi praktycznie nie ma (tak, zaglądam, a tam w ogromnej większości znajome nicki sprzed kilku lat). Mało kto z tego korzysta, nowych użytkowników niemal w ogóle nie ma… Faktem jest, po co komu skomplikowane NNTP, skoro są fora internetowe (brr, niewygodne), mamy od cholery μblogów, zwykłych blogów, Facebook, Google Wave itp. Wszystko bardziej elastyczne, otagowane, dostępne od ręki… Internet na tyle szybki i dostępny cały czas, że narzut nie przeszkadza, ba nawet lepiej, że zdjęcie (raczej teledysk) jest osadzone w treści…

Z kolei funkcję szybkiego dostępu w trybie tylko odczyt przejęły IMO RSSy różnej maści. Złapałem się na tym, że pomyliłem przez sekundę Pan z Liferea. W pierwszym w dużej kolumnie po lewej lista grup, w drugim – kanałów RSS, u góry po prawej w pierwszym lista wątków,  drugim – tytuły wpisów. W obu przypadkach po prawej u dołu treść posta/wpisu. Praktycznie to samo. Jedyne co różni programy, to podejście – newsreadery są bardziej zorientowane na funkcjonalność, a czytniki RSS bardziej na wygląd. No i newsreadery są niezbyt rozwijane, niestety.

Tak czy inaczej – korzysta się z tego podobnie (w trybie read only, w sumie pisanie w newsreaderach zawsze było wydzielone i zewnętrzne – odpal jakiś (zewnętrzny) edytor i wyślij gotowy post. W RSS przydałby się scorefile i regexpy.

Najbardziej mi się marzy program (a raczej serwis) typu integracja wszystkiego z wszystkim. Integracja kanałów RSS (zwł. komentarze na blogach), dodawania komentarzy pod wpisami, czytania news (z wątku łatwo można kanał RSS zrobić), postowania na newsy, μblogi… Wszystko z transportami, czyli możemy pisać i czytać dowolne rzeczy przez jabber/GG/maila/stronę/whatever. I rozbudowane filtry/score (per osoba, IP, regexp w treści, itd.). I wcale nie jest to takie niemożliwe do napisania – większość narzędzi daje albo API, albo obsługę maila, albo RSS. Wystarczy dorobić dodatkową warstwę abstrakcji na wejściach i wyjściach i gotowe. 😉

Szybki test Freenetu.

Jakoś tak się złożyło, że wpis Zala przypomniał, że zarzuciłem zabawę z Gnunetem (którego po prostu nie udało mi się w 5 minut na czuja uruchomić). Postanowiłem przyjrzeć się Freenetowi, który powinien być prostszy i popularniejszy. I którego do tej pory skreślałem ze względu na Javę.

Z prototą bym nie przesadzał – nie wiadomo, który plik wybrać (a w Debianie nie ma tego pakietu). Na stronie projektu plików do pobrania jest wiele, nie wiadomo, która wersja jest stabilna. Ostatecznie podążam dosłownie za wytycznymi z przykładu, tym bardziej, że liczba pobrań też jest największa.

Instalator brzydki, ale instaluje bez problemu. Z niefajnych rzeczy – bez pytania dodaje usługę Freenet do uruchomienia po reboocie.

@reboot   "/home/rozie/programs/Freenet/run.sh" start 2>&1 >/dev/null #FREENET AUTOSTART - 8888

Irytujące, szczególnie, że może warto wyrzucić na osobnego usera. Oczywiście, przeniesienie nie jest problemem, ale IMHO powinien zapytać, czy może dodać wpis. Na zakończenie drobny fail – pisze An uninstaller program has been created in: (tak, potem pustka). Brak informacji o tym, czy demon zostaje automatycznie włączony (tak, zostaje). Niezły wizard.

Prywatność. Widać, że twórcy dbają o prywatność w sieci – użytkownik proszony jest o korzystanie z oddzielnej przeglądarki do łączenia z demonem Freenetu. Jak najbardziej zasadne, bo w przypadku wspólnej przeglądarki nie będzie żadnego problemu z wywołaniem zwykłego URLa ze strony freenetowej, co w połączeniu z dostępem do ciasteczek itd. jest oczywistą metodą pozbawienia anonimowości. Tylko zwiedzam, więc olewam i poprzestaję na wywaleniu ciasteczek (w tym flashowych), ale jak najbardziej zasadne.

Następnie określa, na ile zależy mu na ochronie przed rządem, ISP oraz (wybieram opennet i normal)… osobami określonymi jako przyjaciele. Domyślnie mają oni (lub malware na ich komputerach) sporą możliwość naruszenia prywatności (wybieram high). Kolejne pytanie jest o pliki tymczasowe i pobrane. Do wyboru 4 poziomy zabezpieczenia, w tym takie, które wyglądają na bezpieczne (oczywiście jeśli nie ma błędów w implementacji/backdoorów) nawet bez szyfrowanego systemu plików/katalogu. Najbardziej paranoidalny tryb oznacza trzymanie klucza tylko w pamięci (do testu wystarczy normal), czyli dane tracone są bezpowrotnie chwilę po wyłączeniu maszyny (modulo wejście na swap, modulo bruteforce). Na koniec testu wybieram 5GB przestrzeni dyskowej do wykorzystania.

No i tu zaczyna się jazda. Zużycie procesora (PIII 1 GHz) utrzymuje się od tego momentu na ok. 40-50%, a pamięci RAM na 8,7% (z 1GB) i rośnie (maksymalnie widziałem 20%). Program pozwala ustawić limit RAM – domyślny limit RAM to u mnie 192 MB. W praktyce oznacza to, że procesor nie ma wytchnienia i będzie się włączał wiatrak. Do not like. Wychodzi, że łącze 32 KB powinienem wybrać, co czynię.

Szybkość działania jest tragiczna. Nawet prostą wiki otwierał długo. Kolejna rzecz, którą sprawdzam (i która otwiera się nieco szybciej, ale skojarzenia z modemem i wczesnym dzwonieniem na 0202122 silnie wskazane) to Freenet TEXTlink Index. Tu zdziwienie. Nawet sporo linków jest po polsku. Nie wiem na ile to zbieg okoliczności, a na ile odwzorowanie stanu faktycznego. Tematycznie dominuje metatematyka (tu: wolność, libertarianizm, linki freenetowe) oraz polityka i… chrześcijaństwo (zwł. polskie strony), które często pod politykę podpada. Bliższe przyjrzenie się treści i okazuje się, że śmierdzi trupem – większość stron aktualizowana w 2008, 2010 to święto. Do testowania pobierania plików nie dotarłem – skoro wolniejsze, niż wbudowane strony, to nie chcę nawet sobie tego wyobrażać.

W sumie nie wypada to za ciekawie. Bawiłem się około godziny – możliwe, że potem zużycie procesora spadnie (pobierał do lokalnego cache dane cały czas i szyfrował je), a prędkość wzrośnie, ale IMHO cały projekt dla hobbystów. W zwykłym użytkowaniu Tor znacznie szybszy, bardziej użyteczny (dostęp do wszystkich treści, nie tylko wydzielonego, osobnego skrawka Internetu), choć mniej bezpieczny i trochę inne zastosowanie, jednak.

Deinstalacja: katalog Uninstaller w głównym katalogu programu Freenet i java -jar uninstaller.jar Działa ładnie, usuwa wpis z crona i cały katalog. I w sumie to jedyny element programu, do którego nie mam zastrzeżeń.

Dopalacze a narkotyki.

Jak donosi Zal (a i mi w TV i paru miejscach w sieci mignęło), zaczęła się nagonka na dopalacze. Zamykanie sklepów itp. Przeczytałem blipnięcie i stwierdziłem, że jeśli faktycznie 3 osoby zeszły po nich w ciągu tygodnia (i nie jest to jakiś mocno nietypowy tydzień), to bardzo dużo jest (150 rocznie). Nie byłem pewien, jak kształtują się dane dotyczące umieralności z powodu przedawkowania narkotyków, ale 3 osoby tygodniowo wydały mi się dużą ilością. Sprawdziłem i gógiel potwierdza – od 1999 r. liczba zgonów z powodu przedawkowania narkotyków wynosi ok. 300 rocznie (wcześniej ok. 200), czyli dopalacze byłyby tylko o połowę mniej zabójcze niż cała reszta (wliczamy heroinę i kompot). O ile nie są już ujęte w tej statystyce – klasyfikacja nie jest oczywista.

Zgony z powodu przedawkowania narkotyków w latach 1987–2005.

Zgony z powodu przedawkowania narkotyków w latach 1987–2005. Źródło danych: GUS, na podstawie Zgony z powodu przedawkowania narkotyków.

Z ciekawych rzeczy – kojarzy mi się, że zaostrzenie przepisów dotyczących narkotyków (m.in. ściganie posiadania na własny użytek) to właśnie okolice 1999 r. Jak widać koreluje się dodatnio ze wzrostem zgonów. Potem mieliśmy parę zmian dotyczących tego, co jest narkotykiem (obecnie prawie wszystko, wliczając mało popularne i stosunkowo bezpieczne substancje).

Jeśli pamiętam poprawnie datę zaostrzenia przepisów, to mamy piękny przykład analogiczny do surowego podejścia do piwa na imprezie szkolnej. Ścigają piwo – młodzież przestawia się na wódkę (łatwiej ukryć, mniejsze opakowania). Ścigają wódkę – młodzież przestawia się na jeszcze trudniejsze do wykrycia narkotyki. Każda z substancji jest trudniejsza do kontroli, łatwiejsza do nadużycia i potencjalnie bardziej niebezpieczna. Chętni do odurzenia się/spróbowani są (i zawsze będą).

Co jeszcze? Dopalacze, w przeciwieństwie do uczciwych narkotyków, to mieszanki różnych substancji, których główną cechą wspólną jest to, że nie są (póki co) sklasyfikowane prawnie jako narkotyki. I oficjalnie, w większości przypadków, nie są przeznaczone do spożycia (ale i tak kupujący wiedzą o co chodzi). Zasadniczo na myśl przychodzą mi tu Birol i Butapren (ależ oczywiście, że są w użyciu jako środki odurzające, nie tylko mamy znany kultowy utwór o butaprenie, ale i poradnik sprzed zaledwie 5 lat widzę), tyle że tu przynajmniej substancja jest jedna i znana, więc łatwiejsze do kontroli.

Podsumowując: nie martwi mnie, że zamykają sklepy z dopalaczami. Martwi mnie, że w ich miejscu nie powstają uczciwe coffee shopy (dla jasności, dla mnie mogliby tam wszystkie narkotyki sprzedawać, byle nie mieszanki i byle stężenia podawali i ilość uczciwie). Bo hurtowni artykułów chemicznych nie zamkną, a pomysłowość ludzka nie zna granic.