Szyfrowanie z GnuPG

3 stycznia 2010, godzina 23:05

Serdecznie zapraszam na wykład, który będę miał przyjemność poprowadzić:

plakat

Jest to wykład z cyklu Open Academy.

EDIT:

Wykład się odbył, slajdy których użyłem można pobrać stąd.

Wąchaj i wstrzykuj — niskopoziomowe programowanie sieciowe w Linuksie

7 listopada 2009, godzina 22:44

Od dzisiaj można ten artykuł przeczytać online:

http://chomzee.ethernet.pl/wiw.pdf

Ściąganie muzyki z wrzuty, odsłona druga :)

18 czerwca 2009, godzina 14:31

Poprawiłem skrypt wrzutaget, uwzględniając zmiany wprowadzone całkiem niedawno temu przez administratorów serwisu wrzuta.pl. Można dzięki niemu ściągać pliki w formacie mp3 z owego portalu.

Stworzyłem również stronę wrzutagetcgi, dzięki której można wykonywać tę czynność prosto z przeglądarki WWW, niezależnie od systemu operacyjnego.

Mam nadzieję, że moje narzędzia okażą się komuś pomocne.

Sony Ericsson K750i + GNU/Linux (Gentoo)

16 maja 2009, godzina 13:11

phonePrzygotowanie Gentoo do współpracy z SE K750i nie jest trudne, jednak szukanie informacji na ten temat w sieci może być czasochłonne, postaram się więc umieścić parę porad dotyczących wymiany plików, udostępniania internetu przez GPRS, odbierania i wysyłania SMS oraz zdalnego sterowania.

Poniższa konfiguracja dotyczy SE K750i, Gentoo Linux i operatora sieci komórkowej Orange. Jednak prawdopodobnie konfiguracja podobnego modelu telefonu w innej sieci komórkowej i innej dystrybucji Linuksa będzie różniła się o mały epsilon.

Wymiana plików przez kabel USB

Po podłączeniu telefonu do komputera przez kabel USB, jądro Linuksa automatycznie rozpoznaje urządzenie, które można podmontować w taki sam sposób, jak byśmy podłączali do komputera pendrive. Uzyskujemy w ten sposób dostęp do systemu plików podłączonej karty pamięci. Niestety, nie udało mi się znaleźć informacji, jak w podobny sposób podmontować pamięć telefonu.

Udostępnianie internetu przez GPRS

Po podłączeniu kabla USB powinien zostać utworzony plik /dev/ttyACM0. Jeśli taki plik nie istnieje, należy wkompilować do jądra Linuksa obsługę ACM (CONFIG_USB_ACM).

Przyda nam się pakiet ppp, jeśli go nie mamy, instalujemy go oczywiście poleceniem:

# emerge ppp

Następnie tworzymy dowiązanie net.ppp0 w katalogu /etc/init.d:

# cd /etc/init.d
# ln -s net.lo net.ppp0

Edytujemy plik /etc/conf.d/net, dopisując coś na kształt:

config_ppp0=( "ppp" )
link_ppp0="/dev/ttyACM0"
pppd_ppp0=(
'connect "/usr/sbin/chat -v -f /etc/chatscripts/orange-gprs"'
'disconnect "/usr/sbin/chat -v -f /etc/chatscripts/orange-gprs-off"'
'/dev/ttyACM0'
'115200'
'crtscts'
'local'
'noipdefault'
'usepeerdns'
'defaultroute'
'default-asyncmap'
'noccp'
'novj'
'nobsdcomp'
'novjccomp'
'persist'
'noauth'
)

Następnie tworzymy plik /etc/chatscripts/orange-gprs zawierający następującą treść:

TIMEOUT 10
ECHO ON
ABORT "NO CARRIER"
ABORT "NO DIALTONE"
ABORT "ERROR"
ABORT "NO ANSWER"
ABORT "BUSY"
'' 'rATZ'
OK AT+CGDCONT=1,"IP","internet"
OK ATD*99#
CONNECT ``

Oraz plik /etc/chatscripts/orange-gprs-off:

ABORT "NO CARRIER"
ABORT "NO DIALTONE"
ABORT "ERROR"
ABORT "NO ANSWER"
ABORT "BUSY"
"" "K"
"" "+++ATH"

Potrzebujemy jeszcze nazwę użytkownika i hasło umieścić w pliku /etc/ppp/chap-secrets:

"internet" * "internet"

Pozostaje nam tylko uruchomić skrypt, by uzyskać połączenie:

# /etc/init.d/net.ppp0 start

Przy okazji warto na bieżąco śledzić systemowe logi, by sprawdzić, czy wszystko toczy się po naszej myśli. Połączenie przerywamy oczywiście komendą:

# /etc/init.d/net.ppp0 stop

Dostęp do książki adresowej i wiadomości SMS

Do synchronizacji adresów i SMSów możemy użyć graficznego programu kmobiletools, który jest banalnie prosty w obsłudze. Należy się jedynie upewnić, że konfigurując urządzenie podaliśmy odpowiednią ścieżkę do urządzenia (/dev/ttyACM0).

# emerge kmobiletools

Bluetooth

Do połączenia komputera z telefonem przez Bluetooth użyłem adaptera D-Link DBT-122. Należy się upewnić, że w jądrze Linuksa mamy wkompilowane wszystko co jest konieczne (do obsługi wspomnianego adaptera używam modułu btusb). Należy również przygotować Gentoo do obsługi standardu Bluetooth. Dodajemy flagi “bluetooth” i “old-daemons” do USE i instalujemy następujące pakiety:

# emerge bluez-libs bluez-utils bluez-firmware obexftp

Po włożeniu adaptera do slotu USB automatycznie powinien uruchomić się skrypt /etc/init.d/bluetooth. Aby uzyskać adres sprzętowy telefonu, należy (oczywiście przy BT włączonym w telefonie) wykonać skanowanie poleceniem:

# hcitool scan

Mając ten adres możemy użyć na przykład programu obexftp-frontend do bezprzewodowej wymiany plików, który jest de facto nakładką graficzną programu obexftp napisaną w Javie.

Aby zestawić połączenie przez GPRS za pomocą BT zamiast kabla USB, należy nawiązać połączenie. Upewniamy się, że w /etc/conf.d/bluetooth widnieją następujące opcje:

RFCOMM_ENABLE=false
RFCOMM_CONFIG="/etc/bluetooth/rfcomm.conf"
HCID_ENABLE=true

Po czym do pliku konfiguracyjnego /etc/bluetooth/rfcomm.conf dopisujemy:

rfcomm0 {
        bind yes;
        device 00:XX:XX:XX:XX:XX; # adres sprzetowy telefonu
        channel 1;
}

Teraz poleceniem `rfcomm -S connect 0` nawiązujemy połączenie z telefonem. Jednak po co robić to ręcznie, trzymajmy się filozofii Gentoo. Tworzymy więc plik /etc/init.d/phone:

#!/sbin/runscript
depend() {
        need bluetooth
}

start() {
        ebegin "Starting phone"
        start-stop-daemon --start --quiet -b -n rfcomm \
                --startas /usr/bin/rfcomm -- -S connect 0
        eend $?
}

stop() {
        ebegin "Shutting down phone"
        start-stop-daemon --stop --quiet -b -n rfcomm
        eend $?
}

Jeśli wszystko pójdzie po naszej myśli, po wydaniu polecenia `/etc/init.d/phone start` zostanie utworzony plik /etc/rfcomm0. Teraz możemy odwoływać się do niego identycznie jak do /etc/ttyACM0. Zamieniamy więc wszystkie ttyACM0 na rfcomm0 w pliku /etc/conf.d/net.

Zdalne sterowanie przez Bluetooth odbywa się po wydaniu polecenia (wprowadzając poprawny adres sprzętowy telefonu):

# hidd --connect 00:??:??:??:??:??

Dostęp do książki adresowej i SMS odbywa się analogicznie jak w przypadku połączenia przez kabel, należy jedynie w oknie konfiguracyjnym kmobiletools zmienić adres urządzenia z /dev/ttyACM0 na /dev/rfcomm0.

Ogólnopolski Tureniej Tańca Towarzyskiego Leszno 2009

22 marca 2009, godzina 23:01

dance
Serdecznie zapraszam na “12 Ogólnopolski Tureniej Tańca Towarzyskiego Leszno 2009″, który odbędzie się w hali Trapez 29 marca 2009 roku. Organizatorem turnieju jest oczywiście klub taneczny, w którym stawiałem swoje pierwsze kroki na parkiecie (aMOK Leszno). Turniej podzielony jest na trzy bloki, które zaczynają się kolejno o 10:00, 13:00 i 17:30.

Więcej informacji można znaleźć na ulotce dostępnej w serwisie taniec.pl.

Tak więc do zobaczenia na turnieju! :)

Sieci bezprzewodowe — prezentacja

19 marca 2009, godzina 17:38

Z okazji laboratorio-seminarium z kursu o przyjemnej nazwie “Anatomia PC”, zmuszony byłem wygłosić prezentację. Była to dla mnie oczywiście sama przyjemność, zwłaszcza, że mówiłem o sieciach bezprzewodowych. Z uwagi na charakter kursu, starałem się podejść do tematu jak najbardziej sprzętowo, nie uniknąłem jednak niezwykle ważnej i ciekawej kwestii jaką jest bezpieczeństwo sieci bezprzewodowych.

Slajdy z mojej prezentacji można oczywiście swobodnie ściągnąć z sieci:

http://chomzee.ethernet.pl/studia/anatomia_pc/sieci_bezprzewodowe.pdf

HP Pavilion dv6326eu + gentoo Linux

24 lutego 2009, godzina 20:27

Półtora roku temu kupiłem laptopa. W tym czasie zepsuł się już dwa razy — za każdym razem winna była płyta główna.

Ogromnie się rozczarowałem, gdy odebrałem swojego HP Paviliona dv6326eu z serwisu. Panowie naprawiający mój komputer zainstalowali na nim windowsa, niszcząc mój piękny system operacyjny i wszystkie dane znajdujące się na moich partycjach (backup to dobra rzecz).

Miałem takie dziwne przeczucie, więc postarałem się dowiedzieć, czy byłaby możliwość wysłania laptopa bez HDD. Za pierwszym razem usłyszałem “nie będzie problemu, proszę poczekać, jutro zadzwonią do pana ludzie z serwisu i udzielą panu więcej informacji”. Otrzymałem następnie informację od pani, że “technicy nie zgadzają się na serwisowanie urządzenia bez dysku twardego”. Tak więc nie polecam serwisu HP, chyba że jesteś przygotowany na utratę danych.

Z tego powodu poświęciłem (zmarnowałem) kilka dni, żeby od nowa postawić gentoo. Umieszczam kila informacji jak skonfigurować poszczególne elementy do pracy z Linuksem x86_64. Mam nadzieję, że komuś okażą się one przydatne.

Karta graficzna:

# lspci | grep Geforce
00:05.0 VGA compatible controller: nVidia Corporation C51 [Geforce 6150 Go] (rev a2)

Sterownik od Nvidii: NVIDIA-Linux-x86_64-96.43.09-pkg2.run. Działają wyśmienicie.

Karta dźwiękowa:

# lspci | grep Audio
00:10.1 Audio device: nVidia Corporation MCP51 High Definition Audio (rev a2)

Sterownik — hda_intel, w jądrze Linuksa.

Karta sieciowa LAN:

# lspci | grep Ethernet
00:14.0 Bridge: nVidia Corporation MCP51 Ethernet Controller (rev a3)

W jądrze Linuksa.

Karta sieciowa WiFi:

# lspci | grep Broadcom
03:00.0 Network controller: Broadcom Corporation BCM4311 802.11b/g WLAN (rev 01)

Działa poprawnie z ndiswrapper. Użyte sterowniki: ftp://ftp.hp.com/pub/softpaq/sp33001-33500/sp33008.exe, plik bcmwl5.inf. Do wstrzykiwania pakietów może kiedy indziej pobawię się modułem b43, który znajduje się w jądrze Linuksa. Jeśli chcesz używać ndiswrapper, upewnij się, że moduły b43 oraz ssb nie są ani wkompilowane ani załadowane.

Kamera internetowa:

# lsusb | grep Mic
Bus 001 Device 002: ID 0c45:62c0 Microdia

Sterownik uvcvideo z jądra Linuksa. Działa wyśmienicie w programie Skype. Polecam również program guvcview.

Czytnik kart SD:

# lspci | grep SD
07:05.1 SD Host controller: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 22)

Działa dobrze po wydaniu polecenia:

# setpci -s 07:05.1 4c.b=0x02

Oczywiście trzeba odpowiednie rzeczy w kernelu mieć (wszystko dołączone w standardowym Linuksie).

FireWire:
Nie używam.

PC Card:
Nie używam.

Czujniki temperatury:
Działają — po jednym na każdym rdzeniu procesora, jeden na karcie graficznej i jeden w tzw. “thermal zone” (cokolwiek to jest).

Matryca:
Rozjaśnianie i przyciemnianie działa “out of box” klawiszami fn+f7,f8, potrzeba jedynie ACPI_VIDEO w kernelu.

Touchpad:
Sterownik synaptics w xorg.

Dodatkowe klawisze dotykowe:
Za pomocą xmodmap przypisujemy klawiszom dotykowym specjalne znaczenie. Przydaje się program xev, który wykrywa kod każdego z klawiszy.

CD-ROM/DVD:
Działa: czyta i nagrywa. Lightscribe nie testowałem.

Pilot:
Działa “out of box”.

Wypadałoby również pochwalić się screenshotami :).

Ściąganie muzyki z serwisu wrzuta.pl

5 lutego 2009, godzina 23:59

Przeglądając serwis wrzuta.pl zauważyłem mnóstwo komentarzy typu “prześlij proszę ten utwór na adres takitamadres@wp.pl”. Byłoby o wiele prościej, gdyby tacy internauci sami potrafili sobie ściągnąć wybrany utwór z wrzuty. No bo to przecież jest teoretycznie możliwe — skoro flashowy odtwarzacz na *Twoim* komputerze odgrywa muzykę, to musiał ją wcześniej skądś ściągnąć, prawda? Problem w tym, że ukrywa przed użytkownikiem możliwość zapisu pliku MP3 na dysk…

Rozpatrzmy taki oto przykład:

http://djyas.wrzuta.pl/audio/6hnvDcoBjU/lambada

Okazuje się, że interesować nas powinien tylko ten “śmieszny” ciąg literek w adresie do utworu: 6hnvDcoBjU. Plik dźwiękowy bowiem znajduje się pod adresem:

http://www.wrzuta.pl/aud/file/6hnvDcoBjU

Po wpisaniu takiego adresu, przeglądarka sama ściąga plik. Jedyne co musimy potem zrobić, to zmienić nazwę (dodać końcówkę “.mp3″).

W taki sposób każdy internauta może sobie ściągnąć na dysk twardy utwór z wrzuty. Jeśli natomiast używamy systemu GNU/Linux albo jakiegoś innego na którym działa perl i wget, możemy ściągnąć mój skromny skrypt, który automatyzuje całą pracę.

Powrót do tańca!

26 stycznia 2009, godzina 19:08

dance
Wpis ten znacząco różni się tematyką od pozostałych, ale takie urozmaicenie na pewno nie zaszkodzi. 20 stycznia 2009 roku po ponad 3 letniej przerwie wykonałem pokaz taneczny. Od października bowiem wznowiłem swoją karierę taneczną w Studenckim Klubie Tańca Towarzyskiego Iskra PWr Wrocław.

Dla mojej partnerki, Agnieszki, był to pierwszy pokaz tańca towarzyskiego w ogóle. :) Bardzo się cieszę, że udało się nagrać chociaż połowę naszego mini pokazu — cha chę (tańczyliśmy również walca angielskiego). Poniżej znajduje się link do filmiku:

20 stycznia 2009 cha-cha-cha (9.5 M) (mirror 1).

Gdy powyższy link nie zadziała, spróbuj ten:

20 stycznia 2009 cha-cha-cha (9.5 M) (mirror 2).

Tak wyglądają nasze postępy po jakiś 4 miesiącach treningów. Miłego oglądania! :)

IceWar — reaktywacja

31 grudnia 2008, godzina 12:39

W najciemniejszych zakamarkach znalazłem stronę www sieciowej gry IceWar, którą w 2005 napisałem wraz z maxestem, przy udziale całego zespołu IW-Team.

To był nasza pierwsza “poważna” gra, pisaliśmy ją jeszcze nie mając żadnego doświadczenia. Stąd wynikają liczne błędy i niedorobienia. :)

Postanowiłem ją wskrzesić, tak więc strona jest znów dostępna w sieci.

Download na razie nie działa, ale postaram się to naprawić jak najprędzej.