Beagle my logs? Nie dzisiaj.


Zabrałem się za dopisanie logowanie w formacie GAIMa do EKG2. Zaczęło się z górki, bo ktoś przerobił (i słusznie) obsługę log_formats na korzystanie z variable_map(). W kilka minut zdołałem chyba skumać o co chodzi i dodać nowy format "gaim".

I tu pierwszy zonk - logs_handler jest popsuty, pozwala logować tylko w jednym formacie. A pierwotnie można było wybrać dowolną ich ilość. To jest do naprawienia, ale nie dzisiaj.

No to dalej. Przy generowaniu ścieżki trzeba trochę oszukać - mieć ,,w nosie'' to co chce użytkownik i logować do ~/.gaim/logs/(protokół)/(userid)/(rozmowcaid)/data.godzina.txt. Nic trudnego, w końcu rok temu tworząć plugin logów wbudowałem w niego właśnie taką uniwersalność.

No to problem numer dwa: funkcja formatująca nie rozeznaje się na protokołach. Teoretycznie wystarczy dodać nową formatkę i wycinać z nazwy sesji wszystko do pierwszego dwukropka. Praktycznie działa to tylko dla irc, bo pozostałe sesje mają inne prefiksu (jabber - jid, gadu-gadu - gg). Tymczasowo więc zrobił parę ifów.

String formatujący zrobiony, logs_prepare_path() i ... dupa. Nie dość, że formatka %F nie tworzy poprawnie daty, to jeszcze nie ma godzin, minut, sekund. Widget Tango Foxtrot?
Funkcja rozwijająca szablon ścieżki logowania w ogóle nie obsługuje godzin, minut, sekund! Ba, ona nawet nie ma pojęcia o strftime(). Jestem pod wrażeniem jak mi się to udało aż tak spieprzyć. I do tego hijacknąć sobie np. %S (w ramach uzupełniania nazwą sesji, a nie bieżącą sekundą).

No więc kolejna rzecz do zrobienia - przerobić logs_prepare_path() na modłę timestampu - czyli formatki dla strftime() poprzedzać dwoma %, i przepuszczać przez rzeczone strftime() po rozwinięciu wszystkich EKGowych specyfików.

Ale dzisiaj już nie mam sił. Pół dnia nauki o Sieciach Telekomunikacyjnych z Integracją Usług na piątkowy, przyspieszony egzamin nie pozostawiło mi za dużo ochoty na wysilanie umysłu. Do tego tak dawno nie pisałem w C, że aż mi trudno wrócić do tego. Przez chwilę walczyłem z myślą, czy by nie dopisać parsowania logów EKG2 do Beagle'a. O wiele łatwiej i szybciej zrobiłym to w C# niż w C w EKG2. Ale nie tędy droga.

No i jeszcze jedna sprawa: GAIM loguje do plików reprezentujących konwersacje. W EKG2 poszczególne wiadomości są zupełnie ze sobą nie związane, więc każdy msg powodowałby stworzenie nowego pliku z oddzielną rozmową. Jako rozwiązanie widzę przypisanie do okna informacji o pliku w jakim następuje logowanie. I byćmoże tworzenie tych plików w handlerze, przy stworzeniu okna. Tu jednak wychyla łeb kolejny problem - wiadomości wysłane przez /msg, które pojawiają się w głównym oknie - nie mają jeszcze przypisanego okna z konwersacją. Jak zapamiętać, gdzie je zalogowano?

Pewnie skończenie tego zajmie mi tyle, co w ogóle zrobienie plugina logów. Zacząłem w okolicach maja zeszłego roku, w miarę skończyłem w sierpniu.

Muzyka w tle


Zazwyczaj muzykę słucham robiąc coś. Odpalam $FAVOURITE_PLAYER na piątym pulpicie, włączam i wracam na pierwszy lub drugi do roboty. Problem pojawia się jak chce szybko zmienić kawałek na następny, wyłączyć albo spauzować. Uciążliwe jest przełączanie pulpitów w celu wykonania zaledwie jednego kliknięcia. Z problemem nie radzą sobie różnego rodzaju wtyczki ,,tray icon''. Po pierwsze naduzywają one obszar powiadamiania, po drugie kryją potrzebne funkcję w odległym o dodatkowe kliknięcie menu kontekstowym.

Trzymanie playerka daleko ogranicza również aspekty wizualne, a mianowicie wesoło skaczącą wizualizację tego co słyszę. Rozwiązanie jest proste: włączyć opcję ,,pokazuj na wszystkich pulpitach''. Ale z jednej strony powoduje to wizualny bałagan, z drugiej okienko $FAVOURITE_PLAYER znika pod innymi w krótkim czasie.

Na w pełni satysfakcjonujące rozwiązanie składają się dwa applety. Pierwszy to gxmms, który zapewnia przyciski Następny, poprzedni itd., możliwość przewijania oraz dodatkowo regulację głośności. Wbrew nazwie, działa poprawnie również z Beep Media Playerem, nie tylko z XMMS. Po najechaniu nań wskaźnikiem myszki pojawi się nawet tytuł odtwarzanej piosenki. Dodatkowo używa aktualnego themu GTK, więc wygląda jak reszta środowiska.

Drugim elementym, stanowiącym już tylko eye-candy, jest GAI Visual Audio. To jeden z appletów/dockletów korzystających z frameworku GAI. Razem z poprzednim prezentują się tak, nie zajmując zbyt wiele miejsca:

[img]

GAI Visual Audio wymaga instalacji wtyczki do XMMS. Dzięki zachęcia i wskazówkom Doomhammera, udało mi się przekonać tę wtyczkę do działania również z BMP.

Osoby nieprzekonane do tych dwóch odtwarzaczy mogą poszukać wśród odtwarzaczy zrecenzowanych przez da.killę.


Archived comments:

tuzi 2005-05-07 13:39:53

gxmms jest świetny. Tylko strasznie mi w nim brakuje możliwości zmiany utworu przy pomocy klawiatury. Jakoś gdy coś piszę na komputerze w ustawieniu "wygodnego rozsiadywania się", to nigdy nie chce mi się sięgać po mychę żeby zmienić utwór (a mycha leży gdzieś hen daleko...).

zdzichuBG 2005-05-07 13:44:09

Najlepiej mieć klawiaturę ,,multimedialną'' z odpowiednimi klawiszami. Wtedy można ich używac dzięki XF86Audio Keys Control Plugin.
Dla nieposiadających pozostaje wywoływane `beep-media-player -f` albo `beep-media-player -r`.
W samym gxmms brakuje mi wyświetlania czasu pozostałego do końca utworu, ale to chyba sobie dopisze dzisiaj i wyśle łatkę autorowi.

tuzi 2005-05-07 13:47:33

hm, co prawda moja multimedialna klawiatura jest dosyć ograniczona jeśli chodzi o doatkowe przyciski (volume up/down i mute), ale xmms -r i -f jest to dobra rzecz, nawet nie wiedziałem że takie cosie istnieją :)

Cachotterie 2005-05-07 13:57:26

Jeśli korzystasz z FF to jest do niego też fajny plugin :)

zwierzak 2005-05-15 00:44:06

Ja mam wygodniejszy patent, dostałem ładną klawiature multimedialną i pod wszystkie jej klawisze podpisałem mój ulubiny odtwarzacz amaroK ;)

iss 2005-06-12 18:02:30

amaroK standardowo reaguje na skróty win+[zxcvbo+-] i jest to nieziemsko wygodne (szczególnie, że klawierka z panelem multimedialnym mi padła).

Nothing to see, move along


W ramach testów Imageshack:

Free Image Hosting at www.ImageShack.us
Obiekt pierwszy: mówiąc ,,wątek obok''
mam na myśli obok, a nie wyżej czy niżej
Free Image Hosting at www.ImageShack.us
Obiekt drugi: modrzew. Tj. desktop.


Archived comments:

vrok 2005-05-15 14:24:52

Jak Ty to zrobiłeś, że multi-aterm u Ciebie używalny jest? :)

zdzichuBG 2005-05-15 14:47:23

Nic wielkiego. Nawet nie dokonfigurowałem go jeszcze do końca - samo utworzenie pliku ~/.mrxvtrc (nawet pustego!) zmienia czcionkę w terminalu. Strasznie dziwny bug.

Gadu-spokój


Lekarstwo jest proste. Najpierw zabieramy transportowi GG autoryzację (/auth -d gg.chrome.pl). Potem tworzymy trzy proste aliasy:

gaduback: /xml <presence to="gg.chrome.pl" type="available"><status>JabberID: 
                zdzichuBG@chrome.pl</status></presence>
gaduaway: /xml <presence to="gg.chrome.pl"><show>away&lt/show><status>JabberID: 
                zdzichuBG@chrome.pl</status></presence>
gadukill: /xml <presence to="gg.chrome.pl" type="unavailable"><status>JabberID: 
                zdzichuBG@chrome.pl</status></presence>
Potem należy tylko pamiętać, żeby wyłączyć Transport GG przed rozłączeniem się z Jabberem. Bo jeszcze ktoś pomyśli, że jesteśmy online.

Ponieważ do gtk-engines dodany został Clearlooks, postanowiłem pozbyć się osobnej paczki i zrobiłem upgrade. Błąd. Z motywów dostarczanych z gtk-engines jest tylko obleśnie niebieski standardowy. Brzydki jak diabli. Dlatego po pół godzinie męczenia się doinstalowałem z powrotem Clearlooks-Olive. I poczułem ulgę. Naprawdę, zieleń uspokaja.


Archived comments:

DoomHammer 2005-04-17 12:58:22

kod Ci sie rozplywa :)

zdzichuBG 2005-04-17 13:01:48

no co ty, u mnie mieście się bez problemu w okienkui przeglądarki

DoomHammer 2005-04-17 13:02:57

a bo mialem wlaczony panel z historia. W pelnym okienku sie miesci, w niepelnym sie eni miesci :)

1698 km


Z Pingwinariów powrócon. Pierwszy raz byłem, więc nie mam jak oceniać. Jedzenie było superświetne. Non-stop ktoś robił fotki. Nawet znalazłem jedno zdjęcie, na którym jestem. Jest też, po lewej na górze, Jajcuś, którego udało mi się w przerwie znapastować o PubSub. Wyjaśnił mi parę kwestii, w których się myliłem. To fajnie.

Slajdy z mojego wykładu są tutaj (albo będa w przeciągu paru godzin - musza się dograć). Link do nagrania z wykładu umieszczę, jak go Chomik gdzieś wystawi.

Dwie zabawne chwile:

  1. Na korytarzu podszedł do mnie lekko już wstawiony ktoś i zapytał: Ej, czy ty może jesteś Smoku?. Z żalem musiałem stwierdzić, że nie.
  2. W czasie wykładu bodajże Tomka Zielińskiego:
    Prelegent: Rozkład jazdy komunikacji miejskiej dostępny będzie w wersji dla Windows i Linuksa. Użytkowników Mac OS X stać na własne samochody.
    Głos z sali 1: Nieprawda! Z nami przyjechał jeden użytkownik Macintosha, pociągiem...
    Głos z sali 2: ... swoim.

Archived comments:

maciej 2005-04-15 00:15:41

Hmmm...

Kojarzy mi się takie hasło z tematem:"glimpse"...

Jam Łasica RF 2005-04-15 01:11:25

" Głos z sali 2: ... swoim."
ROTFL

DoomHammer 2005-04-16 19:25:48

btw: Macintosha :)

zdzichuBG 2005-04-16 19:27:53

Doomhammer: wiem, ale z cudzysłowem brzydko wygląda?
Ciekawiej, ten mój tekst zaczął już krążyć po necie. Nawet na ds.humor trafił. Ale osoba, która skopiowała to na irca, przez co potem trafiło na bash.org.pl usunęła polskie literki i dodała błąd ortograficzny.

DoomHammer 2005-04-16 19:30:09

na bash.org tez widzialem. Nie chodzi o to, czy brzydko wyglada, tylko ze zasada ortograficzna jest (takie rfc dla tych, co to jeszcze olowkow i kartek uzywaja) i czasem mnie rani, jak moj znnajomy pisze "ok'a"...

zdzichuBG 2005-04-16 19:32:38

Dobra, dobra, corrected :P

DoomHammer 2005-04-16 19:38:06

no to ok'a :P

Piątek


Dwie setki najważniejszych polityków, prezydentów, królów i królowych (oprócz Kibaki, Museveniego i Mkapa'y). Miliony niewiernych. Służby, które miały zaledwie tydzień na zorganizowanie ochrony. I tak mało czasu na przygotowanie zamachu :-/.


Archived comments:

jack 2005-04-06 18:24:24

Czasu było wiele.

zdzichuBG 2005-04-06 19:08:58

Pochwal się, co zaplanowałeś :)

jack 2005-04-06 21:22:15

No tak, teraz będzie na mnie. ;)

Evil me



210000 .-- doomhammer_chr/jid:doomhammer@chrome.pl/Jaskinia --- -- -
210000 | ale to kazdy umi tak - ja chce bardziej tru gik i chce pipy uzyc
210000 `----- ---- --- -- -

Archived comments:

DoomHammer 2005-04-04 16:01:18

Powiedziałem to raz, powiem i raz jeszcze: a odwal sie :P

Poza tym obrazek Ci sie tutaj nie miesci w ramce :P

Cykl


Na jesieni poświęciłem dwie noce z kolei na przeczytanie dwóch całkiem interesujących pozycji książkowych. Na pierwszy ogień poszło W obronie wolności, traktujące o zapędach ogólnie znanego Ryśka. Rzecz interesująca, z rozrzewieniem czytałem o czasach gdy mężczyźni byli mężczyznami, programiści programistami, a żeby użyć nowego komputera, trzeba było napisać sobie na niego System Operacyjny.

W tej notce chciałem jednak napisać o drugiej książcę, którą tymczasowo określać będe jako K. Kanwą do jej napisania były dyskusje prowadzone na liście pocztowej nazwanej podobnie jak omawianie wydawnictwo. A wysnuć na ich podstawie można nader ciekawą obserwację.
Poczta - interakcja użytkownika z systemem obsługi przesyłek potrafi wyzwolić takie reakcje:

over the last two days i've received hundreds and hundreds of "your
mail cannot be delivered as yet" messages from a W mailer
that doesn't know how to bounce mail properly. i've been assaulted,
insulted, frustrated, and emotionally injured by X processes
that fail to detect, or worse, were responsible for generating various
of the following: mail loops, repeated unknown error number 1 mes-
sages, and mysterious and arbitrary revisions of my mail headers,
including all the addresses and dates in various fields.

W keeps me up for days at a time doing installs, reinstalls, refor-
mats, reboots, and apparently taking particular joy in savaging my
file systems at the end of day on friday. my girlfriend has left me
(muttering "hacking is a dirty habit, W is hacker crack") and i've
forgotten where my shift key lives. my expressions are no longer reg-
ular. despair is my companion.
i'm begging you, help me.

Żeby nie psuć jeszcze zabawy, zastąpiłem nazwę omawianego systemu operacyjnego literką W. Uczynię tak jeszcze kilka razy, również w stosunku do innych systemów (U) i nazw programów (X)
Cóż to za system ma taki zgubny wpływ na zwykłego użytkownika? I czy czegoś nam to nie przypomina? Jeśli nie, to może kolejne fragmenty z czymś się skojarzą:

We have been friends for years, and many are the flames we have
shared about The World's Worst Operating System (W, for you
W weenies). One of his favorite hating points was the [alleged]
lack of file locking. He was always going on about how under real
operating systems (U1 and U2 among others), one never had
to worry about losing mail, losing files, needing to run fsck on every
reboot... the minor inconveniences W weenies suffer with the zeal
of monks engaging in mutual flagellation.
<przekaz type="podprogowy">Scandisk sprawdza dysku C </przekaz>... ? Nie no, skąd. Wszyscy wiedzą jaki system zachowuje się w ten sposób.

Tutaj z kolei fragmenty dłuższej wypowiedzi. Autor opisuje swoje przeżcyia związane z przejściem z systemu U na system W:

Well, I've got a spare minute here, because my W's editor window
evaporated in front of my eyes, taking with it a day's worth of X
state.
[...]
One neat thing about W is that they really boot fast. You ought to
see one boot, if you haven't already. It's inspiring to those of us
whose U take all morning to boot.

Another nice thing about W is their simplicity. You know how a
U is always jumping into that awful, hairy debugger with the
confusing backtrace display, and expecting you to tell it how to pro-
ceed? Well, W ALWAYS know how to proceed. They dump a
core file and kill the offending process. What could be easier? If
there's a window involved, it closes right up. (Did I feel a draft?)

This simplicity greatly decreases debugging time because you imme-
diately give up all hope of finding the problem, and just restart from
the beginning whatever complex task you were up to. In fact, at this
point, you can just boot. Go ahead, it's fast!

None of the standard W window applications ("tools") support
Emacs. W applications cannot be patched either; you must have
the source so you can patch THAT, and then regenerate the applica-
tion from the source.

[...]

But that's not all: Apparently there are other behemoths of the swap
volume. There are some network things with truly stupendous-sized
data segments. Moreover, they grow over time, eventually taking
over the entire swap volume, I suppose. So you can't leave a W up
for very long. That's why I'm glad W are easy to boot!

[...]

But, of course, W are very good at booting! So good, they some-
times spontaneously boot, just to let you know they're in peak form!
[...]
Time to boot!
Ciekawe, prawda? Zwłaszcza zdanie So you can't leave a W up for very long.. Myślę, że w tym momencie już wszyscy wiedzą, co ukrywa się za podanymi literkami.

Fragmenty pochodzą z książki napisanej na przełomie lat '80 i '90 ubiegłego wieku. Wstawiłem U w miejscach, w którym pojawiała się nazwa ITS, Multics bądź podobne. Natomiast za literką W kryje się system... Unix!
Książka K to Unix Haters Handbook.

Ilu z czytelników myślało, że U == Unix, a W == Microsoft Windows? Ha? Zastanówmy się, dlaczego?

Piętnaście lat temu, gdy powstawała rzeczona książka, Unix w wydaniu Sun'a był systemem stosunkowo młodym. Przedstawione przypadłości możnaby nazwać typowymi objawami młodego oprogramowania.

Parę lat temu (niektórzy nadal to robią) śmiano się z MS Windows, przypisując mu dokladnie te same cechy (ciągłe rebooty, dziwne błędy, rozwalanie filesystemów), które wcześniej kojarzono z Uniksem.
Dzisiaj Unix jest synonimem systemów stabilnych, bezpiecznych i działających bez przerw przez setki dni. Unix po prostu dojrzał.

Nie bójmy się zauważyć, że Windows też ma prawo dojrzeć. W końcu wersja 1.0 pojawiła się w sprzedaży w 1985 roku. Dwadzieścia lat temu. Wystarczający czas, żeby osiągnąć stateczność w rozwoju, prawda?

Osobiście należę do grupy osób, która aktywnie z MS Windows nie korzystała od ponad pięciu lat, nie jestem więc świadomy, na jakim etapie rozwoju są te systemy. Nie jestem więc uprawniony do głoszenia jakichkolwiek osądów o nich. Tak jak spora cześć deweloperów związanych z Wolnym Oprogramowanie. Uważam jednak, że należy odejść od stereotypów, że Windows == ciągłe wieszanie, bo przywoływanie takich argumentów we flamewarach kiepsko stawie nasze środowisko w oczach tych, co na bieżąco z innymi systemami.

Unix przeszedł cykl dojrzewania. Windows też. Linux chyba też. Jaki system będzie następny?
Ciekaw jestem jak może wyglądać psioczenie typu ,,zabrali nam superstabilny Windows, dali najnowszy X który cały czas się wiesza''. Dla nieokreślonych jeszcze wartości X.

Zacytowane fragmenty pochodzą z publicznej listy mailingowej.

Wymiary: 7200.7, 200, elastyczność kabelka SATA i swoboda <abbrev title="Logical Volume Management">LVM</abbrev>


Tak się złożyło, że mam okazję dokonać zmiany dysku. Pozostaję wierny firmie Seagate, wymieniam moją dwuletnią osiemdziesiątkę na dwusetkę, ale z tej samej rodziny. Jedyna różnica to kabelek SATA zamiast PATA. I to właśnie stanowi problem.

Nowy dysk to ST3200822AS. Mój kontroler SATA to wbudowany w płytę główną Silicon Image 3112. sata_sil + Seagate = SNAFU.

Ta linia Seagetów (i jedna Maxtora) cierpi na znaczną niedoróbkę w implementacji protokołu Serial ATA. Jeśli przesyłane dane są podzielone na pakiety w sposób nieodpowiadaj±cy dyskowi, dochodzi do zjawiska o uroczej nazwie data corruption. Żeby temu zapobiec, sterownik sata_sil.c ogranicza maksymalną wielkość przesyłanych danych do 15 bloków, ponieważ wtedy nie następuje podział.

Przekłada się to na fatalną wydajność - testy nie wykazują wiecej niż 20 MiB/s - u mnie było 19,5 MiB/s.

Na szczęście dotyczy to jedynie zapisu (mniej ważnego w sytuacjach desktopowych), bo wtedy to kontroler przesyła (i dzieli) dane. Przy odczyciu żadne obostrzenia nie są potrzebne. I dzięki łatce spreparowanej przez TeJun Heo - nie są stosowane. Benchmark pokazuje ładne 61 MiB/s, co w porównaniu z 36 MiB/s na poprzednim dysku zwiększa komfort pracy.

Dodatkowo, kierując się opinią Jajcusia, zastąpiłem czteropartycjowy układ dysku zestawem 2 + LVM. Wymagało to wystrugania initrd, w czym wybitnie pomógł Yaird. Do tego jeszcze masaż skryptu rc.S, coby LVMa odpalał przed testowaniem filesystemów. I zhackowanie lvm mkvgnodes, żeby nie przejmował się katalogiem /var będącym tylko-do-odczytu i nie narzekał przy robieniu wpisów w /dev/motherlvm/*.

Na tym, i na przegrywaniu troszkę ponad 70 GiB zeszła cała sobota. Ziew.

Hacking area


Jak można poznać hackerstwo? Po tym, że Xscreensaver tekst do wyświetlania potrafi brać z RSSów:

[zrzut ekranu xscreensaver/starwars]

Archived comments:

da.killa 2005-03-31 22:53:47

Pełen szyk i giczy wypas :)

Jam Łasica RF 2005-04-06 19:23:02

Fajny jest nowy wygaszacz Matriksa z nmapem i closing i-nodes.
To jest dopiero hackerskie :P

Dlaczego Linux rządzi?


Ot, choćby dlatego:

Without ever unmounting, in the middle of a xorg build, I just created a new primary partition on an otherwise-unused disk, initialised it for LVM, added it to my LVM volume group, grew my volume group by 31GB, and grew my XFS partition by 31GB. The build didn't blink, and I now have a fair whack more free space. That is so incredibly cool, and mad props to whoever's responsible for this rocking so much.

(Źródło)


Archived comments:

Jajcus 2005-03-17 10:02:12

Dlatego ja żałuję, że nie na wszystkich maszynach mam LVM i XFS. Jednak, gdy większość z nich stawiałem, to XFS nie nadawał sie do użytku (stabilność, zresztą problem co jakiś cza powraca, np. w kernelu 2.6.8), a LVM po prostu nie znałem. A późniejsza migracja to już kłopot...

zdzichuBG 2005-03-17 19:54:34

Kiedyś miałem LVMa na workstacji (8,4 + 2,4 GiB dyski ;), ale mniejszy zaczął się sypać, więc musiałem z niego zrezygnować.
W chwili obecnej zastanawiam się, czy kupić nowy dysk, i jeśli tak, czy LVM nie będzie zbyt dużym overkillem. Bo a) komputer musi byc cichy, więc nie może mieć więcej, niż jeden dysk - nie zaistnieje nigdy potrzeba połączenia dwóch w jeden; b) cały czas mi się wydaje, że bardzo łatwo ,,pofragmentować'' sobie LV'ki przy zmianie rozmiaru, a jak z tego wyjść nigdzie nie piszą.

Jajcus 2005-03-17 20:23:50

Trzymanie wszystko w jednym filesystemie (na jednej partycji) to nienajlepszy pomysł, bo jeśli jedna usługa (np. poczta, czy cache WWW) spowoduje jego zapchanie, to mogą być problemy z całą masą innych, z utratą danych (pliki długości 0) włącznie. Na desktopie to może mniej istotne, ale ja nawet na domowej maszynce nie chcę mieć takich problemów. A zwykły podział na partycje ma jedną poważną wadę -- nigdy nie wiadomo ile miejsca w którym filesystemie będzie potrzebne w przyszłości. Dlatego IMHO LVM warto się bawić. Szczególnie na serwerze (teraz uważam to za nieodzowny element konfiguracji serwera), ale u geeka na desktopie też może się przydać. ZU może rzeczywiście nie jest to potrzebne.
A co do fragmentacji, to przecież wolumenami nie manipuluje się aż tak często, żeby to mógłbyć problem. A nawet jeżeli, to prostymi operacjami na wolumenach (zmiany rozmiarów, przegrywanie danych z jednego na drugi) powinno się dać to ręcznie zdefragmentować.

zdzichuBG 2005-03-17 20:31:56

No wiem, ostatnio chciałem przenieść Squida na workstacji na osobną partycję. Oczywiście piątej partycji primary się nie da zrobić, więc wywaliłem czwartą, zamiast niej zrobiłem jedną extended i w niej dwie logicznie. I okazało się, że pierwszej z tych logicznych nie da się podmountować, bo się pewnie superbloki poprzesuwały.
No to musiałem wywalić tą extended i z powrotem zrobić czwarta primary. Wtedy filesystem dał się po staremu zamountować, ale pozostałem w sytuacji wyjściowej.
Twój komentarz przekonał mnie do LVMa na moim ewentualnym nowym dysku. Gorzej, że do tego trzeba raczej jakiś initrd sklecić, a tego mi się nie chce i może nie zachcieć. Hmm. Chyba, że zostawie sobie minimalny / i jako PV wezmę jedną partycję. To się zobaczy.

Czemu mnie nie ma?


Jestem ostatnio makabrycznie zajęty. Pomijając zestaw kolokwiów w styczniu i sesję w miesiącu kolejnym (te 17 przedmiotów trzeba kiedyś zaliczyć), na mój chroniczny brak czasu składają się również inne powody.

Po pierwsze, to w tym roku pracowałem nad tekstem na Pingwinaria. Nie wyszedł jednak the best, a kupę czasu mi zjadł.

Po drugie, to prowadząc dział jądrowy w Linux+ spędzam ponad godzinę dziennie czytając LKML i streszczając dyskusję.

Po trzecie, co najważniejsze, większość czasu zjada kolejna praca. Mianowicie zarabiam $$$ jako najniższe możliwe stadium informatyka, tj. jako Programista PHP. Mam nadzieję, że jak będe się dobrze spisywał, to zostanę awansowany na jakieś powazniejsze zajęcie, np. na Zmieniacza Toneru w Drukarce (albo w Faksie).

Wszystkich oczekujących na gwałtowny rozwój plugina jabberowego w EKG2 serdecznie przepraszam i proszę o wybaczenie.


Archived comments:

sparrow 2005-03-14 13:52:57

heh, ja zarabiam €€€ jako jeszcze nizsze stadium informatyka: Programista Visual Basic ;)

mmazur 2005-03-14 17:35:25

Czytanie LKMLa to jest generalnie rzecz biorąc gupi pomysł :)

zdzichuBG 2005-03-15 11:19:51

sparrow: Respect, mon!

Zaplątani w pajęczynie


Miguel napisał mi dedykację. Podziękowałem mu w odpowiedzi do jego posta na sleszdocie. Na co on odpisał w komentarzu pod blogiem Jimmaca. Wicked.


Archived comments:

maciej 2005-03-06 23:51:31

Hmm... interesujesz się poważnie Mono?

zdzichuBG 2005-03-06 23:56:23

Używam czasami, jak coś musze sobie szybko napisać. Np. taki programik do zmnieniania losowo tapet (/dżogstaff/backchanger.cs) ;-). No i jestem w Grupie .NET na moim wydziale.
Ale to pewnie dlatego, że nie umiem Pythona.

Linux Kernel 2.6.11


Spróbujmy.

2.6.11 (2005.03.02)

Ok, there it is. Only small stuff lately - as promised. Shortlog from -rc5 appended, nothing exciting there, mostly some fixes from various code checkers (like fixed init sections, and some coverity tool finds). So it's now _officially_ all bug-free. Linus
Changelog

2.6.11-rc5 (2005.02.23)

Hey, I hoped -rc4 was the last one, but we had some laptop resource conflicts, various ppc TLB flush issues, some possible stack overflows in networking and a number of other details warranting a quick -rc5 before the final 2.6.11. This time it's really supposed to be a quickie, so people who can, please check it out, and we'll make the real 2.6.11 asap. Mostly pretty small changes (the largest is a new SATA driver that crept in, our bad). But worth another quick round. Linus
Changelog

2.6.11-rc4 (2005.02.12)

Hi there everybody, this is hopefully the last -rc kernel before the real 2.6.11, so please give it a whirl, and complain loudly about anything broken. As can be seen from the shortlog, most of the changes are pretty trivial. I think the biggest change is the radeon updates, and some of the NLS codepage things caused big diffs even if the changes themselves are pretty trivial (oh, and moving the ia64 "shubio.h" file accounts for about seven thousand lines of diffs, but no real changes ;) In short: some driver updates, some arm/uml/sparc updates, and various random (mostly) one-liners all over. The most noticeable of the one-liners is hopefully that raid5/6 should work again. Linus
Changelog

2.6.11-rc3 (2005.02.02)

This has a number of architecture updates (mips, arm, ppc, x86-64, ia64), and updates ACPI, DRI, ALSA, SCSI, XFS and InfiniNand.. And a lot of small one-liners all over. I'd _really_ like to calm down for a final 2.6.11 now, so please note anything really important I missed, but keep the rest pending. And give this a good testing.. Oh, and the automated bitkeeper mirroring to bkbits.net seems slightly broken right now (hasn't updated in the last 48 hours), but the tar-balls are all there, and the BK upating mechanism will hopefully be fixed soon. (I've got a few BK trees in private places, it's only the public bkbits.net one that hasn't gotten mirrored out yet - many other BK developers will know where to find my secondary trees and can pull from them instead). Linus
Changelog

2.6.11-rc2 (2005.01.21)

Ok, trying to calm things down again for a 2.6.11 release. Tons of small cleanups, annotations and fixes here. Driver updates, cpufreq, ppc, parisc, arm.. Pls check that I got it all. Linus
Changelog

2.6.11-rc1 (2005.01.11)

Ok, the big merges after 2.6.10 are hopefully over, and 2.6.11-rc1 is out there. Lots of small cleanups, although that inevitable qlogic firmware update makes pretty much _everything_ look small in comparison. SCSI, USB, IDE, x86-64, FRV, PPC64, ARM, input layer, ALSA, network drivers, pcmcia, knfsd, ACPI, sparse cleanups... You name it. Lots of (mostly) small updates all over the landscape. What gets hidden in the noise of all the updates is things like the conversion to 4-level page tables by Andi Kleen and Nick Piggin. That makes us able to use the full virtual memory space on 64-bit architectures. The patches may not be very large, and in fact it was interesting to see just how smoothly it seems to integrate. Linus
Changelog

RSS dump


Aktualnie subskrybuję sobie w czytniku RSS:

Natomiast Jogger informujem nie, gdy coś u siebie napiszą DoomHammer, Hrynek, Japhy, Leafnode, Marcoos, Rasheed, Remiq, Salvador, Skazi, Smoku lub Wojtekka.

A w ogóle to RSS musi odejść.PubSub!

Poliklinika^H^H^H^H^Htechnika absurdu


Dwa dni temu pojawiły się u nas na wydziale plany zajęć. Jak zwykle, dla trzech grup Telekomunikacji. Ale wszystkich czekała niespodzianka, bo... pojawiła się czwarta grupa, z pełnym planem. Nikt nie wiedział, co to oznacza, krążyły różne plotki.

Dzisiaj zaś część nieporozumień się wyjaśniła, wywieszono bowiem listy z nowym podziałem na grupy. W T1 36 osób, T2 i T3 odpowiednio 31 i 33. I oczywiście grupa T4. Z jednym nazwiskiem.

tu bedzie zdjecie, jak tylko dojdzie do mnie mailem

Z moim nazwiskiem. Nagle więc stałem się starostą swojej grupy. I stoma procentami jej składu. Jakbym nie przyszedł na zajęcia, to by całej grupy nie było.

,,WTF?!'' pomyślałem. Cóż to za absurd. Czyżby postanowili mnie ,,udupić'' za sprawę refundacji praktyk (o której za miesiąc) i dla ułatwienia zadania zrobili ze mnie indywidualną grupę? Czyżbym podpadł zbyt wielu osobom, i trzeba mnie wystawić na widok?

Kierowniczka dziekanatu odpowiedź miała prostą: Był pan 37. na liście, więc został przeniesiony. A jak to się stało, że przez ostatni semestr moja grupa T1 nie była aż tak liczna? I skoro już przeniesiony, to dlaczego do nowej grupy T4, skoro w pozostałych dwóch były jeszcze miejsca (5 i 3)? Bo tamte miejsca są zarezerwowane dla osób powtarzających. No dobrze, ale dlaczego ja, a nie ktoś -- nie ujmując nikomu -- kto ma większy dług punktowy ECTS niż ja? Bo był pan 37. na liście...

Możliwość powrotu -- jeśli ktoś z grupy T1 wyleci z aktualnego, szóstego semestru, albo znajdzie się ktoś na wymianę. Już widzę chętnych na przeniesienie do jednoosobowej grupy ;). A na zajęcia mogę chodzić do mojej starej grupy, o ile będa miejsca.

Na szczęście kilka godzin później, na wykładzie, usłyszałem rozmowę dwóch koleżanek, ... a ja już się przeniosłam do T3 .... Szybki zwrot w tył, pytanie z której grupy?, odpowiedź z T1 i już wybiegałem z wykładu pedząć do kierowniczki dziekanatu.

Faktycznie, zwolniło się jedno miejsce. Chce pan być w T1? Tak? *clickety, click* To proszę, już pan jest. Wszystko tylko dzięki temu, że część osób z mojego roku postanowiła spróbować swoich sił na drugim kierunku na Wydziale Gier I Zabaw, to znaczy erm, na Wydziale Zarządzania I Ekonomii, i godziny części ćwiczeń tam pokrywały się z laborkami u nas, więc musieli poprzenosić się do innej grupy. I całe szczęście, bo bym był w dziwnej sytuacji.

A czy na jakiejś innej uczelni student ma okazję do bycia w całkowicie indywidualnej grupie? :)


Archived comments:

remiq 2005-02-23 18:49:00

TO może inne pytanie. Jak tamta dziewczyna się przeniosła do T3?

zdzichuBG 2005-02-23 18:52:44

Ha! Uważny czytelnik. Z T3 jakaś dobra dusza przeniosła się w międzyczasie do innej grupy, prawdopodobnie... T4. Ale informacja o tym zmniejsza dramatyzm notki ;) Zresztą spróbuj sobie wyobrazić, jakbyś się czuł widząć swoje nazwisko jako jedyne na liście stanu osobowego grupy.

(Wg. ostatnich wieści już 20 osób znalazło miejsce w T4 - http://gzh.ds.pg.gda.pl/~t2/html/komentarze.php?forum=1&id=103 )

remiq 2005-02-23 18:53:45

Cóż, dzisiaj poczułem się trochę gorzej. Nie znalazłem siebie na żadnej liście :P

remiq 2005-02-23 18:54:47

( Musisz się zalogować. Ajmsory. )

zdzichuBG 2005-02-23 18:58:27

O, to ja też ajmsory. Nieznajdywanie się na listach mam rozpracowane od drugiego semestru (jeszcze pamiętam jak mi wtedy ciarki po plecach przeszły), ale zazwyczaj była to sytuacja tymczasowa.
Co do forum, to jest tam kilka wpisów dot. właśnie przepisywania się do T4. Bądź wpisywania, bo u nas niektórzy też nie znalezli siebie nigdzie

DoomHammer 2005-02-23 18:59:36

roxx mon :]

kubiku 2005-02-23 19:09:21

jednoosobowa grupa? z <em>pełnym</em> planem i wymiarem zajęć? w chwili gdy wydział szuka oszczędności i walczy o każdy grosz tworząc 18 osobowe grupy laboratoryjne, gdy dysponuje salami wyposażonymi w 12-15 stanowisk? kiedyś, za parę lat, skończę te studia i będę mógł się poszczycić dyplomem jednego z najbardziej abstrakcyjnego i awangardowego (bynajmniej nie w znaczeniu <q>przodujący</q>) wydziału politechnicznego :)

zdzichuBG 2005-02-24 00:48:24

Cytat z niedostępnej dla was strony forum:
Endrju: ,,Dnia szóstego Dziekan stworzył grupę czwartą i widział że to co stworzył było dobre ;)''
rotfl :)

Trochę roboty


Lubię takie rzeczy:
Przed:

$q = "SELECT id,nazwa,nadrzedna_id FROM lokalizacja ORDER BY nazwa ASC";

Po:

$q = "SELECT l1.id,l1.nazwa,l1.nadrzedna_id,l2.nazwa AS nadnazwa ";
$q.= "FROM lokalizacja AS l1, lokalizacja AS l2 ";
$q.= "WHERE l1.nadrzedna_id = l2.id OR l1.nadrzedna_id = 0 OR l1.nadrzedna_id IS NULL ";
$q.= "ORDER BY nadnazwa,l1.nazwa ASC";

Do tego jeszcze mała zmiana niżej:

while ($row = mysql_fetch_array($res)) {
$tab[$row['id']] = (is_numeric($row['nadrzedna_id']) &&
- $row['nadrzedna_id'] > 0 ? " - " : "").$row['nazwa'];
+ $row['nadrzedna_id'] > 0 ? "(".$row['nadnazwa'].") - " : "").$row['nazwa'];

Efekt (od strony użytkownika) jest o wiele lepszy, więcej widać, przejrzyściej, a co najważniejsze, to wciąż jeden SELECT :-]. SQL czasami rządzi.

Wspomnienie sesji


Student rano wstaje i mówi do siebie:
Mam autobus o siódmej piętnaście,
mam autobus o siódmej piętnaście,
mam autobus o siódmej piętnaście,
mam autobus o siódmej piętnaście,
k*rwa po cholerę się tego uczę na pamięć?