Stare gierki - Linux Magazine

Transkrypt

Stare gierki - Linux Magazine
Ubuntu 10.04.1, Kubuntu 10.04.1, Wirtualizacja
Ubuntu Netbook Edition 10.04.1 Praktyczne
Free
Wersje instalacyjne i live!
Bonus: najnowszy Mint Linux Debian Edition!
rozwiązania
dla środowisk wirtualnych
PA Ź D Z I E R N I K 2 0 1 0 – N U M E R 1 0 ( 8 0 )
C E N A : 2 4 , 9 0 z ł ( 0 % VAT )
Wirtualizacja
Eleganckie uwierzytelnianie
Integracja DLAP z VirtualBoksem
9 najlepszych
wtyczek
dla Chrome
Community Edition:
free and open
pobierz i podaj dalej
Remus
Odporność na
błędy w Xen 4
Zaglądamy
do dysków
wirtualnych
za pomocą
libguestfs
Naprawiamy
PDF-y
Vala i Genie
z wiersza poleceń
Łatwe kodowanie bez spadku wydajności
Stare gierki
Odkrywamy fantastyczny świat Commodore 64
Policykit
Lepsze zarządzanie
uprawnieniami
Comix
Wspaniała zabawa dla
dorosłych
w w w . l i n u x - MAGAZIN E . P L
Sygnatury
Jak się bronić przed
złośliwym kodem?
Numer 10 (80) Październik 2010 24,90 zł
ISSN 1732-1263 INDEX 384100
Witamy
Doghouse: Powrót do przeszłości
Stare, ale jare
Maddog przypomina o programach starej daty, które na dzisiejszych nowoczesnych systemach wciąż mają się świetnie. Jon „maddog” Hall
I
stnieje kilka podziałów, które zawsze wywołują żywe emocje
w świecie FOSS:
• Wolne oprogramowanie vs. otwarty kod źródłowy
• Gnome vs. KDE
• BSD vs. Linux
• MySQL vs. PostgreSQL
ale jedna taka rywalizacja trwa już od przynajmniej trzydziestu
lat:
• Emacs vs. Vi
Uważam, że dyskusja ta zakończyła się dawno temu. Tak, oba
programy są doskonałymi edytorami tekstu i zawsze możemy
wybrać ten, który nam bardziej odpowiada. Ale kiedy na liście
dyskusyjnej SAGE (grupie dla administratorów systemów poświęconej Useniksowi) pojawił się następujący e-mail:
Temat: [SAGE] EMACS jest do bani
Skoro już jesteśmy przy urządzeniach równoważących obciążenie i czasie UTC, chcę powiedzieć, że vi rządzi, a EMACS jest do
bani. To wszystko.
postanowiłem zagłębić się w wątek (celowo pomijam autora,
by oszczędzić mu wstydu). Co ciekawe, rozmowa nie przerodziła
się w typową wojnę zwolenników Emacsa i Vi / Vima. Starzy wyjadacze SAGE, którzy zajmują się komputerami od bardzo dawna,
zaczęli zamiast tego wspominać wszystkie używane na przestrzeni lat edytory tekstu, przywołując ciepłe uczucia, jakie żywili do każdego z nich.
Choć pierwszym edytorem wierszowym, z którego korzystałem pod Uniksem, był ed(1), to nie od niego zaczynałem. Zaszczyt
ten przypadł w udziale edytorowi działającemu na PDP-8. Cztery
tysiące dwunastobitowych słów pamięci tego urządzenia musiało pomieścić nie tylko aplikację, ale też wszystkie nasze dane,
pierwszy edytor tekstu był więc z natury rzeczy bardzo, bardzo
prosty. Kolejną przyczyną jego prostoty był fakt, że większość
użytkowników korzystała z bardzo wolnych (pięć znaków na sekundę) terminali opartych na papierze (na przykład ASR-33),
a dla studenta papier był drogi. Ze względu na małą szybkość
i duże koszty, edytor nie drukował niczego, dopóki nie wydaliśmy
mu polecenia. Trzeba więc było pamiętać, gdzie znajdujemy się
w pliku, i drukować tylko raz na jakiś czas, by upewnić się, że rzeczywiście jesteśmy tam, gdzie myślimy.
Członkowie listy dyskusyjnej SAGE wymienili wiele edytorów
tekstu: joe, nano, xedit (z makrojęzykiem REXX), elvis, stevie,
EDIT/EDT, EDIT/TPU, EVE/TPU i inne. Wspomniałem wtedy absolutny hit: TECO.
Potem rozmowa zeszła z tematu i ludzie zaczęli mówić o tym,
że właściwie nie używają edytorów tekstu, ale tworzą pliki za pomocą polecenia:
www.linux-magazine.PL
cat > nazwapliku.txt
Inni mówili (półserio), że do łatania jądra wykorzystują:
cat >/vmlinux
Czasem brak jest jakiegokolwiek edytora tekstu, a system nie
chce działać bez konkretnego pliku, zwykle konfiguracyjnego.
Jeśli wiemy, co taki plik powinien zawierać, możemy stworzyć go
przy pomocy polecenia cat(1). I z tego pieca chleb jadłem.
Jednak do napisania niniejszego artykułu nie skłoniły mnie
wyłącznie wspomnienia starych edytorów. Zacząłem rozmyślać
nad tym, od jak dawna niektóre z nich istnieją i jak przekształciły
się w coś, co w epoce dzisiejszych nowoczesnych komputerów
wciąż jest przydatne. Wieloletnia wymiana pomysłów pomiędzy
użytkownikami przyczyniła się do ich ulepszenia.
TeX, stworzony w 1978 roku system składu drukarskiego, istnieje po dziś dzień – obecnie w wersji 3.x. Powstało też dla niego
wiele nakładek (między innymi LaTeX, KbibTeX i LyX), które ułatwiają obsługę, zarazem wydłużając życie i użyteczność programu. TeX wciąż uważany jest za pierwszej klasy program do
składania książek, szczególnie o tematyce technicznej (na przykład matematycznych).
Nawet w świecie cyfrowych multimediów nadal wykorzystuje
się wręcz archaiczne metody projektowania. Większość pracy
wykonują często programy wiersza poleceń, podczas gdy GUI
prowadzi użytkownika przez proces wyboru właściwych argumentów dla danej komendy.
Kolejnym dobrym przykładem jest nmh(1)
– nowy klient poczty MH. mh(1) był pakietem programów wiersza poleceń implementujących system pocztowy Rand MH.
Używałem go przez wiele lat, czytając pocztę z wiersza poleceń, po czym przerzuciłem się na xmh, graficzną nakładkę dla
tego zestawu poleceń. Xmh zaczął korzystać z Motifa i przyjął nazwę
mxmh, którą z kolei zmieniono na
exmh w momencie wprowadzenia
MIME i kilku innych „nowoczesnych” dodatków. mh-e umożliwiło mh współpracę z Emacsem, jak prawie wszystko
inne na świecie.
Uwielbiam ten aspekt
FOSS – funkcje jednych
programów trafiają do
innych, przedłużając
życie wielu doskonałych narzędzi. n n n
NUMER 80 PAŹDZIERNIK 2010
3
LINUX MAGAZINE
Spis treści
Linux Magazine jest miesięcznikiem specjalistycznym wydawanym we
współpracy z Linux New Media AG, Monachium, Niemcy.
Wydawca Linux New Media Polska sp. z o.o.
Redaktor Naczelny
Artur Skura, [email protected]
Programowanie i aplikacje:
Oliver Frommel, [email protected]
Nowości i raporty:
Ulrich Bantle, [email protected]
Korespondenci i współpracownicy
Zack Brown, Patricia Jung, James Pyles,
Uli Bantle, Andreas Bohle, Jens-Christoph Brendel,
Hans-Georg Eßer, Markus Feilner, Oliver Frommel,
Marcel Hilzinger, Mathias Huber, Anika Kehrer,
Kristian Kißling, Jan Kleinert, Peter Kreußel,
Thomas Leichten stern, Jörg Luther, Nils Magnus
Sekretarz redakcji
Joanna Romaniuk, [email protected]
Skład tekstu i przygotowanie poligraficzne
Viktoria Nikołowa, [email protected]
Wirtualizacja
W tym miesiącu poruszamy różne tematy związane
z wirtualizacją pod Linuksem. Pokazujemy, jak
skonfigurować potężny mechanizm uwierzytelniania pod
Linuksem, jak zarządzać wielogigabajtowymi obrazami
dysków wirtualnych i jak uzyskać odporność na błędy
w Xenie 4 dzięki Remusowi.
10
VirtualBox i LDAP
Projekt okładki
Pinball, [email protected]
Reklama
www.linux-magazine.pl/advertise
[email protected]
tel.: 0691 440 903
Miedzynarodowa
Hubert Wiest, [email protected]
tel.: +852 633 30 382 (Hong Kong)
Corporate Management (Linux New Media AG)
Hermann Plank, [email protected],
Brian Osborn, [email protected]
Prenumerata
Paweł Samselski, [email protected]
[email protected]
Cena prenumeraty
(12 numerów w roku zawierających
CD-ROM lub DVD):
Dla osób prywatnych roczna 190 zł
półroczna 110 zł
dwuletnia 320 zł
Dla firm roczna 210 zł
półroczna 120 zł
dwuletnia 340 zł
Prenumerata zagraniczna: roczna 310 zł
półroczna 160 zł
Zamówienia i obsługa prenumeraty:
tel. +48 22 742 14 55
faks +48 22 742 14 56
[email protected]
Linux Magazine
ul. Mangalia 4, 02-758 Warszawa
www.linux-magazine.pl, [email protected]
tel./fax +48 22 642 70 05
Wydawca dokłada wszelkich starań, aby publikowane w piśmie
i na towarzyszących mu nośnikach informacje i oprogramowanie były
poprawne i przydatne, jednakże Wydawca nie ponosi odpowiedzialności
za efekty wykorzystania ich, w tym nie gwarantuje poprawnego działania
programów.
Zawartość nosników CD-ROM i DVD jest sprawdzana oprogramowaniem
antywirusowym przed rozpoczęciem procesu produkcji. Fizyczne uszkodzenia
nośników należy zgłaszac do działu prenumeraty.
Żaden z materiałów opublikowanych w Linux Magazine nie może być
powielany w jakiejkolwiek formie bez zgody Wydawcy. Włascicielem znaku
towarowego Linux jest Linus Torvalds.
ISSN 1732-1263; Nakład 10000 egz.
Projekt Vrdp-ldap
udostępnia uwierzytelnianie
oparte na LDAP w VirtualBoksie.
14
Libguestfs
Zarządzanie dyskami
maszyn wirtualnych nigdy nie
było tak proste.
20
błędy
Wirtualizacja
z odpornością na
Pokonany brat Romulusa,
Remus, powraca, udostępniając
odporność na błędy maszynom
wirtualnym Xena.
6 Jądro
Wieści z kernela.
Druk:
ArtDruk - Zakład Poligraficzny
Kobyłka
www.artdruk.com
tel. +48 604 979 357
4
PAŹDZIERNIK 2010 NUMER 80
www.linux-magazine.pl
W NUMERZE
PAŹDZIERNIK 2010
W NUMERZE
24
14
Libguestfs
Stare gierki
Używamy potężnego
zestawu narzędzi do
zarządzania obrazami
maszyn wirtualnych.
Powraca moda
na kultowe gry
z czasów wczesnego
dzieciństwa.
49
Vala i Genie
Kto powiedział, że
łatwość programowania
musi łączyć się z niską
wydajnością kodu?
KNOW-HOW
24 Stare gierki
28 PolicyKit
36 Postgres Plus
38 Sourcefabric
Rozbudowana witryna z rozgłośnią
internetową.
42 Lekcje bezpieczeństwa:
Sygnatury
Sprawdzanie sygnatur pod
Linuksem.
44 Charly: Lug Camp
2010
Tym razem Charly
przedstawia złoto,
Pythona i piwo.
45 Pytania
i podpowiedzi
Alternatywa na rynku baz klasy
enterprise.
Twórca Knoppiksa KLaus
Knopper odpowiada na
pytania Czytelników.
49 Vala i Genie
Dwa rewolucyjne języki
łączą w sobie nowoczesną
składnię z niezwykłą
wydajnością.
54 Wiersz poleceń
Narzędzia do obróbki plików PDF.
Wsadowe przetwarzanie obrazów za
pomocą GUI.
60 Comix
62 Worskpace
Najlepsze wtyczki dla Chrome.
66 Enna
Wygodne centrum multimedialne oparte na
GeeXboksie.
70 RedNotebook
Wszystko w jednym miejscu – czyż to nie
piękne?
74 Xmonad
Kafelkowy menadżer okien może
okazać się niezastąpiony w pewnych
zastosowaniach.
Społeczność
76 EUPL
European Union Public License – nowa
wolna licencja Unii Europejskiej.
78 Projekty
Crabgrass i Clipperz.
Strona A:
• Ubuntu 10.04.1 wersja
instalacyjna
• Ubuntu 10.04.1 wersja
uruchamiana z płyty
• Kubuntu 10.04.1 wersja
instalacyjna
• Kubuntu 10.04.1 wersja
uruchamiana z płyty
www.linux-magazine.pl
LinuxUser
Nowoczesny czytnik komiksów.
Własne profile dostępu dają
administratorom pełną kontrolę
nad uprawnieniami poszczególnych
użytkowników.
Przyglądamy się wielofunkcyjnemu
czytnikowi e-booków z Linuksem na
pokładzie.
Oszczędzamy papier,
ale nie przyjemność
z czytania komiksów.
58 Converseen
Powrót do przeszłości: Commodore,
Atari i inne magiczne komputery
czekają na ponowne odkrycie.
34 Onyx Boox 60
60
Comix
• Ubuntu Netbook Edition 10.04.1
wersja instalacyjna
• Ubuntu Netbook Edition 10.04.1
wersja uruchamiana z płyty
Strona B:
• Linux Mint Debian Edition
NUMER 80 PAŹDZIERNIK 2010
5
NOWOŚCI
Jądro
Najświeższe wieści, poglądy,
różnice zdań i ścieżki rozwoju w społeczności jądra
• Z jądra • Z jądra • Z jądra • Z jądra
Linuksa. Zack Brown
Usprawniona hibernacja
Nigel Cunningham wymyślił nową metodę odczytywania i zapisywania obrazu
pamięci tworzonego przy hibernacji. Przygotował algorytm i opublikował go, licząc,
że poważniejsze usterki zostaną zauważone, zanim poświęci więcej czasu na
próby jego implementacji.
Cała sprawa jest znacznie bardziej kontrowersyjna, niż mogłoby się wydawać.
Idealna hibernacja zamyka system tak
szybko, jak to tylko możliwe, i uruchamia
go w tym samym stanie, również jak najprędzej. Problem polega na tym, że stan systemu nie jest łatwy do określenia, a wykonanie tej operacji szybko jest jeszcze bardziej kłopotliwe. Programiści mogą nie
zgadzać się co do najlepszego podejścia,
a ich spory bywają trudne, czasem nawet
niemożliwe do zażegnania bez odniesienia
się do rzeczywistej implementacji.
Także i tym razem, choć Nigel uważał
swoją metodę za dość prostą, Pavel Machek, który wraz z Rafaelem J. Wysockim
nadzoruje obecny kod hibernacyjny,
stwierdził, że podejście to jest „zbyt skomplikowane, by mogło sprawdzić się
w praktyce”.
Również Rafael uznał, że kod Nigela jest
za bardzo zawiły – chodziło o moment zapisu pamięci podręcznej stron. Skraca ona
czas dostępu do używanych wcześniej plików, bo przechowuje ich dane, w razie
gdyby były później potrzebne. Nigel i Rafael zgadzają się, że pamięć podręczna
stron musi zostać zachowana, aby system
po hibernacji nie reagował wolniej. Jednak
Rafael uważa, że zapisanie jej później, niż
proponuje Nigel, byłoby znacznie prostsze. Jego zdaniem Nigel nie powinien próbować zapisać całej zawartości pamięci
RAM – 80% wystarczy, by uzyskać szybkie
i proste rozwiązanie. Nigel starał się zachować absolutnie wszystko, stąd właśnie
wcześniejszy moment zapisu pamięci
podręcznej. Rezygnacja z tego uniemożliwiłaby pełny zapis stanu pamięci RAM,
miałaby jednak wiele innych zalet.
Nigel argumentował, że zachowanie całkowitego stanu RAM-u jest bardzo istotne
dla szybkości. To doskonały przykład tego,
że różne koncepcje programistów na
temat poszczególnych aspektów problemu mogą prowadzić ich do zupełnie odmiennych wniosków. Jak je rozwiązać bez
konieczności napisania i wypróbowania
kodu? Wiele ważnych przełomów, w tym
system kontroli wersji git, było efektem
sytuacji, w której jeden programista myślał, że coś jest możliwe, podczas gdy
wielu innych się z nim nie zgadzało.
Dzielenie i łączenie plików w systemach o niskich zasobach
Nikanth Karthikesan opublikował
kod dodający kilka wywołań systemowych. Chciał umożliwić dzielenie plików na mniejsze bez konieczności zajmowania dodatkowej przestrzeni na
urządzeniu. W większości systemów
plików wystarczy „przedziurawić”
większy plik i użyć dziur jako granic nowych plików. Rzecz sprowadza się do
„przemieszczenia metadanych”. Jednak
metoda ta nie sprawdza się w przypadku systemu FAT, który wymaga dodatkowej przestrzeni, by skopiować
dane z większego pliku do mniejszych.
Funkcje Karthikesana, sys_split() i sys_
join(), informują system FAT, że potrzebna jest jedynie zmiana w metadanych.
Hirofumi Ogawa stwierdził, że łatkę
trzeba poprawić pod kątem zarządzania
pamięcią podręczną. Dodał też, że choć
nie ma nic przeciwko wprowadzeniu
6
PAŹDZIERNIK 2010 NUMER 80
nowych funkcji, jest to sensowne jedynie, jeśli znajdą się użytkownicy, którzy
będą z nich rzeczywiście korzystać.
Nikanth zauważył, że nowe funkcje
sprawdzą się w edycji multimediów,
umożliwiając sklejanie serii klatek
w film lub łatwiejsze niż obecnie dzielenie dużych plików wideo. Dodał też, że
ułatwiłoby to powiększanie lub zmniejszanie plików od środka, a nie tylko na
końcach.
David Pottage był zachwycony tą perspektywą. Napisał:
Pliki wideo są bardzo duże, więc prosta operacja usunięcia kilku minut tu
i tam w godzinnym nagraniu HD wymaga kopiowania wielu gigabajtów
z jednego pliku do drugiego. Wyobraźmy
sobie, ile czasu i przestrzeni zaoszczędzilibyśmy, gdybyśmy mogli po prostu stworzyć kopię COW plików źródłowych, wyciąć niechciane fragmenty i z powrotem
połączyć resztę.
Plik końcowy nie zajmowałby więcej
miejsca w porównaniu z plikami źródłowymi i choć byłby podzielony, fragmenty
wciąż byłyby duże w porównaniu z większością plików, więc ich sekwencyjne odtwarzanie nie pociągnęłoby za sobą
znacznych strat w wydajności. Jeśli bylibyśmy zadowoleni z wyniku, moglibyśmy
usunąć pliki źródłowe i uruchomić w tle
demona defragmentującego, by uporządkował końcowy plik.
David dodał, że proponował już tego
typu funkcję i został zakrzyczany przez
osoby twierdzące, że takie rozwiązanie
powinno raczej znaleźć się w przestrzeni użytkownika.
Argumenty te nie przekonały jednak
wszystkich, a dyskusja niedługo potem
zeszła na boczny tor, nie jest więc jasne,
czy kod Nikantha zostanie zaadoptowany.
www.linux-magazine.pl
NOWOŚCI
Jądro
Korekta samorzutnych błędów RAM-u
Brian Gordon ogłosił, że chciałby zaadaptować Linuksa dla przemysłu lotniczego
i kosmonautycznego. Problemem są jednak tak zwane błędy SEU (ang. Single
Event Upsets). Występują wtedy, gdy bity
pamięci RAM zmieniają stan pod wpływem przenikających przez urządzenie
wysokoenergetycznych cząstek. Zdarza
się to w różnego rodzaju statkach powietrznych i kosmicznych. Gordon chciał
znaleźć sposób na wykrywanie i naprawę
SEU tak, by nie stanowiły one problemu
dla systemu.
Andi Kleen zwrócił uwagę, że problem
występuje także w zwykłych serwerach,
nie tylko tych działających w przestrzeni
kosmicznej. W ich przypadku wykorzystywana jest pamięć RAM z funkcją ECC (ang.
Error Correction Code). Koryguje ona
błędy jednobitowe i wykrywa te wielobitowe. Zauważył też, że dostępne są inne,
bardziej złożone rozwiązania.
Dodał przy tym: „Mniej wymagające systemy, zoptymalizowane pod względem
kosztów, ignorują ten problem, więc przestawione bity w pamięci skutkują zawieszeniem systemu (jeśli mamy szczęście)
lub cichym uszkodzeniem danych (jeśli
mamy pecha)”.
Chris Friesen dorzucił, że w jego dziedzinie, telekomunikacji, wykorzystuje się
właśnie ECC RAM – zaproponował też wykonywanie sum kontrolnych danych oraz
sprawdzanie ich w trakcie użycia. Zwrócił
uwagę Briana na kod EDAC w jądrze – projekt SourceForge [1], którego celem jest
wykorzystanie ECC RAM-u.
Brian odparł, że EDAC wygląda naprawdę dobrze, ale interesują go przede
wszystkim systemy „zoptymalizowane
pod względem kosztów”, o których wspomniał Andi. Jego zdaniem nawet w ich
przypadku Linux powinien zrobić
wszystko, co możliwe, by naprawić samo-
rzutne błędy RAM-u.
Według Andiego Linux nie posiada
obecnie żadnej tego typu implementacji –
wszystkie funkcje poprawiające błędy
w RAM-ie opierają się na wykorzystaniu
sprzętu ECC RAM. Jednak nawet jeśli Brianowi udałoby się wywalczyć coś za pomocą kodu, aplikacja przestrzeni użytkownika musiałaby dostrzegać problem,
a program należałoby napisać w taki sposób, by współpracował z jądrem w celu
jego naprawy. Nie byłoby to więc rozwiązanie, które uszczęśliwiłoby wszystkich.
Brian wydawał się nieco zawiedziony,
ale uznał, że będzie kontynuował poszukiwania. Niestety wygląda na to, że na natywną, niezależną od sprzętu korektę błędów w pamięci RAM pod Linuksem będzie
trzeba jeszcze długo poczekać.
[1] Projekt EDAC: http://bluesmoke.sourceforge.net/
Kompilacja poprzez sshfs
Dmitry Torokhov narzeka, że niedawna poprawka w kbuildzie spowodowała znaczne spowolnienie kompilacji
jądra poprzez sshfs. Wykonywał ją od
www.linux-magazine.pl
wielu lat bez żadnych problemów, ale
jedna łatka sprawiła, że czas kompilacji
poszybował w górę. Michal Marek
stwierdził, że chodzi o błąd w metodzie
przetwarzania danych Make’a, która powoduje ich wielokrotnie przeliczane.
Obiecał, że się temu przyjrzy.
NUMER 80 PAŹDZIERNIK 2010
7
DVD
DVD w tym miesiącu
Na DVD
W tym miesiącu na płycie DVD dołączonej do „Linux Magazine” zamieszczamy zestaw popularnych dystrybucji Ubuntu 10.04.1 (w wersji instalacyjnej i live, również na netbooki) oraz
najnowszego Minta opartego na Debianie.
Ubuntu 10.04.1
Ubuntu 10.04.1 jest najnowszą wersją najpopularniejszej dystrybucji Linuksa na świecie. Ubuntu 10.04 ukazało się w kwietniu
2010 roku. Od tamtej pory w wielu pakietach wykryto błędy,
które następnie zostały naprawione. Pojawiły się także nowe
wersje różnych programów. Dlatego warto zainteresować się
10.04.1: jeśli korzystamy 10.04, możemy go zaktualizować, jeśli
zaś jesteśmy nowymi użytkownikami Ubuntu – zainstalujemy system od nowa.
Na płycie DVD dołączonej do „Linux Magazine” znajdziemy aż
sześć różnych odmian tej dystrybucji. Pierwsze dwie do zwykłe
8
PAŹDZIERNIK 2010 NUMER 80
Ubuntu 10.04.1 – wersja instalacyjna i live. Drugie dwie to Kubuntu 10.04.1, czyli Ubuntu z pulpitem KDE. Wreszcie ostatnie
dwie to specjalna wersja Ubuntu przeznaczona na netbooki. Zawiera ona usprawnienia związane ze specyfika pracy na komputerku z niewielkim wyświetlaczem, (stosunkowo) słabym procesorem i trzymająca krótko baterią.
Wersji live użyjemy do przetestowania dystrybucji. Jeżeli nam
się spodoba, możemy ją zainstalować – albo korzystając z wersji
instalacyjnej, albo klikając ikonkę Install, która znajduje się na
pulpicie wersji live. Miłej zabawy!
www.linux-magazine.pl
DVD
DVD w tym miesiącu
Mint LMDE
Linux Mint Debian Editiom (LMDE) to
pierwsze wydanie Minta bazujące na Debianie. Dlaczego twórcy tej dystrybucji
zdecydowali się przejść na Debiana z bardziej popularnego Ubuntu?
Użytkownikom testowych wersji Debiana obce są nowe wydania systemu. Dla
nich „nowe wersje” mogłyby równie dobrze nie istnieć. Dzieje się tak dlatego, że
wszystkie pakiety są aktualizowane na
bieżąco. Po wydaniu nowej wersji określonego programu jego debianowy opiekun
przygotowuje odpowiedni pakiet DEB
i rozpoczyna testy. Jeżeli zakończą się one
sukcesem, tj. pakiet buduje się, nie psuje
innych komponentów systemu itd., jest ładowany do repozytorium, skąd mogą go
pobrać inni użytkownicy.
Łatwo zrozumieć, że używanie testowej
www.linux-magazine.pl
wersji dystrybucji, która ewoluuje w taki
sposób, niesie za sobą zarówno pewne ryzyko, jak i spore korzyści. Z jednej strony
musimy polegać na poczuciu odpowiedzialności opiekunów pakietów, z drugiej
– mamy dostęp do najświeższych wersji
ulubionych programów. Nie jesteśmy
zdani na łaskę i niełaskę menedżerów
wydań, nie musimy czekać pół roku – możemy korzystać z najnowszych wydań niemal od razu.
Twórcy Minta już od dawna rozważali
uniezależnienie dystrybucji od podstawy,
na której powstaje. Dotąd było to Ubuntu
– system nieco bardziej przyjazny użytkownikowi niż Debian (choć różnice pod
tym względem są niewielkie). We wrześniu 2010 roku udostępniono pierwsze wydanie z bazą Debiana zamiast Ubuntu.
Co zyskujemy, używając LMDE? Przede
wszystkim możemy zapomnieć o czymś
takim, jak „instalacja systemu”: system aktualizuje się sam – w nieskończoność.
Może się nawet okazać, że będziemy mieli
nowsze wersje programów, niż ktoś, kto
właśnie zainstalował najnowszą, niedawno wydaną wersję Ubuntu. LMDE jest
też zdecydowanie szybsze niż wcześniejsze wersje Minta bazujące na Ubuntu.
A jakie są minusy? System może się czasami psuć. Użytkownicy Debiana zarzekają się, że dzieje się to rzadko – może raz
na kilka lat, w zależności od zestawu używanych przez nas pakietów – niemniej
opiekunowie pakietów są tylko ludźmi
i im też zdarzają się wpadki. Oczywiście
tego typu błędy są bardzo szybko naprawiane.
NUMER 80 PAŹDZIERNIK 2010
9
Temat numeru
VirtualBox z LDAP
Uwierzytelnianie LDAP zamiast PAM w VirtualBoksie
Nowy dozorca
Administratorzy, którzy specjalizują się w scentralizowanej wirtualizacji systemów desktopowych, przez długi czas czuli się sfrustrowani brakiem rozbudowanych mechanizmów uwierzytelniania w VirtualBoksie. Nowy projekt
Vrdp-ldap oferuje pracującym w sieci instancjom VirtualBoksa uwierzytelnianie przez LDAP. Michael Kromer Markus Feilner
Autor
Michael Kromer (http://
medozas.de) jest starszym
konsultantem i inżynierem
linuksowym w Millenux
GmbH w Monachium.
Udziela się w różnych projektach open source, włączając w to jadro Linuksa, Open
NX, Asterisk, VirtualBox i ISC Bind. Jest
także aktywnym członkiem społeczności
openSUSE; interesuje się technologiami
wirtualizacyjnymi.
TEMAT NUMERU
10 VirtualBox i LDAP
Projekt Vrdp-ldap udostępnia uwierzytelnianie oparte
na LDAP w VirtualBoksie.
14 Libguestfs
Zarządzanie dyskami maszyn
wirtualnych nigdy nie było
tak proste.
20 Wirtualizacja z odpornością na błędy
Pokonany brat Romulusa,
Remus, powraca, udostępniając odporność na błędy
maszynom wirtualnym Xena.
10
PAŹDZIERNIK 2010 NUMER 80
V
irtualBox [1], narzędzie zaprojektowane z myślą o użytkownikach desktopowych, powoli zdobywa popularność jako rozwiązanie serwerowe, działające
na Linuksie, Windows, Free BSD i Solarisie. W wersji 3.1 Sun wprowadził opcję
migracji maszyn wirtualnych w trakcie pracy, nazywając ją „teleportacją”.
Teraz, kiedy Sun został połknięty przez Oracla i udostępniona jest wersja 3.2, „Oracle
VM VirtualBox” wirtualizuje także Mac OS X na sprzęcie nie produkowanym przez
Apple (patrz: ramka Mac OS Without a Mac). Wersja 3.2 oferuje także konfigurowane
buforowanie we/wy i NAT, dodawanie i usuwanie procesorów w trakcie pracy maszyny, akcelerację obrazu RDP (niestety, tylko dla klientów RDP Windows 7) i wiele
ekranów.
Serwerowa wirtualizacja zdalnego pulpitu wykorzystuje virtualboksową wersję
protokołu RDP, którą zapewne znamy z serwerów terminalowych. Niestety, RDP jest
dostępny jedynie w komercyjnej wersji VirtualBoksa. Na szczęście licencja PUEL [2]
umożliwia użytkownikom prywatnym i instytucjom edukacyjnym korzystanie z tej
wersji bez opłat.
Pewien problem z serwerową wirtualizacją na VirtualBoksie powstaje, kiedy używamy RDP VirtualBoksa (VRDP) do uwierzytelniania względem aktywnej maszyny
wirtualnej. Tradycyjne podejście z zastosowaniem PAM pozwala w praktyce na wykorzystywanie maszyny tylko przez jednego użytkownika, w dodatku musi to być ten
sam użytkownik, który uruchomił maszynę wirtualną na serwerze VirtualBoksa. Jeżeli
użytkownik przeniesie się na inny komputer kliencki RDP, uwierzytelnianie przez
PAM nie zadziała. Administratorzy, którzy chcą oddzielić użytkowników od maszyn,
muszą wyłączać PAM i próbować kontrolować dostęp do portu VRDP przez zaporę
sieciową.
Powyższe „rozwiązanie” ma tyle wad, że aż prosi się o naprawienie. W lutym 2010
roku pojawił się projekt vrdp-ldap [3], którego celem jest implementacja modułu służącego do uwierzytelniania bazującego na LDAP w VirtualBoksie. Vrdp-ldap powiększa istniejący schemat LDAP, dodając klasę obiektów i właściwości do obsługi uwierzytelniania użytkowników przez UUID maszyny. Ponieważ Vrdp-ldap wykorzystuje
także istniejące atrybuty katalogu PAM, rozwiązanie bazujące na Vrdp-ldap oferuje
transparentne uwierzytelnianie względem istniejących usług katalogowych, za pomocą istniejących danych logowania.
Krok po kroku
Gotowe do zainstalowania pakiety RPM dla openSUSE 11.2 i SLES 11 dostępne są
online [4]. Administratorzy innych systemów muszą skompilować kod źródłowy, używając sekwencji configure && make && make install. Przy ręcznym budowaniu potrzebne są pakiety deweloperskie libHX, pam-devel, openldap2-devel i pkg-config (znajdziemy je w niemal każdej dystrybucji).
www.linux-magazine.pl
Temat numeru
VirtualBox z LDAP
Z kolei na systemach 64-bitowych musimy przejąć uprawnienia administratora i wydać poniższą komendę:
VBoxManage setproperty
vrdpauthlibrary
/usr/lib64/virtualbox/vrdp-ldap
Procedura konfiguracji maszyny wirtualnej do bazującego na
VRDP uwierzytelniania LDAP składa się z pięciu kroków wykonywanych na systemie-gościu:
• instalacja wtyczki Rdp-ldap,
• konfiguracja biblioteki VRDP dla VirtualBoksa,
• modyfikacja schematu LDAP,
• modyfikacja samej maszyny wirtualnej,
• rozszerzenie kont użytkowników LDAP poprzez dodanie
UUID-ów dla maszyn wirtualnych, do których użytkownicy
mają mieć dostęp.
Wtyczkę z łatwością zainstalujemy na openSUSE 11.2:
zypper ar http://repo.medozas.de/
medozas/SUSE-11.2/medozas.repo
zypper in VirtualBox-vrdp-ldap
Jeśli chodzi o bibliotekę VRDP, musimy uruchomić VBoxManage, aby zdefiniować skompilowany moduł jako bibliotekę
VRDP tak, by odpowiadała aktualnej wersji VirtualBox SDK (3.0
aż do najnowszej w chwili pisania artykułu, czyli 3.2.4). Na systemach 32-bitowych polecenie to wygląda tak:
VBoxManage setproperty
vrdpauthlibrary/usr/lib/
virtualbox/vrdp-ldap
Nazwa modułu nie zawiera rozszerzenia pliku (takiego jak .so
czy .dll), co jest sensowne, ponieważ uwierzytelnianie VRDP pozwala nam korzystać z identycznych ustawień na różnych hostach, działających na rozmaitych systemach operacyjnych. Choć
obecnie nie istnieje jeszcze moduł Vrdp-ldap dla Windows,
można oczekiwać, że pojawi się w ciągu kilku najbliższych miesięcy.
Na Listingu 1 widzimy plik konfiguracyjny Vrdp-ldap, który
administrator musi zmodyfikować, by odpowiadał lokalnemu
serwerowi LDAP. Kolejnym krokiem jest dodanie schematu /usr/
share/doc/packages/VirtualBox-vrdp-ldap/vbox-vrdp.schema do
serwera LDAP. Czwarty etap, modyfikacja maszyn wirtualnych,
jest bardzo prosty – wystarczy spojrzeć na zrzut ekranu przedstawiony na Rysunku 3.
Jeden wpis dla jednego użytkownika
Jeżeli chodzi o system na hoście, Listing 2 pokazuje wpis
w LDAP dla zwykłego użytkownika, który otrzyma dostęp przez
VRDP dla dwóch instancji wirtualnych. Potrzebujemy oddzielnego wpisu LDAP dla każdego użytkownika i gościa. Programiści
planują wprowadzenie możliwości użycia gwiazdki (*), która pozwalałaby użytkownikowi korzystać z każdej maszyny wirtualnej. Wybór narzędzia LDAP do utworzenia konta użytkownika
jest kwestią gustu, musi tylko ono umieć odpytywać schemat, tj.
zidentyfikować VBoxVRDP jako klasę obiektu i VBoxVRDPUUID
jako właściwość. Zarówno GQ [5], jak i LDAP Admin [6] nadają
się do tego zadania.
Parametr VBoxVRDPUUID na Listingu 2 reprezentuje UUID
maszyny wirtualnej. Niestety, UUID maszyny możemy sprawdzić
jedynie w plikach XML lub poprzez wywołanie VBoxManage list –
nie w samym GUI. Prośba o rozbudowanie GUI o tę opcję została
już zgłoszona programistom [7].
Zmyślny skrypt inicjujący
Do połączenia możemy użyć Rdesktopa lub jakiegokolwiek innego klienta usług terminalowych RDP:
rdesktop -u użytkownik-LDAP §§
-p hasło_lub_’-’_dla_zapytania §§
Mac OS bez Maca
W VirtualBoksie 3.2 można wirtualizować system operacyjny Apple na
dowolnym sprzęcie w oknie Linuksa (Rysunek 1). Jest to możliwe
dzięki emulacji środowiska uruchomieniowego EFI (ang. Extensible
Firmware Interface) jak w przypadku KVM (Rysunek 2).
I od razu ostrzeżenie: warunki licencji Apple zabraniają instalacji Mac
OS X na sprzęcie innym niż wyprodukowany przez Apple. Z drugiej
strony firma ta sprzedaje OS X również bez sprzętu. W praktyce
trudno sobie wyobrazić, by polski sąd uznał rację Apple w sprawie
www.linux-magazine.pl
o uruchomienie legalnie zakupionego programu na komputerze innego
producenta – czegoś takiego nie zaryzykowałby nawet Microsoft.
VirtualBox ułatwia wirtualizację Jabłka: wystarczy utworzyć maszynę
wirtualną, wybrać Mac OS Server i kontroler dysku typu ICH6. Aby
uruchomić Leoparda, potrzebujemy też odpowiedniego polecenia
VBoxManage (i klucza urządzenia SMC z Internetu). Użytkownik musi
wyłączyć funkcję zarządzania energią Apple, jeśli system operacyjny
ma płynnie działać.
NUMER 80 PAŹDZIERNIK 2010
11
Temat numeru
VirtualBox z LDAP
Rysunek 1: Zabronione w USA: Mac OS X na laptopie Intela w VirtualBoksie.
Rysunek 2: KVM nie pozostaje w tyle: starsza wersja systemu operacyjnego Apple.
VirtualBox-Host-IPU:Port-VRDP
Opierając się na powyższych wyjaśnieniach, możemy skonfigurować własny serwer VirtualBoksa za pomocą Vrdp-ldap. Dobrze jest użyć specjalnego skryptu inicjującego [8]. Zamraża on
wszystkie maszyny wirtualne zdefiniowane w pliku autostart, by
zachować bieżący status przy zamykaniu hosta (ang. VBoxManage controlvm savestate). Po restarcie system-gość od razu udostępnia użytkownikowi znajome mu środowisko, zakładając, że
od restartu nie wprowadzono dodatkowych zmian na samej maszynie wirtualnej (interfejsy sieciowe itd.).
Aby skonfigurować skrypt startowy, powinniśmy utworzyć
użytkownika i uczynić go członkiem grupy vboxusers. Musimy też
dodać do pliku autostart nazwę zdefiniowanej maszyny wirtualnej, łącznie z portem VRDP i priorytetem procesu (wartości
nice). Na Listingu 3 widzimy odpowiednie polecenia dla openSUSE.
projekt zmierza w dobrym kierunku, zaś Vrdp-ldap, nowy klucznik systemów z uwierzytelnianiem LDAP, pozwala wykorzystać
VirtualBoksa również w środowiskach serwerowych. n n n
Hit sezonu
Oracle co miesiąc wydaje nową wersję VirtualBoksa. Biorąc
pod uwagę nowe funkcje dodane od wersji 3.1 i pozytywne wyniki testów wejścia / wyjścia [9], można stwierdzić, że Oracle
próbuje wyhodować hybrydę, łączącą zalety wirtualizacji desktopowej i serwerowej i radzącą sobie z obsługą obciążenia 24/7
w środowisku produkcyjnym.
Kilka rzeczy wymaga poprawienia, na przykład sterownik USB
dla Blackberry czy zarządzanie przerwaniami w systemach wielordzeniowych (komunikacja IO / APIC niektórych gości niebezpiecznie zwiększa obciążenie procesora [10]). Jednak ogólnie
Listing 1: /etc/vrdp-ldap.conf
Info
[1] Maszyna wirtualna Oracle VirtualBox: http://virtualbox.org
[2] Osobista licencja VB: http://www.virtualbox.org/wiki/VirtualBox_PUEL
[3] Projekt Vrdp-ldap: http://vrdp-ldap.sf.net
[4] Pakiety RPM dla SUSE: http://repo.medozas.de/medozas
[5] GQ: http://sourceforge.net/projects/gqclient/
[6] LDAP Admin: http://ldapadmin.sourceforge.net
[7] Propozycja podglądania UUID-ów w GUI VB: http://virtualbox.
org/ticket/6989
[8] Skrypt inicjujący: http://dev.medozas.de/files/VirtualBox
[9] Testy we/wy z obrazami dysków VirtualBoksa przed i po wersji
3.2: http://virtualbox.org/ticket/4392
[10] Uszkodzenia danych przy dużym obciążeniu we/wy: http://
virtualbox.org/ticket/2524
Listing 2: Użytkownik LDAP
z dostępem VRDP
01 dn: uid=mkromer,ou=users,dc=linux‑magazin,dc=de
02 cn: mkromer
03 uid: mkromer
04 mail: [email protected]
01 CHECK_UUID="yes"
05 objectClass: top
02 CHECK_PAM="yes"
06 objectClass: person
03 PAM_SERVICE="sshd"
07 objectClass: inetOrgPerson
04 LDAP_URI="ldap://localhost/"
08 objectClass: posixAccount
05 BASE_DN="dc=company,dc=com"
09 objectClass: VBoxVRDP
06 #BIND_DN=""
10 VBoxVRDPUUID: {3f7d197f‑072a‑4bf9‑9528‑aebefdfa2a2e}
07 #BIND_PW=""
11 VBoxVRDPUUID: {af4bed3e‑f94e‑48f8‑ba1e‑6c7c504b38ca}
Listing 3: Konfiguracja skryptu inicjującego
01 useradd ‑c "
VirtualBox User" ‑d /virt ‑m ‑r ‑g vboxusers virt
02 wget http://dev.medozas.de/files/VirtualBox/virtualbox.init.suse ‑O /
etc/init.d/virtualbox
04 wget h
ttp://dev.medozas.de/files/VirtualBox/virtualbox.autostart.suse
‑O /virt/autostart
05 insserv virtualbox on
03 chmod a+x /etc/init.d/virtualbox
12
PAŹDZIERNIK 2010 NUMER 80
www.linux-magazine.pl
know-how
Onyx Boox 60
Czytnik e-booków
Onyx Boox 60
Przyglądamy się wielofunkcyjnemu czytnikowi e-booków
z Linuksem na pokładzie.
Artur Nowosielski
P
roducenci czytników e-booków zapowiadają rychły koniec papierowych publikacji. Technologia e-papieru pozwoliła na stworzenie lekkich i energooszczędnych urządzeń.
W tym wydaniu „Linux Magazine” przyglądamy się jednemu z takich czytników.
Onyx Boox 60 działa pod kontrolą wbudowanego Linuksa wyposażonego w szereg powszechnych bibliotek i pakietów, m.
in. glibc, Qt, zlib, BusyBox, OpenSSL czy
SQLite.
Pierwsze wrażenia
W pudełku znajdziemy czytnik w skórzanym, etui, kabel USB (ze standardową
wtyczką USB mini-b), ładowarkę, kartę
gwarancyjną i skromny podręcznik Szybki
start. Do urządzenia standardowo włożona jest karta SD o pojemności 2 GB, zawierająca między innymi pełny podręcznik użytkownika.
Obudowa jest wykonana z białego, matowego tworzywa sztucznego, a większa
część tylnej ściany – z aluminium. Ekran
także jest matowy, a jego powłoka wydaje
się dość trwała – po miesięcznym używaniu nie było widać żadnych zadrapań ani
śladów rysika.
Obsługa i interfejs
Boox 60 ma sześciocalowy ekran dotykowy o rozdzielczości 600×800, obsługiwany za pomocą piórka. Z przodu urządzenia znajduje się okrągły, wielofunkcyjny przycisk. Zewnętrzny, biały pierścień służy do nawigacji podczas czytania
oraz włączania i wyłączania menu. Wewnętrzny, srebrny pierścień, który możemy naciskać w czterech miejscach
(prawo, lewo, góra i dół), pozwala przechodzić pomiędzy pozycjami menu i plikami. W środku jest się przycisk OK. Na
dolnej krawędzi umieszczono przycisk regulacji głośności, gniazdo USB, przycisk
włączania, usypiania i wyłączania, gniazdo
minijack oraz miejsce dla karty pamięci
34
PAŹDZIERNIK 2010 NUMER 80
SD. Po lewej stronie mamy przycisk włączający i wyłączający WiFi.
Przechowywanie,
przeglądanie i czytanie
Czytnik wyposażony jest w 512 MB pamięci wewnętrznej i kartę SD (standardowo o pojemności 2 GB). Przeglądarka
plików oferuje różne widoki listy plików,
możliwość sortowania według kilku atrybutów i oceniania w skali od zera do pięciu
gwiazdek. Onyx pozwala nam tworzyć
skróty, które umożliwiają dotarcie do dowolnego pliku za pomocą jedynie dwóch
kliknięć z głównego menu czytnika.
Onyx Boox 60 potrafi odczytać publikacje w formatach PDF, DjVu, ePub, TXT,
HTML, RTF, DOC, MOBIPOCKET, CHM
i PDB, a także pliki graficzne JPG, PNG,
BMP i TIFF oraz pliki dźwiękowe MP3.
W trybie czytania urządzenie oferuje typowe funkcje: powiększanie i pomniejszanie widoku strony, przeszukiwanie dokumentu, wyszukiwanie wskazanych słów
w słowniku i tworzenie zakładek. W niektórych formatach (na przykład TXT) możemy zmienić krój czcionki. Dzięki dotykowemu ekranowi mamy możliwość dodawać odręczne notatki do czytanych publikacji (Rysunek 4). Obraz na ekranie możemy obrócić o dziewięćdziesiąt stopni.
Według producenta, w pełni naładowany akumulator wystarcza na kilka tygodni używania i jest to prawda, o ile wykorzystujemy go głównie do czytania. Urządzenie możemy ładować zarówno poprzez
E-papier
Rysunek 1: Onyx Boox 60 (źródło: materiały
prasowe dystrybutora).
ładowarkę włączaną do gniazdka, jak
i kabel USB podłączony do komputera.
Łączność
Czytnik komunikuje się z komputerem
za pomocą interfejsu USB. W Linuksie
zgłasza się jako dwie pamięci masowe (pamięć wewnętrzna i karta pamięci) i nie powoduje żadnych problemów z wymianą
danych.
Onyx Boox 60 jest wyposażony w prostą
przeglądarkę internetową i moduł WiFi
z obsługą powszechnych zabezpieczeń
(WEP, WPA, WPA2). Niestety, podczas miesięcznych testów często zdarzało się, że
czytnik „gubił” połączenie lub w ogóle nie
łączył się z sieciami, z którymi inne urządzenia nie miały problemów. Właściwości
wyświetlacza (długie czasy reakcji) nie
pozwalają skorzystać ze wszystkich treści
dostępnych w Sieci (na przykład animacji). Niemniej jednak przeglądarka w zupełności wystarcza, by szybko sprawdzić
definicję w Wikipedii lub słowniku internetowym.
Oprogramowanie
Co jakiś czas producent publikuje nowe
wersje oprogramowania czytnika, zawie-
Elektroniczny papier to technologia produkcji wyświetlaczy imitujących rzeczywisty papier.
Onyx Boox 60 jest wyposażony w wyświetlacz typu EPD (ang. Electrophoretic Display) E-Ink
Vizplex [3] pokazujący osiem poziomów szarości. Wyświetlacze tego typu zbudowane są z
mikroskopijnych kapsułek, z przeciwnie naładowanymi cząstkami białego i czarnego barwnika, umieszczonych pomiędzy dwoma elektrodami. Ekrany EPD, w przeciwieństwie na
przykład do LCD, nie są podświetlane, lecz odbijają padające światło (podobnie jak prawdziwy papier), dzięki czemu nie zużywają energii elektrycznej podczas wyświetlania statycznego obrazu. Potrzebna jest ona jedynie przy zmianie obrazu. Ekrany EPD mają zatem bardzo skromne zapotrzebowanie na energię elektryczną.
www.linux-magazine.pl
know-how
Onyx Boox 60
Rysunek 2: Główne menu.
Rysunek 3: Tryb czytania.
rające poprawki błędów i nowe funkcje.
Zgodnie z podręcznikiem użytkownika,
aktualizacja jest prosta – pobieramy archiwum z nową wersją ze strony dystrybutora [2]. Znajdujący się w archiwum plik
onyx_update.upd kopiujemy na kartę SD.
Następnie upewniamy się, że bateria jest
naładowana (to ważne – utrata zasilania
podczas aktualizacji sprawi, że czytnik będzie niezdatny do użytku), i włączamy
urządzenie, przyciskając jednocześnie
przycisk OK do chwili pojawienia się komunikatu o wykryciu aktualizacji. Po kilku
minutach Boox powinien uruchomić się
z nowym oprogramowaniem.
Booksa możemy także wzbogacić o dodatkowe aplikacje. Standardowo polski
dystrybutor wyposaża go w syntezator
mowy Ivona [4]. Możemy również pobierać dodatkowe lub tworzyć własne aplikacje (na stronie [1] znajduje się zestaw
narzędzi deweloperskich i pomoc dla programistów). Projekt Boox Power Pack [5]
zapowiada stworzenie pakietu dodatkowego, wolnego, oprogramowania użytkowego.
i papeterię (domyślnie jest ich cztery).
Inną dodatkową aplikacją jest prosty
odtwarzacz plików dźwiękowych z możliwością minimalizacji, który pozwala nam
słuchać muzyki lub audiobooków podczas
czytania, notowania czy szkicowania.
Inne funkcje
Notatnik umożliwia tworzenie notatek
przy pomocy klawiatury ekranowej i proste formatowanie tekstu. Niestety, notatki
zapisywane są jako czyste pliki tekstowe,
więc po zamknięciu aplikacji ich formatowanie znika. Z tego samego powodu nie
możemy sformatowanego tekstu notatki
przenieść do komputera.
Szkicownik pozwala nam odręcznie notować i rysować, dając do wyboru barwę
(biel lub czerń), grubość (pięć stopni)
www.linux-magazine.pl
Rysunek 4: Odręczne adnotacje.
Konfiguracja
Oprócz ustawień poszczególnych aplikacji, Onyx Boox 60 nie oferuje zbyt wielu
opcji konfiguracyjnych. Możemy ustawić
datę i godzinę, wybrać jedną z dwudziestu
wersji językowych, skalibrować piórko
i sformatować pamięć wewnętrzną urządzenia. Mamy też do dyspozycji proste zarządzanie energią (czas do uśpienia i czas
do wyłączenia). Na karcie pamięci, oprócz
publikacji, możemy umieścić własne
wzory papeterii, fonty i słowniki.
Na koniec
Onyx Boox 60 to czytnik wielofunkcyjny,
umożliwiający nie tylko bierne czytanie
gotowych tekstów. Odtwarzacz pozwala
słuchać audiobooków i podcastów. Możliwość łatwej aktualizacji i rozszerzania zakresu funkcji urządzenia to kolejne pozytywy. Niestety przytrafiło się kilka niedociągnięć. Urządzeniu brakuje obsługi kilku
otwartych formatów, takich jak ODT czy
OGG / Vorbis. Czytnik miewa chwile słabej
responsywności i zdarza się, że reakcja na
klikanie piórkiem zajmuje kilka sekund.
Moduł WiFi także wymaga dopracowania.
W zakresie sprzętu miłym dodatkiem
byłby akcelerometr, sprawiający, że Boox
samodzielnie obracałby obraz na ekranie.
Czytnik objęty jest roczną gwarancją,
a dystrybutor zapewnia serwis w Polsce.
Rysunek 5: Notatnik umożliwia formatowanie tekstu.
W ofercie znajduje się także uboższa i tańsza wersja, Boox 60s, pozbawiona modułu
WiFi oraz dotykowego ekranu. Na stronie
[2] podana jest także zapowiedź nowej odmiany, Boox 601, wyposażonej w modem
3G zamiast modułu WiFi. nnn
Info
[1] Główna strona Onyx: http://www.
onyx-international.com
[2] Polska witryna Onyx: http://www.
onyx-ereader.pl
[3] E-Ink Vizplex: http://www.eink.com/
products/matrix/imaging_film.html
[4] Ivona: http://www.ivona.com
[5] Boox Power Pack: http://sites.google.
com/site/booxpowerpack/
NUMER 80 PAŹDZIERNIK 2010
35
know-how
Postgres Plus
Postgres Plus
Alternatywa na rynku baz klasy enterprise
Często można spotkać się z opinią, że Postgres nie nadaje się do rozwiązań klasy enterprise
ze względu brak funkcji zapewniających wysoką wydajność i dostępność. Stwierdzenie to
mogło być prawdziwe jeszcze parę lat temu, obecnie jednak nie ma racji bytu. Przemysław Deć
W
ostatnich wersjach do dyspozycji mamy bardzo wydajny
i zoptymalizowany silnik bazy
danych. Ponadto w wydaniu
9.0 zaimplementowane zostały wewnętrzne funkcje umożliwiające skalowanie horyzontalne. Od dłuższego czasu na
rynku są także dostępne produkty firmy
EntepriseDB, wiodącego dostawcy wsparcia i usług klasy enterprise dla PostgreSQL.
Wśród produktów znajdziemy dwa serwery: Postgres Plus Standard Server oraz
Advanced Server, oferujące dodatkowe
funkcje wysokiej wydajności i dostępności. W połączeniu z bardzo niskimi kosztami subskrypcji oraz korzystnymi formami licencjonowania (licencje na CPU,
w przeciwieństwie do komercyjnych baz,
gdzie płacimy za rdzeń lub użytkownika)
otrzymujemy produkt, którego nie sposób
nie brać pod uwagę przy wyborze rozwiązań klasy enterprise. Spójrzmy jednak bliżej na dostępne technologie oferowane
przez Postgres.
W najnowszej wersji 9.0 pojawiają się
funkcje hot standby i streaming replication. Umożliwiają one utrzymywanie kopii
bazy danych na kolejnych serwerach
w czasie prawie rzeczywistym w oparciu
o logi transakcyjne i bardzo sprawne zastępowanie głównego serwera w razie
awarii. Co więcej, nasze kolejne instancje
bazy danych mogą także realizować zapytania typu read only, dzięki czemu da się
rozłożyć obciążenie na wiele serwerów.
W tym momencie nasuwa się pytanie,
jak zrealizować load balancing. Do tego
celu możemy użyć popularnego narzędzia
pgpool. Projekt jest aktywnie rozwijany
od wielu lat, a wersja wykorzystująca
funkcje z PostgreSQL 9.0 została właśnie
wydana. Ponieważ mamy wiele kopii bazy
danych, nasze zapytania będą rozkładane
pomiędzy serwery według wagi, jaką
36
PAŹDZIERNIK 2010 NUMER 80
przypiszemy każdemu węzłowi. Narzędzie to zapewni nam connection pooling,
dzięki czemu oszczędzimy kolejne cenne
milisekundy przy nawiązywaniu połączenia do bazy danych. Ponadto – co być
może jest najważniejsze – za jego pomocą
będziemy w stanie zrealizować synchroniczną replikację, dzięki której zawsze będziemy dysponowali identycznymi kopiami danych. Konfiguracja pgpool jest
bardzo prosta i dobrze opisana na stronie
projektu pgpool.projects.postgresql.org.
Pgpool można łączyć także z innymi
technologiami replikacji asynchronicznej
takimi, jak popularne Slony, czy z xDB zawierającym wygodny graficzny interfejs
(produkt dostępny w ramach subskrypcji
Postgres Plus). Bez większego trudu jesteśmy w stanie uruchomić klaster zapewniający zarówno wysoką dostępność, jak
i dobrą wydajność. Klaster zawsze wymaga drobiazgowego monitoringu i zarządzania. Te czynności możemy wykonać
dzięki Postgres Plus HQ Monitoring oraz
konsoli zarządzania dostępnej w wersji
Advanced Server.
Oprócz wspomnianych rozwiązań
w wersji Advanced Server zyskujemy
wiele zaawansowanych technologii
zwiększających wydajność – Infinite
Cache, Asynchronous Pre-Fetch czy Query
Optimization Hints. Kluczową technologią
jest Infinite Cache. Umożliwia ona rozdystrybuowanie danych w pamięci RAM na
wielu serwerach, co likwiduje wąskie gardło, jakim są odczyty danych z dysków. Co
więcej, istnieje możliwość spakowania
bazy danych w pamięci RAM oraz zastosowania tzw. pre-warmingu, czyli zrzucenia bazy do pamięci RAM już przy starcie
serwera. Dzięki temu pierwsze zapytania
także nie będą wymagać żadnych operacji
dyskowych. Technologia ta jest całkowicie
przezroczysta dla aplikacji i nie wiąże się
z żadnymi dodatkowymi kosztami. Skok
wydajności odczujemy przy wszystkich
rodzajach baz, zarówno OLAP, jak i OLTP,
jednak najlepsze wyniki uzyskamy dla zapytań odczytujących dane. W testach
zwierających wyłącznie zapytania typu
SELECT wyniki są piętnastokrotnie lepsze niż bez zastosowania tej technologii!
Przy okazji baz typu OLAP, warto wspomnieć o innym dedykowanym rozwiązaniu zwiększającym wydajność – GridSQL.
Ta oparta na architekturze shared-nothing
technologia pozwala na równoległe wykonywanie skomplikowanych obliczeń na
wielu serwerach.
Postgres Plus Advanced Server stanowi
alternatywę także z innego powodu. Tym,
co pozostaje w nim najistotniejsze, jest
warstwa kompatybilności z Oracle. Pozwala ona uruchomić wiele aplikacji napisanych dla tych baz danych, w całkowicie
niezmienionej postaci lub przy minimalnych zmianach w kodzie. Migrację możemy przeprowadzić za pomocą jednego
przycisku dzięki intuicyjnemu Migration
Studio. Zarówno schemat, jak i dane są
przenoszone na naszych oczach do bazy
Postgres Plus.
Jak widać, Postgres Plus wyrasta na poważnego konkurenta na rynku baz danych. Dodatkowo ma znakomitą przewagę nad innymi produktami – jest bazą
open source. Wykorzystując szereg projektów (na http://pgfoundry.org/ zobaczymy ich listę i wymienimy się uwagami), jak i dostępnych w ramach subskrypcji rozszerzeń, jesteśmy w stanie
zbudować bardzo wydaje i stabilne środowisko dla systemu klasy enterprise. nnn
AUTOR
Przemysław Deć jest pracownikiem Linux
Polska (http://www.linuxpolska.pl).
www.linux-magazine.pl
LINUX MAGAZINE
LINUX.LOCAL
Linux Magazine dla małych i średnich firm linuksowych
LINUX.LOCAL
– POMOC DLA FIRMY
„Linux Magazine” to najlepsze pismo o Linuksie w Polsce. Czytają nas użytkownicy Linuksa,
programiści, administratorzy, menedżerowie i decydenci. Dajemy możliwość dotarcia do
całego rynku Linuksa w Polsce. Naszym celem jest stworzenie ogólnopolskiej bazy firm,
które zajmują się Linuksem. Dzięki temu chcemy otworzyć przed firmami nowe możliwości.
Linux.local łączy katalog firm z reklamą zachęcającą do korzystania z usług. Nie ukrywamy,
że wzorem dla nas jest niemieckojęzyczna wersja „Linux Magazine”, gdzie zestawienie
linux.local liczy sobie ponad trzysta wpisów i jest to cenione, wiarygodne źródło informacji
o firmach. Mamy nadzieję, że polskie firmy również będą chętnie korzystały z tej formy
promocji.
Linux.local w Polsce
Program przeznaczony jest dla wszystkich firm, które chcą się
promować w piśmie o Linuksie. Nie ma wymogów formalnych
ani organizacyjnych – forma prowadzenia działalności gospodarczej i jej wielkość nie mają znaczenia. Najważniejsze, żeby firma
sprzedawała sprzęt, usługi lub doradztwo związane w jakikolwiek sposób z Linuksem. Interesują nas zatem firmy działające
w następujących branżach:
• sprzęt
• integracja
• oprogramowanie
• usługi
• dostawcy usług internetowych
• najtańszą reklamę prasową – żadne inne czasopismo dla profesjonalistów nie oferuje tak taniego sposobu dotarcia do tak
dużej rzeszy potencjalnych klientów;
• w cenie uczestnictwa w Linux.local uwzględniona jest prenumerata „Linux Magazine” na okres udziału w programie;
• pierwszeństwo w uczestnictwie w komercyjnych projektach
rozwoju oprogramowania linuksowego sponsorowanych przez
Linux New Media Sp. z o.o. (właściciela „Linux Magazine”);
• wsparcie promocyjne – „Linux Magazine” to czasopismo międzynarodowe, wydawane w pięciu językach, cieszące się znakomitą reputacją na świecie. Możemy pomóc wejść na rynki
Niemiec, Austrii, Szwajcarii czy Wielkiej Brytanii – doradzając
i oferując najtańsze sposoby promocji.
Uczestnictwo firmy w programie Linux.local daje kilka korzyści:
Aby wziąć udział w programie Linux.local, wystarczy wejść na
nasze strony WWW – pod adresem
Korzyści z uczestnictwa w Linux.local
Opłaty w Linux.local
12 edycji 1200 zł – (100 zł/mc)
6 edycji 720 zł – (120 zł/mc)
Promocja* – 2 edycje gratis
Należy doliczyć podatek VAT w wysokości 22%
* Z promocji tej można skorzystać raz w roku
82
PAŹDZIERNIK 2010 NUMER 80
Jak skorzystać z Linux.local?
http://linuxmagazine.pl/index.php/magazine/local
znajdują się dodatkowe informacje. W przypadku pytań prosimy
o kontakt e-mailowy pod adresem
[email protected]
lub telefoniczny pod numerem 22 742 14 55.
Ile to kosztuje?
Najkrótszym możliwym do zamówienia okresem jest pół roku,
maksymalnym – rok. Proponujemy również promocyjne uczestnictwo przez dwa miesiące, do wykorzystania raz w roku. nnn
www.linux-magazine.pl
LINUX MAGAZINE
LINUX.LOCAL
Firma
Adres
Telefon /
Faks
E-mail
WWW
123456
ABIX Beata PieńkosJurkiewicz
01-493 Warszawa
ul. Kędzierskiego 5
lok. 10
(22) 406 11 80
a.jurkiewicz@
abix.info.pl
www.abix.info.
pl
[4]
Cirrus Pióro Maria
83-110 Tczew
ul. Piaskowa 3
(58) 5300657 (58
5320656)
[email protected]
www.cirrus.pl
[2, 3, 4,
5, 6]
HEUTHES Sp. z o.o.
02 -785 Warszawa
ul.Koński Jar 8/30
(91) 460 89 74
marketing@
heuthes.pl
www.isof.pl
Akademia Administracji
Systemem Linux SWPiZ
Łódź
90-113 Łodź
ul. Sienkiewicza 9
(42) 632 04 80
mkowalska@
swspiz.pl
szkolenia@
swspiz.pl
www.akademialinux.swspiz.pl
[6]
HSF Poland Sp. z o.o.
61-663 Poznań
ul. Winogrady 30
(61) 825 99 66
(61) 825 99 60
[email protected]
www.hsf.pl
sklep.hsf.pl
[2, 3]
(0) 694 749 749
Mateusz Kornet
(0) 501 623 888
Michał Pachecka
TORMA
NET.Partners
01-793 Warszawa
ul. Rydygiera 12
lok. 2
(22) 331 85 80
(22) 331 85 81
biuro@
netpartners.net.
pl
www.
netpartners.
net.pl
[2, 3, 4,
5, 6]
Akademia
„Linux Magazine”
02-758 Warszawa
ul. Mangalia 4
(22) 642 25 19
[email protected]
www.akademia.
linux-magazine.
pl
[6]
1 = Dostawca Internetu 2= Sprzęt (sprzedaż i serwis) 3 = Sieci (projektowanie, instalacja oraz technologie sieciowe)
4 = Sprzedaż oprogramowania 5 = Wdrożenia 6 = Szkolenia
www.linux-magazine.pl
NUMER 80 PAŹDZIERNIK 2010
83
LINUX MAGAZINE
PRENUMERATA
PRENUMERATA
CENNIK PRENUMERATY „LINUX MAGAZINE”
Prenumerata dwuletnia – 24 numery z DVD
Student* 247,00 PLN
Osoba prywatna 320,00 PLN
Firma 340,00 PLN
Zagranica – Europa** 610,00 PLN
Zagranica – Świat*** 710,00 PLN
Prenumerata półroczna – 6 numerów z DVD
Student* 100,00 PLN
Osoba prywatna 110,00 PLN
Firma 120,00 PLN
Zagranica – Europa** 160,00 PLN
Zagranica – Świat*** 180,00 PLN
Prenumerata roczna – 12 numerów z DVD
Student* 156,00 PLN
Osoba prywatna 190,00 PLN
Firma 210,00 PLN
Zagranica – Europa** 310,00 PLN
Zagranica – Świat*** 360,00 PLN
Prenumerata kwartalna – 3 numery z DVD
Student* 62,00 PLN
Osoba prywatna 65,00 PLN
Firma 70,00 PLN
Zagranica – Europa** 100,00 PLN
Zagranica – Świat*** 120,00 PLN
Koszty przesyłki pokrywa redakcja.
* wymagane przesłanie faksem na numer 022 742 14 56 kopii zaświadczenia z uczelni
** czas dostawy - około 1 tygodnia
*** czas dostawy - około 2 tygodni
202130000420010316
47870001
N e w
M a n g a l i a
M e d i a
4 ,
S p .
0 2 - 7 5 8
z
o . o .
W a r s z a w a
Linux New Media Sp. z o.o.
2 0 2 1 3 0 0 0 0 4 2 0 0 1 0 3 1 6 4 7 8 7 0 0 0 1
Prenumerata Linux Magazine
P r e n u m e r a t a
202130000420010316
L i n u x
Mangalia 4, 02-758 Warszawa
47870001
N e w
M a n g a l i a
L i n u x
M e d i a
4 ,
M a g a z i n e
S p .
0 2 - 7 5 8
z
o . o .
W a r s z a w a
Linux New Media Sp. z o.o.
2 0 2 1 3 0 0 0 0 4 2 0 0 1 0 3 1 6 4 7 8 7 0 0 0 1
Prenumerata Linux Magazine
P r e n u m e r a t a
Mangalia 4, 02-758 Warszawa
84
L i n u x
PAŹDZIERNIK 2010 NUMER 80
L i n u x
M a g a z i n e
www.linux-magazine.pl
W NUMERZE
PRENUMERATA
Formularz zamówienia prenumeraty
Prosimy o czytelne wypełnienie formularza i przesłanie go do nas w następujący sposób:
faksem na numer +48 22 642 70 05
lub pocztą na adres:
Linux Magazine, ul. Mangalia 4
02-758 Warszawa
Można również wypełnić formularz zamówienia
przez Internet dostępny pod adresem:
http://linux-magazine.pl/Subs
Zamawiam prenumeratę „Linux Magazine”:
26
prenumerata dwuletnia – 24 numery z DVD
prenumerata roczna – 12 numerów z DVD
prenumerata półroczna – 6 numerów z DVD
prenumerata kwartalna – 3 numery z DVD
48
Początek prenumeraty „Linux Magazine” od numeru
Dane niezbędne do wystawienia faktury
Nazwa firmy
Ulica
Kod pocztowy
Miasto
numer NIP
tel. kontaktowy
e-mail kontaktowy
Adres do wysyłki (jeśli jest inny niż adres faktury)
Odbiorca
Ulica
kod pocztowy
Miasto
Dodatkowe uwagi
Pytania dotyczące prenumeraty prosimy kierować na adres: [email protected].
Osoby prywatne prosimy o uregulowanie płatności na nasz rachunek.
Dla firm - na podstawie danych powyższego formularza - wystawiamy i wysyłamy pocztą fakturę VAT.
Istnieją dwa sposoby zapłaty za prenumeratę „Linux Magazine”:
• płatność gotówką (za pomocą poniższego blankietu wpłaty)
• przelew (w dowolnej formie) na nasze konto:
Linux New Media Polska Sp. z o. o.
ul. Mangalia 4
02-758 Warszawa
20 2130 0004 2001 0316 4787 0001 Volkswagen Bank Polska S.A.
www.linux-magazine.pl
NUMER 80 PAŹDZIERNIK 2010
85
w następnym numerze
Numer 81
Webmastering
Numer 81 / Listopad 2010
WWW to dziś najbardziej istotny element Internetu, cięgle ewoluujący wraz ze
zmieniającymi się technologiami. W przyszłym miesiącu przyjrzymy się niektórym z nich.
Przedstawimy raport z rozwoju standardu HTML 5, dzięki któremu oglądanie filmów w
Internecie nie będzie już wymagało instalacji dodatkowych wtyczek, takich jak Flash.
Opiszemy też prostą metodę dodania obsługi baz danych do aplikacji webowej za
pomocą przyjaznego JavaScriptowi projektu PublicSQL i pokażemy, jak używać Skipfisha
do testowania zabezpieczeń aplikacji webowych.
David Mark, 123RF
86
PAŹDZIERNIK 2010 NUMER 80www.linux-magazine.pl
Pierwsza wirtualna konferencja w Polsce
Serdecznie zapraszamy do udziału w pierwszej w Polsce całkowicie wirtualnej
konferencji poświęconej rozwiązaniom Red Hat/JBoss i Open Source,
która odbędzie się już
wiadomości z pierwszej ręki!
Udział Gości Specjalnych z firmy Red Hat, m.in. Frank Weyns
(Principal Solution Architect) i Phil Andrews (Regional Director EMEA).
Zapraszamy do wysłuchania wykładów światowych ekspertów na temat
budowy i infrastruktury Cloud, wirtualizacji, nowej wersji Satellite Server
oraz bezpieczeństwa w wirtualnym świecie.
Mogą Państwo do nas dołączyć z dowolnego miejsca - wystarczy rejestracja
i dostęp do internetu. W programie przewidziany czat na żywo z prelegentami
oraz ciekawe konkursy z nagrodami.
Agenda spotkania dostępna na stronie konferencji: www.OpenSourceDay.pl
Udział w konferencji jest bezpłatny.
Zapraszamy do rejestracji!
http://opensourceday.pl
superp
a
l
d
a
j
c
o
m
o
r
Linux
w
ó
k
i
n
Czytel
n
o
i
t
i
d
unity E
m
m
o
C
e
n
i
z
a
g
Ma
Tylko teraz trzy numery prenumeraty próbnej
„Linux Magazine”
tradycyjnego wydania
dla każdego Czytelnika „Linux Magazine” Community Edition za 45 zł!
3 NUMERY PRÓBNE
45
ZA
ZŁOTYCH
Zamów:
[email protected]
lub 22 742 14 55, podając hasło
„Community Edition
prenumerata próbna”.