Linux

Metadane plików graficznych (EXIF)

Każdy plik posiada szereg opisujących go atrybutów. Możemy się o tym przekonać wykorzystując narzędzia ls lub stat . W ich przypadku zostaną nam zwrócone takie informacje jak rozmiar pliku, data modyfikacji czy też prawa dostępu. To właśnie są metadane opisujące pliki w obszarze systemu plików i są one wymagane, by system operacyjny działał prawidłowo. To jednak nie jedyne metadane, z którymi spotykamy się na co dzień. Najlepszym przykładem są zdjęcia czy filmy robione smartfonami czy też aparatami lub kamerami cyfrowymi. Każdy plik stworzony za pomocą tych urządzeń zawiera w sobie bardzo rozbudowane informacje, które nie zawsze chcielibyśmy udostępniać. W tym wpisie skupimy się głównie na danych EXIF zawartych w plikach graficznych, które postaramy się wydobyć, zmienić i usunąć.

Quake II pod linux'em bez Wine

Linux nie nadaje się za bardzo na konsolę do gier i do tego stwierdzenia raczej nikogo nie trzeba przekonywać. Wszyscy znamy projekt WineHQ, który umożliwia odpalanie szeregu aplikacji z windowsa, w tym też i gier, ale zwykle też trzeba się nieco napracować, by daną grę uruchomić pod Wine. Nawet jeśli się nam to uda, to i tak zawsze będziemy mieć problemy czy to z wydajnością, czy też jakimiś mniej lub bardziej dającymi się we znaki błędami. Bardzo rzadko zdarza mi się grać w cokolwiek ale jest kilka kultowych gierek z lat '90, które można odpalić na linux'ie bez zaciągania do tego Wine. Jedyne czego nam potrzeba to posiadać nośnik z plikami do danej gry. W tym wpisie postaramy się odpalić Quake II na 64 bitowym debianie.

Emulacja rolek myszy (scroll)

Na forum DUG pojawił się ciekawy temat dotyczący emulacji rolek myszy (scroll) w urządzeniach, które ich nie posiadają. W tym przypadku chodziło o bliżej nieokreślony model trackball'a. Niemniej jednak, są też myszy, które może i rolki mają, ale użytkownikom tych urządzeń zwyczajnie nie chce się wysilać, by tymi kółkami kręcić non stop. Jako, że ja się zaliczam do tej grupy osób, pomyślałem, by zaimplementować sobie ficzer, który sprawi, że moja bardzo wypasiona mysz będzie miała pod prawym przyciskiem również emulację scroll'a. Oczywiście dalej będzie można klikać prawym przyciskiem, by uzyskać dostęp do menu kontekstowego i pod tym względem nic się nie zmieni. W tym wpisie sprawdzimy jak taka emulacja rolek wygląda w praktyce.

Nagłówek kontenera LUKS trzymany na pendrive

Jeśli kiedyś rozważaliśmy umieszczenie pliku klucza (keyfile) do zaszyfrowanego kontenera LUKS na pendrive, to ciekawszą alternatywą może okazać się umieszczenie całego nagłówka takiego kontenera na zewnętrznym nośniku. Ma to tę przewagę nad keyfile, że wszystkie informacje zapewniające dostęp do kontenera, wliczając w to klucz główny, są oddzielone od zaszyfrowanych danych. W ten sposób nawet jeśli kontener wpadnie w niepowołane ręce, to nie ma żadnego sposobu na to, by ten ktoś te dane odzyskał, no bo przecie nie ma klucza szyfrującego. Przechwycenie hasła również nic to nie zmieni, no chyba, że ten ktoś zdobędzie również pendrive z nagłówkiem kontenera. Z ludzkiego punktu widzenia, to na takim dysku będą znajdować się jedynie losowe dane i do tego w formie kompletnie nieczytelnej dla człowieka (brak systemu plików). Niemniej jednak, jest kilka rzeczy, o których warto pamiętać, gdy w grę wchodzi nagłówek LUKS i to o nich porozmawiamy sobie w tym wpisie.

Klucz główny kontenera LUKS i jego odzyskanie

Kontenery LUKS to takie wynalazki, za których pomocą jesteśmy w stanie zaszyfrować całe dyski twarde, a właściwie to znajdujące się na nich dane. Taki kontener składa się głównie z nagłówka, który jest umieszczany na początku partycji. By być w stanie dokonać szyfrowania i deszyfrowania informacji w locie, system musi posiadać klucz główny (master key). Ten klucz jest przechowywany w nagłówku i by go wydobyć, musimy wprowadzić jedno z haseł do kontenera. Później klucz wędruje do pamięci, a hasło jest z niej usuwane. W ten sposób system ma dostęp do klucza głównego przez cały czas począwszy od chwili otwarcia kontenera, aż do momentu jego zamknięcia. Ten klucz jesteśmy w stanie bez większego problemu wydobyć, co może być bardzo przydatne na wypadek zapomnienia hasła, czy też uszkodzenia samego nagłówka. W tym wpisie postaramy się odzyskać klucz główny zaszyfrowanego kontenera LUKS.

Backup systemu przy pomocy LVM snapshot

W dzisiejszych czasach systemy operacyjne są bardziej odporne na błędy niż to miało miejsce kilka czy kilkanaście lat temu. Bardzo ciężko jest się zatem odnaleźć w sytuacji, gdzie nasz linux odmawia współpracy i nie chce się w ogóle uruchomić. Niemniej jednak, jeśli chodzi o samą kwestię naprawiania szkód po ewentualnej awarii systemu, to, jakby nie patrzeć, zajmuje ona nasz cenny czas. Oczywiście takie błędy sprawiają, że mamy szansę nieco zgłębić strukturę używanego systemu operacyjnego ale też pojawiają się one w najmniej oczekiwanym momencie. W takiej sytuacji nie ma mowy byśmy siedzieli paręnaście minut i zastanawiali się nad tym dlaczego coś nie działa jak należy. Jest kilka mechanizmów bezpieczeństwa, które mogą nam nieco czasu zaoszczędzić. W tym wpisie omówimy sobie zagadnienia związane z LVM snapshot, czyli migawką systemu, którą możemy wykonać praktycznie natychmiast i w razie problemów przywrócić system do stanu sprzed wprowadzenia w nim zmian.

Domyślne aplikacje w oparciu o typy plików (MIME)

Pełne środowiska graficzne zwykle oferują odpowiednie narzędzia, które mogą posłużyć skonfigurowaniu domyślnych aplikacji. Jesteśmy zatem w stanie bardzo prosto przypisać szereg typów MIME do odpowiednich programów. Wobec takiego stanu rzeczy, przy próbie uruchomienia jakiegoś pliku, ten zostanie odpalony przez konkretną aplikację. Niemniej jednak, jeśli chodzi o środowiska graficzne oparte o menadżery okien, np. Openbox, to na dobrą sprawę mamy bardzo małe pole manewru. Niezależnie czy korzystamy z GNOME, KDE, XFCE, MATE czy też Openbox'a, wszystkie z nich wykorzystują dokładnie ten sam mechanizm wiązania aplikacji z typami plików. Możemy zatem ominąć te wszystkie graficzne nakładki i ręcznie skonfigurować sobie typy MIME, tak by działały niezależnie od wykorzystywanego środowiska graficznego. W tym wpisie spróbujemy przyjrzeć się nieco bliżej konfiguracji tego całego mechanizmu.

Konfiguracja serwera dźwięku PulseAudio

Wielu użytkowników linux'a nie przepada zbytnio za PulseAudio, bo ten z jakiegoś powodu sprawia u nich same kłopoty. U mnie ten serwer dźwięku działa przyzwoicie i zwykle nie ma z nim żadnych problemów. Obecnie ten projekt jest już na tyle dojrzały, że te większe środowiska graficzne zwyczajnie polegają na nim w zależnościach. Jeśli jednak instalowaliśmy debiana za pomocą narzędzia debootstrap i konfigurowaliśmy osobno graficzną sesję Xserver'a, menadżer logowania LightDM czy też menadżer okien Openbox, to raczej zależy nam na minimalnym środowisku, które może się zwyczajnie obejść bez PulseAudio. Niemniej jednak, PulseAudio ma kilka ciekawych bajerów, których ALSA nie posiada. By się nie rozpisywać zbytnio, mogę wspomnieć choćby o możliwościprzesyłania dźwięku przez sieć, czy też o takim ficzerze jak normalizacja głośności. Są to głównie zabawki dla nieco bardziej zaawansowanych użytkowników i gdy ich nie potrzebujemy, to serwer dźwięku nam się raczej do niczego nie przyda. Warto jednak się zaznajomić z tym nieco bardziej zaawansowanym kawałkiem oprogramowania i w tym wpisie postaramy się nieco omówić instalację i konfigurację tego serwera dźwięku.

Menadżer okien Openbox

Spora większość środowisk graficznych rozrosła się obecnie nieco i ich instalacja na maszynach wyposażonych w niewiele pamięci RAM może nie wchodzić w grę. Nie jesteśmy też skazani na życie w konsoli, ani na kupno nowego sprzętu. Możemy nieco odchudzić instalację pozbywając się zbędnych usług, których tak naprawdę nie potrzebujemy. Poza tym, praktycznie każde z graficznych narzędzi, przy pomocy których chcemy konfigurować linux'a, ma tekstowe zamienniki, lub też o wiele lżejsze alternatywy. Jednak w przypadku, gdy korzystamy z takich rozbudowanych środowisk jak GNOME, to nie koniecznie da się usunąć szereg tych zasobożernych komponentów. Pozostaje nam zwykle jedna opcja, którą jest usunięcie całego środowiska graficznego i zainstalowanie potrzebnych nam komponentów osobno. Jako, że mamy już opisanyproces instalacji debiana przy pomocy debootstrap, instalację i konfigurację Xserver'a, jak i również menadżera okien LightDM, to przyszedł czas na omówienie niezbędnego w sesji graficznej menadżera okien. W tym wpisie skupimy się głównie na instalacji i konfiguracji Openbox'a.

Menadżer logowania LightDM

Istnieje kilka sposobów na to, by uruchomić sesję graficzną Xserver'a. W przypadku, gdy nie wykorzystujemy zaawansowanych środowisk graficznych, zwykle korzystamy z polecenia startx wydawanego zaraz po zalogowaniu się na konsolę TTY. Niemniej jednak, nawet w tych najprostszych środowiskach graficznych możemy pokusić się o instalację lekkiego menadżera okien, tak by nie musieć konfigurować samodzielnie szeregu opcji sesji. Menadżery logowania (display managers) mają na celu zrobienie dokładnie tego samego co pliki ~/.xinitrc i ~/.xserverrc , z tym, że w nieco bardziej przyjaznej dla użytkownika formie. W tym wpisie przyjrzymy się nieco dokładniej menadżerowi LightDM. Zostanie także omówiony sposób blokowania aktywnej sesji Xserver'a bez potrzeby jej zamykania przy pomocy narzędzia light-locker.