Linux a FreeBSD czyli FUD w wydaniu FreeBSD.

Przy okazji niedawnej informacji o benchmarku Debiana z kernelem Linux i Debiana z kernelem FreeBSD wywiązała się dyskusja nt. mitycznej większej szybkości FreeBSD vs. Linux. Jako przykład nierzetelnej informacji nt. porównania Linuksa i FreeBSD pojawił się przykład tej stronki. Faktycznie, niekompetencja tego porównania jest ogromna, stąd wpis.

Zdaję sobie sprawę, że stronka jest przestarzała, ale… jest (cała dokumentacja do FreeBSD jest równie aktualna?). A część błędów w porównaniach była aktualna zawsze. Zarzuty (tylko tam, gdzie IMO Linux zyskał niezasłużenie niższą ocenę niż FreeBSD):

  1. Performance – porównanie starego kernela – linia 2.4. Do tego odnośnik do benchmarku na który się powołują nie działa.
  2. Security – ujemny punkt dla Linuksa to stanowczo za dużo. Chyba, że porównuje się typowo desktopowe dystrybucje, ale tu z kolei przydałby się punkt szybkość rozwoju systemu, gdzie FreeBSD zostaje daleko w tyle. Pewnie dlatego punkt pominięty.
  3. Filesystem – ext2 to przeżytek, chyba żadna dystrybucja nie korzysta z tego domyślnie. Porównywać trzeba by ZFS i ext4. No to proszę, świeże porównanie szybkości ZFS, ext4, brtfs. Oczywiście sama szybkość filesystemu to nie wszystko.
  4. Device Drivers – stawianie FreeBSD wyżej pod względem driverów (w tym zamkniętych binarnych) to jakiś żart. Spora część sprzętu po prostu nie ma żadnego drivera dedykowanego dla FreeBSD. Faktem jest, że pod Linuksem sterowniki binarne wymagają czasem konkretnej wersji kernela (patrz fglrx) ale nie jest to – i z tego co pamiętam nigdy nie było – tak dramatyczne, jak opisują.
  5. Development environment – zarzucanie, że skompilowana aplikacja z Red Hat nie działa na Slackware to totalne nieporozumienie. Z jednej strony jest porównywany jest jeden system (AKA dystrybucja *BSD), z drugiej różne dystrybucje. Poza tym, znakomita część oprogramowania działa po przeniesieniu binarek (patrz Debian i Ubuntu, patrz alien).

Zastanawiam się, jak obecnie wygląda propaganda FreeBSD? Nadal jest równie „rzetelna”? Jeśli chodzi o binarne sterowniki, to przykład „dobrego wsparcia sprzętu” i „stabilnych sterowników binarnych” opisywałem w tym wpisie o Opensolaris, FreeBSD i Linuksie.

Zarządzanie pakietami w Debianie – wajig.

Narzędzi do zarządzania pakietami w Debianie jest sporo: poczynając od graficznego synaptic, poprzez zalecane, ale niekoniecznie powszechnie używane – szczególnie przez administratorów na serwerach – aptitude, po nieśmiertelnego apta i dpkg. Nie ma co ukrywać, mimo swoich wad apt jest popularny i używany. Jednak nie tylko prędkość ma nienajlepszą, funkcjonalność także pozostawia nieco do życzenia.

Nie można korzystać z jego pomocą z lokalnych pakietów deb – wymaga, by były w repozytorium. Oczywiście w takim wypadku można się posiłkować dpkg (to zawsze można), ale… statystyki ilości zużywanego przez pakiety miejsca i inne bajery nadal będą nieosiągalne. No i trzeba pamiętać, czy chcemy skorzystać z apt-get, apt-cache, apt-file czy jeszcze innego polecenia.

Dawno, dawno temu odkryłem wajig, czyli nakładkę na apta i przyległości oraz dpkg. Co prawda wymaga Pythona (plus, do niektórych funkcjonalności potrzebne będą inne programy zewnętrzne), co oznacza, że obecnie w wersji podstawowej systemu potrzebne będą Perl i Python, ale za to pozwala na wszystko to, na co apt, plus wiele bonusów. IMO sprawdza się doskonale zarówno na desktopie, jak i na serwerach. Najważniejsze i najciekawsze moim zdaniem możliwości wajig:

  • wajig sizes – wyświetla rozmiar zainstalowanych pakietów (posortowany); przydatne jeśli miejsce się kończy miejsce na partycji i szukamy co by tu można wywalić.
  • wajig whichpkg – podaje do którego pakietu należy dany plik; bardzo przydatne, szczególnie jeśli wiemy, jakiego polecenia chcemy użyć, a nie wiemy, który pakiet w Debianie je zawiera.
  • wajig changelog – wyświetla changelog dla danego pakietu.
  • wajig toupgrade – wyświetla listę pakietów do aktualizacji, wraz z zainstalowaną i proponowaną wersją.
  • wajig integrity – wymaga debsums, sprawdza sumy kontrolne zainstalowanych pakietów; korzysta z sum kontrolnych, nędzna namiastka IDS i poprawności zainstalowania pakietów; niestety, posiadanie sum kontrolnych jest opcjonalne w Debianie, więc nie zawsze działa, ale lepszy rydz, niż nic.
  • wajig daily-upgrade – robi update, a następnie dist-upgrade. Przydatne do aktualizacji systemu.
  • wajig bug – wymaga reportbug, wyświetla listę zgłoszonych błędów dla danego pakietu.
  • wajig commands – wyświetla wszystkie dostępne komendy (a jest ich sporo) wraz z opisami.

Jeśli ktoś do tej pory korzysta z apt, to polecam zainteresować się managerem pakietów wajig – wygodniejszy i znacznie większe możliwości. I oczywiście można korzystać wymiennie z apt lub dpkg, jeśli zajdzie potrzeba.

Dla tych, którzy wolą klikać niż pisać, istnieje Gnome JIG (polecenie gjig), czyli graficzna nakładka na wajig. Nie korzystałem, więc tylko sygnalizuję istnienie.

Polecana lektura:

  1. http://wiki.xtronics.com/index.php/Wajig
  2. http://linux.togaware.com/survivor/wajig.html

Ostateczne rozwiązanie dla muzyki pod Linuksem.

W niedawnym wpisie szukałem czegoś, co potrafiłoby scrobble’ować do libre.fm i umiało odtwarzać radio internetowe i Jamendo. Jak to napisałem:

Ideałem byłoby coś, co potrafi scrobble’ować i radia internetowe, i dobrze obsługującego zwykłe albumy z dysku, i Jamendo. W sumie kolejność Jamendo -> radia -> albumy z dysku, bo jakoś nie jestem fanem trzymania wybranej kolekcji (co innego odtwarzacz).

Okazuje się, że się da (generalnie), co więcej, jest to bardzo proste, eleganckie i wydajne. Wykorzystać trzeba MPD (odtwarzanie), GMPC (sterowanie) oraz mpdscribble (scrobble’owanie; wspiera libre.fm, jamendo i last.fm jednocześnie). W Debianie (testing AKA Squeeze) wystarczy:

wajig install gmpc mpd gmpc-plugins mpdscribble

I zmiany w plikach konfiguracyjnych. Nieco bardziej użytkownikocentryczne i wymagające więcej pracy podejście jest opisane w tym wpisie, bardzo ładnie opisującym konfigurację mpd i mpdscribble, na który na szczęście szybko (w sumie od razu) trafiłem. Ja robiłem bardziej po debianowemu, z wykorzystaniem istniejących plików konfiguracyjnych, a nie per użytkownik. Zaleta taka, że prościej, mpd i mpdscribble wstają przy starcie systemu, od kopa, a z komputera i tak tylko ja korzystam.

Nie działa mi tylko – póki co – obsługa Jamendo (znaczy samej playlisty, scrobblera nie sprawdzałem, ale pewnie działa, bo to inny pakiet). Wygląda na jakiś błąd w pluginie do GMPC – zamiast utworów w playliście lądują fragmenty URLi. Ale wiem, że się da (tzn. pod Ubuntu działa).

Z dużych zalet – wygląda, że poprawnie scrobble’uje radio (przynajmniej opisane kiedyś Radio Baobab). No i jest leciutkie (jakieś 10% procesora dla radia), zwłaszcza w porównaniu z playerami webowymi libre.fm czy Jamendo. Jak dla mnie – miodzio. 🙂