Java-package z powrotem w Debianie.

Jakiś czas temu Sun zmienił politykę dotyczącą wydawania swojej wersji Javy, w wyniku czego wyleciała ona zarówno z Ubuntu, jak i Debiana. Użytkownicy zostali z niezaktualizowanymi wersjami, więc obie dystrybucje skierowały swoje zainteresowanie w stronę OpenJDK, która teoretycznie ma zapewnić wystarczającą funkcjonalność. Więcej o sprawie można poczytać tu w przypadku Debiana, oraz tu w przypadku Ubuntu. Ten drugi link zawiera instrukcję co zrobić, żeby mieć bezpieczny system, czyli opis migracji do OpenJDK na Ubuntu (IIRC dokładnie to samo należy zrobić w przypadku Debiana).

Fajnie, że jest wolne rozwiązanie, fajnie, że pewnie projekt OpenJDK dostanie niezłego kopa, jeśli chodzi o rozwój, ale jednak nie wszystkim w tej chwili wystarcza OpenJDK, które jest wolniejsze i… nie zawsze działa poprawnie (ja miałem problem z appletami VNC, które przydają się przy administracji sprzętem, zwłaszcza w przypadku rozwiązań typu KVM…). Wybór był trojaki: instalacja ręczna Javy od Sun, stara, dziurawa wersja albo niedziałanie aplikacji.

Pierwszy wybór jest męczący, jeśli ktoś lubi mieć wszystko w systemie spaczkowane (ja lubię), pozostałe dwa są niezbyt dopuszczalne w praktyce… Cieszy mnie więc reaktywacja projektu java-package (aktualnie dostępny w unstable, jeśli wszytko pójdzie dobrze, będzie we Wheezy), czyli prymitywnego skądinąd narzędzia pozwalającego na zrobienie w prosty sposób pakietu deb z Javą od Sun. Sam fakt spaczkowania oczywiście nie wpływa na działanie w żaden sposób, ale na pewno ułatwi utrzymanie porządku w systemach poprzez włącznie Javy od Sun do systemu zarządzania pakietami, wrzucenie do swojego repozytorium pakietów itp.

Szybki test Freenetu.

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

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

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

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

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

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

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

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

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

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

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

Dziwny problem z Javą i siecią w Debianie.

Z programów napisanych w Javie korzystam raczej rzadko (wyjątkiem jest bloxer2, którym od dłuższego czasu wrzucam tu wpisy), więc nie zauważyłem tego wcześniej. Debian w wersji Squeeze, Java z repozytorium (wersja 6.20-dlj-1).

Jedna ze stron nie mogła załadować appletu i rzucała:

load: class VncViewer.class not found
[różności] 
Caused by: java.net.ConnectException: Network is unreachable

Ta sama aplikacja nie działała wcześniej na samodzielnie robionej Javie od Sun, z kolei działała (i nadal działa) na różnych wersjach Javy w Debianie Lenny. Na szczęście coś mi świtało, że ogólnie jest problem z IPv6 w Javie, szybkie gógiel potwierdził, więc pozostało znalezienie, co trzeba zmienić. Dobrzy ludzie z IRCa pomogli (!java ipv6), więc przybliżę rozwiązanie.

Winne jest zmienione domyślne ustawienie dla IPv6 w Debianie Squeeze. Okazuje się, że błąd jest zgłoszony, a działanie sieci pod Javą przywraca (tzn. w części aplikacji, niektóre działają bez problemu) ustawienie w pliku /etc/sysctl.d/bindv6only.conf:

net.ipv6.bindv6only = 0