|
-----BEGIN GEEK CODE BLOCK----- Version: 3.1 GCS/L/M/O d-(--) s+:->+: a34 C++ UL+++>++++$ P++>+++@ L+++(++++) E---- W++ N++(+++) o? K? w---@$ O? M-- V? PS---(+++) PE++ Y+ PGP+ t 5? X++ R>+ tv b++(+++) DI+ D++ G++>+++ e++ h--->---- r+++ y+++ ------END GEEK CODE BLOCK------ |
Cóż poradzić: wersja Customer Preview ósmego Windows nie tylko zadaje kłam twierdzeniu, że co druga wersja to krap; ale na dodatek: uruchamia się równie szybko (jeśli nie szybciej) niż Ubuntu na wcale nie najszybszym U100, a usypia i budzi się bez denerwujących bugów. Niech no tylko jeszcze wyjdą sterowniki do starszych wersji intelowskich chipsetów graficznych i W8 stanie się ciekawą propozycją... o ile tylko cena nie okaże się zbyt wysoka jak na bootstrap do Firefoxa :)
Jest sobie boost (1.33.1), bierzemy czas z posix_time:microsec_clock, a program ANI RAZU nie wywołuje gettimeofday czy jakiegokolwiek podobnej funkcji. No to skąd bierze czas?!? Dla niedowiarków mam strace'a.
Zagadka w stylu: to nie powinno działać. W plikach konfiguracyjnych nie ma ustawionego routingu, router nie odpowiada na ICM Router Discovery, a mimo to routing (netstat -r) jest ustawiony. JAK? Gdzieś jeszcze domyślnie (oprócz /etc/defaultrouter) jest konfigurowane? in.rdisc odpytuje po DHCP? Ki czort?
Jaki sens ma pytanie DNS o adres "."? Tak, roota, tej (niewidocznej i domyślnie pomijanej) kropki, która stoi za .com. lub .pl. - o ile jeszcze można pomyśleć, że ktoś (haker, admin, program monitorujący) coś kombinuje (chociaż nie atak DDoS, bo to tego bardziej się nadaje pytanie o NS), to skąd się takie coś wzięło w firmowej, odizolowanej sieci? Rezultatem poszukiwań po omacku wnioski są następujące: linux (RHEL 6) bez ustawionej nazwy domeny, jeśli mu dodatkowo pominąć opcję "search" w resolv.conf, uparcie pyta się DNS-a o tą nieszczęsną kropkę... Czy autorzy resolvera nie przewidzieli takiej sytuacji i dlatego głupieje, czy też jest to sensowne działanie w bezsensownej (o tyle, o ile) konfiguracji?
Tak się nazywa sieć, z której uzależniony od sieci nerd pisze obecnie te słowa. Hasła nie podam, ale to zwykłe WEP, więc kto bardzo potrzebuje, ten znajdzie ;) Połączyć się mogłem dopiero wczoraj późną nocą, wcześniej kombinowałem długo i podejrzewałem już, że poczciwej Biedronce padła karta wifi. Niepotrzebnie: okazuje się, że sieć składa się z dwóch AP, z których jeden obsługuje bg a drugi tylko b, i OBA działają na jednym kanale... Na ile się orientuję to zupełnie niweluje sens ich istnienia, i w polu zasięgu obu z nich, gdy oba generują ruch, konkurencja jest taka, że (nienajlepszy przyznaję) sprzęt Biedronki leży i kwiczy. No ale teraz przyzwoici wczasowicze śpią :) Jak spotkam gospodarza postaram się coś zaradzić, ale jak znam życie nie ma pojęcia jak uzyskać dostęp do AP-ów, bo całość ustawił stryjecznego brata siostrzeniec, co się zna... Ale nawet jeśli nici z moich planów, to sposób na codzienną notkę (A. stara się blogować systematycznie) jest: wystarczy 1) zaczekać na ciszę w eterze 2) ustawić lapka na stoliku pod ścianą przeciwległego budynku, skąd widać tylko jeden AP. I gra muzyka, pingi chodzą, lekki wiaterek wieje, chmurki rozgania, urlop uratowany.
Takie coś znalazłem szukając aplikacji do inwentaryzacji pod Linuksa. #drogijoggerze -- aby to nie jest strzelanie z armaty do wróbla? Wróbel ma około 50 ludzi załogi, a cały potrzebny do ich pracy pierdzielnik już ciężko ogarnąć w tabelce arkuszy kalkulacyjnych. Czy nie ograniczając się do Linuksa, można znaleźć coś fajnego, niekoniecznie darmowego? Istotne jest, żeby miało dużo możliwości kategoryzacji, dostęp dla wielu użytkowników... najlepsze jednak coś obsługiwanego przez przeglądarkę. Ktokolwiek widział, ktokolwiek wie -- proszę o komentarze! PS. I przepraszam za spamowanie prywatą Techbloga, może jednak temat okaże się interesujący.
Wchodzę razu pewnego do domku, a od progu wita mnie smutna mina i "bo jak napisałam notkę i chciałam wysłać, to akurat się połączenie zerwało". No cóż: po pierwsze BEZ PANIKI, po drugie: już niestety po wcześniejszym kombinowaniu z przechodzeniem wprzód i wstecz (gdyby po prostu poczekać na wstanie modemu i zrobić "reload" to by FF powtórzył wysyłanie i po krzyku...) No to co można jeszcze zrobić z wciąż żywym Firefoksem (czy też dowolną inną przeglądarką)? Ano, można:
Niestety, po kolejnym kombinowaniu (najpierw z nouveau, twierdzą że obsługują "dual card" a figa z makiem, chyba że jakaś bleeding-edge najnowsza wersja albo opcja kompilacji) i przeproszeniu się z NVidiowym blobem znowu wychodzi, że jedyną sensownie działającą konfiguracją dwumonitorowej NVS 280 + czegoś (w roli czegoś akurat TDFX: wolałbym Matrox, ale jego obsługą już się chyba nikt nie przejmuje) jest: TwinView na 2 monitorach i drugi screen na trzecim: Xinerama nie działa, bo nie i już. A co do Matroxów (chodzi o Millenium II na PCI i G200 na AGP) to ściągłem sobie stare X11R6 i pewnie będę ostro kombinował, żeby ruszyło obok tych wszystkich halów, dbusów i całego tego cyrku, którym Linux obrósł od czasów, kiedy był miły i prosty. Ciężkie jest życie miłośnika staroci...
Xorg :2 -query jakis_serwer -logfile /tmp/X2.log i mozna sobie wszystko robic podczas instalacji RH6. Nie wykombinowalem tylko jak podmienic klawiature na polska, ale mniejsza o to, WWW da sie przegladac :).
Skubańcy postawili na opak. Zwykle jest tak, że narzędzia typu CLI są za free, a za klikalne GIU się dopłaca. Wiedzą, skubańcy, co tygrysy lubią najbardziej :) Cyt:
Z braku okularów do spawania, przykopconej szyby, ewentualnie szkła powiększającego, którym można by rzucić obraz Słońca na dowolną powierzchnię, byle nie łatwopalną, w pracy wykombinowali, że świetnie się nadaje zwykła, trzycalowa dyskietka :) Cytat: "przez pendrive'a byłoby ciężko...". A Słońce już ładnie napoczęte, maksimum za pół godziny.
Czasem brak zamordyzmu w świecie Linuksa odbija się czkawką... Kiedy lata temu zapoznawałem się z tym systemem, bardzo mi się spodobała filozofia przejęta z UNIX-ów, tzn: każdy robi swoje jak najlepiej, a co do niego nie należy, robi ktoś inny. Tak program pocztowy (MUA) nie wysyła poczty (lecz odpala sendmaila), nie filtruje przychodzącej poczty (od tego jest procmail), nie edytuje emaili (robi to edytor: vi, joe, emacs, co kto lubi), a edytor nie sprawdza pisowni: odpala do tego np. ispell. I jak w starym dowcipie: komu to przeszkadzało? Teraz pod gentoo mam zainstalowe: ispell, aspell, myspell... a Firefox i tak potrzebuje swojego własnego słownika, OpenOffice pewnie też będzie chciał własny... dobrze, że dyski teraz są pojemne i zmieszczą nawet i tuzin list polskich słówek.
Jak wie każdy kto instalował Gentoo, do zainstalowania Gentoo potrzebne jest... Gentoo. Tak przynajmniej twierdzi handbook, który na początek każe pobrać LiveCD, uruchomić Gentoo i jazda. Między wierszami jednak przeczytałem, że po skonfigurowaniu sieci, zamontowaniu partycji, rozpakowaniu stage3 rola systemu z CD kończy się po zrobieniu chroot. To po co komplikować sobie życie, jak już się ma działającego Auroksa? Tak więc w tej chwili emerge przetrawia siedemdziesiątą entą paczkę worlda a ja sobie spokojnie robię swoje :) A co najważniejsze, Ukochana nie została pozbawiona na cały dzień Naszej Klasy i Jabbera.
... na tyle duży, żeby klienci ciągle do nas dzwonili z pytaniem, czemu maile nie dochodzą ma kilka ciekawych cech:
Pamiętajcie drodzy admini duzi i mali: nie komplikujcie nigdy! Zamiast dzikich harców z tabelą mangle, lepiej posłużyć się prostą, ładną regułą:
# ip rule add from X.X.X.0/24 table 1A następnie ustawić tablicę routingu #1 na
# ip route list table 1 Y.Y.Y.80/30 dev eth3 scope link X.X.X.0/24 dev eth1 scope link default via Y.Y.Y.81 dev eth3I od tej pory pakiety X.X.X.0 elegancko sobie chodzą przez eth3 zamiast domyślnego eth0, w logach kończy się najazd Marsjan, chóry anielskie śpiewają i w ogóle :) Szkoda, że nie pomyślałem wcześniej, żeby pogrzebać po opcjach ip rule, nie siedziałbym nad tym dwóch dni...
Internet is brutal and full of zasadzkas. Jedną nastawili na nas spamerzy z Tajwanu. Z uporem maniaka zaczęli od 5 rano testować nasz serwer na okoliczność "open proxy": obciążenie wrastało tak, że skrypt sprawdzający działanie Apacza co minuta stwierdzał zgon i ordynował kill -15 poparty kill -9. Klienci rzecz jasna byli poirytowani nieźle... Efekt być może by nie wystąpił tak intensywnie, gdyby nie to, że nasz główny serwer ma przypisane wiele numerów IP i każdy z nich było atakowany osobno. Kiedy już się udało znaleźć źródło problemu (a trochę długo to trwało: w nocy robiłem tzw "prace konserwacyjne" i najpierw tu szukaliśmy przyczyny), dalsze działanie było proste: iptables -j DROP, i mail do kontaktu technicznego. I tu największa niespodzianka: każdy email był odrzucany z informacją, że niby nasz IP jest wpisany do RBL-a... Sprawdziłem z kilku innych adresów: w ten sposób było odrzucane każde połączenie. Może ktoś ma pomysł, z której strony się dobrać do skośnookich szkodników?
Problem: przestały dochodzić faksy. Mój poprzednik zmajstrował program, który je zapisuje jako PDF-y do katalogu udostępnianego przez Sambę, a tu nagle zonk: nie dochodzą. Zaglądam, a tam wisi 5 smętnych drzewek procesów g32pbm, pbm2ps i gs, które czekają nie wiadomo na co. I tu do akcji wkracza strace: wykryłem, że pbm2ps smętnie wisi na write(2, "invalid code..."). Zakładając błędnie, że to "invalid code" jest problemem próbowałem robotę skryptu odpalić z konsoli, żeby sprawdzić co jest grane. I tu jeszcze większa niespodzianka: wszystko działa... Na źródło problemu naprowadziła mnie (i to nie od razu) dopiero komenda echo Alamakota > /dev/console (bo jak można było sprawdzić w /proc, właśnie tam był skierowany deskryptor 2, czyli standardowe wyjście błędów nieszczęsnego pbm2ps). Ubicie wszystkiego, co pokazał fuser /dev/console nie pomogło... Doszło do rzeczy rzadko spotykanej w Linuksach: konieczny restart (przy uptime: 415 dni :). Niestety: nie wiem, jak się restartuje "zawieszone" urządzenia.
Zwykle webmasterzy lubią zainteresowanie wyszukiwarek swoją stroną. Nam jednak spowodowało to niezły zgryz... Przerzuciliśmy stronę na MediaWiki, a tam każde wywołanie to multum parsowanych plików PHP i parę odwołań do MySQL-a. Dodatkowo, zamiast sensownych odwołań mieliśmy wyłącznie... skanowanie "starej" zawartości, gdzie wszystkie parametry przekazywane do PHP były ignorowane a robot kierowany na stronę główną. GoogleBot ma rozszerzoną składnię robots.txt, ale ledwo pierwszy inny szperacz się trafił, zablokował nam site'a (przy load>30 nie można się było nawet zalogować przez ssh). Pomógł taki oto kawałek na początku index.php:
if (!empty($_GET["id"])) {
sleep(5);
header("HTTP/1.0 410 Gone");
print "Spadaj na HTTP numer 410 (Gone)";
exit;
}
Oczywiście prawdziwy tekst jest inny, bo oprócz robotów mogą się tam wklikać żywi użytkownicy.
Kto to jest guru? Użytkownik, który przeczytał instrukcję - słynny hakerski dowcip/zagadka. Od niedawna stałem się guru meblarskim :) A stało się to za sprawą trzech mebli Black-Red-White z kolekcji "Indiana". Przybyły w pachnących fabryką 10 drewnianych kartonach i 2 styropianowych ramach na szkło. Składały się z około 1000 części, ale dla hake... użytkownika z instrukcją nie ma nic niemożliwego. Dziś mam zakwasy i nadwyrężone ścięgna - rzecz normalna u faceta oderwanego od biurka do ciężkiej, fizycznej roboty... Ale to mała cena za poczucie dumy i uśmiech na twarzy żony :) (Za wszystko inne zapłacisz kartą mBanku :)
Składaliśmy po kolei:
Tak... te cyborgi programowane przez Diksa rzadko kiedy wracają bez nagrody z konkursów. Tyle że z przeciętnymi programistami mają niewiele wspólnego. Konkursy sie wygrywa smykałką do algorytmów i umiejętnością zaimplementowania struktury zrównoważonego drzewa, kolejki priorytetowej O(1) i tuzina innych cudów w kwadrans. Ich zwycięzcy albo zostaną cenionymi projektantami, albo ich pochłonie biznesowa rutyna, kiedy trzeba odwalać kichę, bo klient sobie tego życzy i to na wczoraj. Jedno jest pewne: nigdy nie trafią do mnie na rozmowę kwalifikacyjną. Do mnie przychodzą tacy, którzy do CV wpisują znajomość C++ "bardzo dobrą", a nie potrafią prostego wzorca klasy wymyślić.
Czy to jest intuicyjny sposób na zrobienie wycinka z referencji do hasza?
print @$href{ala, ma, kota};
Udało mi się go znaleźć po mniej więcej kwadransie kombinowania ze strzałkami i znaczkami $@%...