Przerwa majowa

Uważni czytelnicy dostrzegli, że w zeszłym tygodniu nie pojawił się żaden wpis. Regulamin DSP2017 dopuszcza przerwy w prowadzeniu projektów i… zeszły tydzień należy potraktować jako przerwę. Zresztą ponad tydzień, bo w zasadzie majówka cała nieprojektowa, z małym wyjątkiem, o którym zaraz. W każdym razie z konkursu się nie wycofałem i mam nadzieję, że tygodni roboczych będzie wystarczająco dużo. Nie liczyłem ile jest dokładnie, a zarejestrowałem się z opóźnieniem. Tak czy inaczej, nie chodzi o to by złowić króliczka…

Przerwy są dobre, czy to w pracy jako urlop, czy przy projekcie. Można spojrzeć z boku, wyskoczyć z utartych torów i nabrać energii. W każdym razie zeszły tydzień był mocno pracowity, a wypełnianie PITów, to nie jest coś, co warto odkładać na ostatnią chwilę, powiadam wam. Zresztą warto wcześniej sprawdzić, czy ma się komplet papierów, jak się okazuje. W każdym razie zdobyłem kolejny skill w zakresie obsługi podatków. Ale ostatecznie wszystko w miarę wyprostowane.

Potem był czas dobrych imprez i intensywnego chodzenia po sklepach celem urządzenia oświetlenia – powiedzmy, że 20% zrobione. A w międzyczasie doglądanie zewnętrznych rzeczy – a to serwer się zaczął restartować bez przyczyny (odpowiedź ISP rozwaliła, ale restarty ustały, hm…), a to ktoś zepsuł format danych, z których korzystam… Chwilę trwało, zanim przyswoili, że błąd zgłasza osoba z zewnątrz, a nie pracownik. Fun, fun, fun. Tylko czasu szkoda.

Udało mi się zrobić dwie związane z projektem rzeczy: przetestować uruchomienie programu na czystym systemie z ARM (działa, czemu miałby nie działać?) oraz wstawić Raspberry Pi zamiast Banana Pi jako router, czyli odzyskać właściwą sondę. Co prawda to ostatnie nie udało się w 100%, bo robiłem na szybko, trochę czasu zeszło na ustalenie, że NAT lepiej działa, jak się włączy forwarding, a po wszystkim okazało się, że logowanie przy pomocy autossh coś nie działa, ale powiedzmy, że wariant minimum jest zrobiony. Z powodu małej ilości czasu nie zaryzykowałem też wpięcia drugiego modemu.

Przerwa i programowanie w pracy skłoniło ku refleksji, że może jednak lepiej będzie docelowo przepisać to obiektowo. Głównie chodzi o łatwość wykorzystania kodu w innych projektach – dokładnie to przerabiam w pracy. W cele projektu oficjalnie tego nie wpisuję póki co, ale jeśli tylko starczy czasu, to będzie próba refaktoringu kodu.

Jak włączyć SSH w Raspbian?

Sytuacja zmusiła mnie do odkopania RPi. Szybko potrzebowałem przetestować jedną rzecz, więc wybrałem Raspbian Jessie Lite. Główna zaleta to niewielki rozmiar i kernel w wersji 4.4. Po włączeniu i pobraniu IP przez RPi okazało się jednak, że nie sposób się zalogować po SSH do Raspbian – nic nie słuchało na porcie.

Instrukcje, które znalazłem, są dobre, jeśli ktoś ma monitor i klawiaturę. Ja nic takiego pod ręką nie miałem. Zacząłem więc przyglądać się skryptom startowym. Ale w międzyczasie zapytałem na IRCu i dostałem linka, który podaje prosty przepis na włączenie SSH. Wystarczy utworzyć plik ssh o dowolnej zawartości w katalogu /boot na karcie SD z Rasbianem:

touch /boot/ssh

Oczywiście powyższe zadziałałoby, gdyby było wykonywane bezpośrednio z Raspberry Pi, trzeba wziąć poprawkę na punkt montowania, ale wiadomo o co chodzi. 😉

Po tym zabiegu SSH w Raspbian jest dostępne po uruchomieniu systemu. Zalogować się można tradycyjnie przy pomocy użytkownika pi i hasła raspberry.

SSH w Raspbian wyłączono w domyślnej wersji ze względów bezpieczeństwa (tu link).

Z kronikarskiego obowiązku: w Raspbianie bazujązym na Jessie wiele się nie zmieniło. Swap nadal domyślnie włączony i zarządzany w dziwny sposób (nie /etc/fstab), journal na FS obecny, sterowanie LED i odczyt temperatury bez zmian.

3 powody dla których nie kupię Raspberry Pi 3

Blisko trzy lata temu (ależ ten czas leci) pisałem, dlaczego nie kupię Raspberry Pi. Parę dni temu opublikowana została specyfikacja Raspberry Pi 3. I też widzę, że nie kupię, choć cieszę się na płytkę z 64 bit ARM. Powody są trzy:

  1. Brak portu SATA. Najmniej istotny, bo można podłączyć dysk po USB (i raczej tak zrobię), ale nadal trochę boli.
  2. Tylko 1 GB RAM. Mało. Na desktop – przeraźliwie mało. IMO minimum dla desktopa na dzień dzisiejszy to 2 GB RAM. Zresztą skoro mocniejszy procesor, to i serwer można by bardziej obciążyć, a tu RAM też się przydaje.
  3. 100 Mbps ethernet. Dla rozwiązań typu NAS 100 Mbps to zdecydowanie za mało.

Co zamiast Raspberry Pi 3? Czaję się na najwyższy model Pine 64 czyli PINE64+ 2GB. Co prawda też nie ma SATA, ale ma 1Gbps kartę sieciową oraz 2 GB pamięci RAM. I ma kosztować przy tym 29 dolarów + 12 dolarów za wysyłkę do Polski.

Wady Pine64? Wspomniany brak SATA, jeśli ktoś potrzebuje USB i bluetooth, to musi dołożyć kolejnych 10 dolarów, albo kupić wersje na USB (2,5 w Chinach) i zająć oba porty. No i trzeba poczekać do maja.

UPDATE To wszystko oczywiście z mojego punktu widzenia, który można streścić „małe, tanie, mocne i Linux działa”. Z punktu widzenia kogoś, kogo bardziej interesuje zabawa elektroniką będzie to wyglądało zupełnie inaczej, bo w grę wchodzi choćby łatwość supportu czy dostępność rozszerzeń.

Warto też przeczytać komentarz Piotra (pierwszy) – Odroid wygląda nieźle (jak zwykle zresztą), choć jest nieco droższy (jak zwykle zresztą). Patrz porównanie. Czyli ciekawych alternatyw dla Raspberry Pi 3 jest więcej.

Dowiedziałem się też o istnieniu dystrybucji Armbian. Autorzy nie piszą niestety zbyt wiele, ale wygląda interesująco i wspiera wiele płytek. Oferuje świeży kernel i wspiera Debiana (Wheezy, Jessie) oraz Ubuntu Trusty.