Automatyczne aktualizacje Debiana – HOWTO

Utrzymywanie aktualnych wersji oprogramowania to podstawa bezpieczeństwa. Nawet w przypadku zwykłego desktopa ma to znaczenie, szczególnie jeśli chodzi o przeglądarki internetowe. Pomóc w tym mogą automatyczne aktualizacje pakietów.

Tradycyjna, ręczna aktualizacja oprogramowania w Linuksie sprowadza się w większości dystrybucji do odświeżenia listy dostępnych pakietów i zainstalowania nowych wersji. Dla dystrybucji opartych o pakiety deb będzie to
apt-get update; apt-get dist-upgrade[1]

W dystrybucjach Linuksa takich jak Debian czy Ubuntu do dyspozycji mamy unattended upgrades, czyli mechanizm pozwalający na automatyczne aktualizacje pakietów. Pozwala on aktualizować wskazane pakiety bez ingerencji zarówno użytkownika, jak i administratora systemu. Poza samą aktualizacją umożliwia skonfigurowanie dodatkowych warunków, jak praca tylko przy podłączonym zasilaczu, wymuszenie rebootu systemu po aktualizacji pakietów, ograniczenie pasma przeznaczonego na pobieranie aktualizacji czy sprzątanie starych wersji kernela.

Aby włączyć mechanizm automatycznych aktualizacji, trzeba zainstalować pakiet unattended-upgrades. Dodatkowo należy wyedytować plik konfiguracyjny:
cat /etc/apt/apt.conf.d/20auto-upgrades
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";

Samą konfiguracją działania automatycznych aktulizacji sterujemy przy pomocy zawartości pliku
/etc/apt/apt.conf.d/50unattended-upgrades.

Opcji jest wiele, od tego, które pakiety wykluczyć z aktualizacji, przez raportowanie mailem, czy wspomniane wcześniej limitowanie szybkości pobierania aktualizacji czy reboot systemu. Domyślna zawartość powinna być OK, jeśli korzystamy wyłącznie z podstawowych repozytoriów. W przypadku posiadania dodatkowych źródeł pakietów, warto sprawdzić czy będą one także aktualizowane i w razie potrzeby dostosować plik.

Przetestować działanie wprowadzonych zmian i ogólnie zachowanie możemy poprzez wydanie polecenia
unattended-upgrades -d

Pokaże ono, które pakiety zostałyby zaktualizowane w naszym systemie.

Trzeba pamiętać, że tego typu nienadzorowana aktualizacja zawsze niesie jakieś ryzyko niepowodzenia. Osobiście korzystam od lat na paru desktopach i nie napotkałem problemów. Jest tam jednak Debian w wersji stabilnej, przeważają repozytoria standardowe, a z dodatkowego oprogramowania są jedynie przeglądarki.

Na koniec polecam lekturę tego opisu automatycznych aktualizacji. Znajdziecie tam wiele dodatkowych szczegółowych informacji i przykładów.

[1] Dostępna jest też mniej inwazyjna wersja polecenia czyli apt-get update. Próbuje ona aktualizować tylko te pakiety, których aktualizacja nie wiąże się z usuwaniem ani doinstalowaniem innych pakietów. Ceną jest pozostawienie w dotychczasowej wersji pakietów, których nie da się zainstalować bez tej operacji. Więcej w manualu apt. Interesującym narzędziem do zarządzania pakietami jest opisywany kiedyś wajig.

Terminal HP T620

Czasy się zmieniają, nawet terminale się zmieniają. Wieki temu miałem terminal T5520, który robił za router i potencjalnie mógł robić za media center dla audio. Teraz szukałem czegoś, na czym mógłby zrobić media center bardziej filmowe. Znaczy, upraszczając: miał działać Netflix.

Rozwiązania dedykowane

Początkowo rozważałem coś w stylu Xiaomi Mi TV Stick albo Xiaomi Mi TV Box. Potem znajomy zainteresował mnie sprzętem Fire TV Stick[1]. Ostatecznie od różnych rozwiązań z Androidem odstraszyły mnie stare wersje systemu oraz uwagi w opisach w stylu „Netflix działa, ale nie wolno aktualizować appki, bo przestanie”. Czyli zauważalny nadchodzący brak wsparcia i możliwości aktualizacji, w tym aktualizacji bezpieczeństwa. Czytaj: spory potencjał na elektrośmieć.

HP T620

Równolegle na horyzoncie pojawił się terminal HP T620.

HP T620
Źródło: strona producenta

HP T620 to tak naprawdę nie konkretny model, a cała rodzina terminali. Łączy je wiele cech wspólnych: duża ilość portów różnego rodzaju, umieszczonych zarówno z przodu, jak i z tyłu, pasywne chłodzenie, energooszczędność (<5 W w idle). Posiadają dwu- lub czterordzeniowy procesor AMD. Pamięć można rozbudować do 16 GB przy pomocy modułów SODIMM. Więcej informacji na stronie producenta.

Wybór

Ostatecznie wygrał sentyment do bezwentylatorowych terminali HP i Linuksa. Po co zamknięty TV stick, skoro można za grosze kupić używany terminal HP T620 z 4 GB RAM? Taki, który będzie nie tylko odtwarzał filmy, ale będzie pełnowartościowym komputerem np. do WWW. I który – co najważniejsze – będzie można zaktualizować.

Jak pomyślałem, tak zrobiłem. Co prawda opisy nie zachęcały, bo HP T620 sprzedawane były jako deklarowane bez podstawki i zasilacza. Podstawki nie potrzebowałem, zasilacz to zwykły laptopowy HP, więc i tak miałem. Ostatecznie przybył egzemplarz z podstawką i zasilaczem. Podstawka w nieidealnym stanie, ale do odratowania. Zresztą nie używam na razie.

Instalacja

Instalacja Debiana stable z drobnymi problemami. Nie pamiętam z czego dokładnie instalowałem, bo chwyciłem co było pod ręką. Jeden instalator upierał się przy GPT, efektem czego był niebootujący się system. Drugi z kolei miał problem z WiFi – znany temat braku firmware w instalatorach Debiana. Ostatecznie po prostu na czas instalacji podpiąłem kabel. Przy okazji przetestowałem działanie systemu uruchomionego z USB. HT T620 posiada USB 3.0, więc powinno być OK. I jest. Zresztą taki był pierwotny plan uruchomienia. Jednak wbudowane 8 GB flash okazało się wystarczające nawet na rozbudowany system.

Wydajność

Przyznam, że początek był rozczarowujący. Po włączeniu Firefoksa i Netfliksa trochę jakby cięło, a procesor na 100%. Po włączeniu filmu było lepiej, ale nadal nie byłem przekonany o pełnej płynności. Zmieniłem przeglądarkę na Brave i jest o niebo lepiej. Nadal duże obciążenie CPU po włączeniu strony, ale już po uruchomieniu filmu jest OK. O tyle, o ile może być OK na i przeglądarce. Bo zdaje się full HD wymaga dodatkowych zabiegów. Nie wiem, nie robiłem, jakość jest zupełnie wystarczająca. Może kiedyś się pobawię.

Netflix i 1080p w przeglądarce

No to na koniec garść linków dotyczących Netfliksa w 1080p w przeglądarce. Nie testowałem póki co.

  1. Watch Netflix in 1080p in Firefox web extension download now
  2. Netflix in 1080p in Chrome
  3. Raspberry Pi Netflix One Line Easy Install – along with Hulu, Amazon Prime, Disney Plus, HBO, Spotify, Pandora, and many others

[1] Niezła strona z „hackami”: firestickhacks.com

LXDE, laptop, jasność i głośność – HOWTO

Jest taka rzecz w laptopach z Linuksem, która często nie działa zaraz po instalacji. Przynajmniej nie na środowiskach korzystających z Openbox, np. LXDE. Chodzi o sterowanie jasnością ekranu oraz głośnością dźwięku, czyli klawisze multimedialne.

Nie pamiętam, czy coś się ostatnio zmieniło, czy zawsze tak było, tylko miałem skonfigurowane, ale ostatnio konfigurowałem laptopa z LXDE i jak wszystko działało, tak sterowanie głośnością i jasnością ekranu – nie. Wydaje mi się, że kiedyś obsługa tzw. klawiszy multimedialnych była robiona przez ACPI i skrypty (zob. linki na końcu wpisu), ale teraz można prościej.

W obu przypadkach wykorzystywany będzie plik ~/.config/openbox/lxde-rc.xml.

Jasność

Na początek kontrola jasności. W przypadku karty intela, bo taką miałem, kontrola jasności odbywa się z wykorzystaniem programu xbacklight, który musiałem doinstalować. Rozwiązanie powinno działać także dla innych kart. Dodatkowo musiałem utworzyć plik /etc/X11/xorg.conf.d/20-intel.conf o następującej zawartości:

Section "Device"
    Identifier "Intel Graphics"
    Driver "intel"
    Option "Backlight" "intel_backlight"
EndSection

W pliku XML zaś dodałem:

<keybind key="XF86MonBrightnessDown">
  <action name="Execute">
    <command>xbacklight -5</command>
    <startupnotify>
      <enabled>yes</enabled>
      <name>Decrease screen brightness</name>
    </startupnotify>
  </action>
</keybind>
<keybind key="XF86MonBrightnessUp">
  <action name="Execute">
    <command>xbacklight +5</command>
    <startupnotify>
       <enabled>yes</enabled>
       <name>Increase screen brightness</name>
    </startupnotify>
  </action>
</keybind>

Głośność

Trzeba oczywiście mieć zainstalowane programy, które będziemy wykorzystywać – w przypadku instalacji pełnego środowiska LXDE i Debiana 10 wszystko już było zainstalowane. Natomiast w pliku konfiguracyjnym XML wystarczy dodać:

  <keybind key="XF86AudioRaiseVolume">
    <action name="Execute">
      <execute>pactl set-sink-volume 0 +10%</execute>
    </action>
  </keybind>
  <keybind key="XF86AudioLowerVolume">
    <action name="Execute">
      <execute>pactl set-sink-volume 0 -10%</execute>
    </action>
  </keybind>
  <keybind key="XF86AudioMute">
    <action name="Execute">
      <execute>pactl set-sink-mute 0 toggle</execute>
    </action>
  </keybind>

Istnieją warianty wykorzystujące inne polecania pamixer czy amixer (zob. linki).

Oczywiście w ten sposób można zmieniać zachowanie dowolnych skrótów i wykorzystywać dowolne klawisze, nie tylko te wymienione. Pełna lista w źródłach (zob. linki)

Linki:

UPDATE: Skoro już konfigurujemy klawisze multimedialne, warto też pod Print Screen dodać robienie screenshotów. Podobno jest domyślnie, nie potwierdzam, ale może „zasługa” unstable.

    <keybind key="Print">
      <action name="Execute">
        <command>gnome-screenshot -i</command>
      </action>
    </keybind>