sobota, 3 stycznia 2026

Zdalny dostęp do GUI w Debianie (rdp/ssh) (wersja 1min)

To tylko krótka notka.
Poza x11vnc mamy jeszcze dwie inne możliwości, wedle potrzeb.
Pierwsza z nich to 'stare', dobre Windowsowe rdp. Daje nam, tak jak przy vnc, dostęp do "całego" ekranu i środowiska użytkownika. W Debianie instalujemy:
apt install xorgxrdp xrdp
I tyle. Pliki konfiguracyjne mamy w /etc. Usługa systemowa 'tworzy' się w trakcie instalacji, więc każdy sobie musi sam "dopracować" poszczególne ustawienia.

Drugą z opcji, jeżeli korzystamy z ssh, jest tzw X11 Forwarding. W przeciwieństwie do rdp i vnc poniższa funkcja umożliwia nam uruchomienie jednego konkretnego programu z poziomu terminala klienckiego. Sprawdzamy co mamy w pliku konfiguracyjnym:
cat /etc/ssh/sshd_config | grep -e X11Forwarding -e PermitUserEnvironment -e X11UseLocalhost
U mnie jest ustawione na:
X11Forwarding 
PermitUserEnvironment yes 
X11UseLocalhost yes
I tyle. Restartujemy usługę:
systemctl restart ssh.service
I to wszystko.

Druga opcja, umożliwia nam, zamiast instalacji całego środowiska graficznego, instalację np jednego konkretnego programu (do np księgowości, czy co tam potrzebujemy.

Programów graficznym pokroju gimpa czy innego blendera raczej bym nie uruchamiał, ale do mniej wymagających spraw dobre będą obydwie metody :D pozostała tylko kwestia przekierowania audio (w bliżej nieokreślonej przyszłości, mam już kilka pomysłów).

czwartek, 1 stycznia 2026

Stała częstotliwość pracy procesora CPU (poprawa pracy igpu)

Lata temu do zarządzania energią procesora korzystało się z cpufrequtils. Potem zaszły zmiany, wprowadzono intel_pstate i odpowiednik u AMD. Jest to rozwiązanie na pewno bardziej skuteczne w zarządzaniu energią procesora. U mnie wszystko było OK do czasu, aż podłączyłem pod TV starszego mini pc z Intelem. Jak się okazało, zintegrowana gpu bywa kapryśna bo w końcu jest w pełni zależna od cpu. U mnie w trakcie korzystania z serwisów streamingowych przeglądarka potrafiła znienacka zamknąć kartę i wywalić błąd :D (i to mimo wsparcia sprzętowego dla różnych kodeków)

Problem się objawiał tylko na starszych i trochę słabszych jednostkach jak i5-7500T, trochę mniej na i5-8500T a na zwykłym i5-11400 tego problemu nie zauważyłem.

Co ciekawe, kernel Liquorix na Debianie problemów nie sprawiał i w dodatku ma ustawioną stałą wartość częstotliwości pracy procesora. Z małą pomocą forumowego AI (jak na dzisiejsze standardy...) znalazłem sposób jak ustawić procesor na sztywno.

AI jak to AI, często się myli więc jeśli już musimy to trzeba korzystać bardzo ostrożnie i co najwyżej można się zasugerować ale nie można brać za pewnik.

Na tą chwilę (1.01.2026) rozwiązanie działa, ale jak długo tak będzie, nie wiadomo. Wygląda na to, że poniższa metoda działa również na linux-image-rt-amd64, czyli jednym z kerneli czasu rzeczywistego które zazwyczaj są odradzane w zastosowaniach "multimedialnych".


W Debianie instalujemy:

apt install linux-cpupower

Tworzymy plik z usługą systemową /etc/systemd/system/cpufreq.service:

[Unit]

Description=cpufreq max freq

[Service]

Type=oneshot

ExecStart=/bin/cpupower frequency-set --governor performance

[Install]

WantedBy=multi-user.target

Następnie:

systemctl enable cpufreq.service 

Zanim zrestartujemy system, musimy w pliku /etc/default/grub znaleźć i dopisać pogrubiony wpis:

GRUB_CMDLINE_LINUX_DEFAULT="quiet iwlwifi.power_save=0 pcie_aspm=off intel_pstate=disable"

Po czym:

update-grub2; reboot

Po restarcie sprawdzamy:

cpupower frequency-info

Wynik jak niżej:

analyzing CPU 3:

  driver: acpi-cpufreq

  CPUs which run at the same hardware frequency: 3

  CPUs which need to have their frequency coordinated by software: 3

  maximum transition latency: 10.0 us

  hardware limits: 800 MHz - 2.70 GHz

  available frequency steps:  2.70 GHz, 2.70 GHz, 2.60 GHz, 2.40 GHz, 2.30 GHz, 2.20 GHz, 2.00 GHz, 1.90 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.30 GHz, 1.20 GHz, 1.10 GHz, 900 MHz, 800 MHz

  available cpufreq governors: performance schedutil

  current policy: frequency should be within 800 MHz and 2.70 GHz.

                  The governor "performance" may decide which speed to use

                  within this range.

  current CPU frequency: 2.70 GHz (asserted by call to hardware)

  boost state support:

    Supported: yes

    Active: yes

Oraz cat /proc/cpuinfo | grep MHz:

cpu MHz         : 2700.001

cpu MHz         : 2700.000

cpu MHz         : 2700.119

cpu MHz         : 2700.277

Odchyły mogą wystąpić, procesor czasami zejdzie poniżej 1000MHz ale generalnie trzyma się wysoko. Taktowanie, temperatury itd najwygodniej sprawdza mi się programem htop.


poniedziałek, 22 grudnia 2025

Lyrion Music Server: plugin Youtube, zdalne sterowanie

 Nawiązując do poprzedniego posta.

YT-dlp url extractor ustawiamy na yt-dlpAPI keyClient ID i Client Secret trzeba sobie ustawić według instrukcji dostarczanej przez panel administracyjny. Do kompletu należałoby włączyć YouTube Data API v3 w ustawieniach projektu aplikacja w Google Cloud.


Client Secret, inaczej Secret Key, przy tworzeniu musimy od razu sobie skopiować i zapisać w bezpiecznym miejscu bo później - według komunikatu który mi się wyświetlił - nie będzie możliwości ponownego wyświetlenia.


Oraz wcześniej wspomniany YouTube Data API v3:


Mając działającego Youtube'a, bibliotekę skompletowanej muzyki i dostęp do innych serwisów streamingowych (z których na tą chwilę nie korzystam) mamy tanie radio własnego "pomysłu".

Serwer możemy między innymi kontrolować z poziomu interfejsu webowego lub z poziomu Androida za pomocą aplikacji Squeezer.


Jest pilot, jest YT, jest biblioteka, jest wszystko :D

niedziela, 21 grudnia 2025

Instalacja i konfiguracja Lyrion Music Server na przykładzie Debiana

Całkiem przez przypadek znalazłem ostatnio Lyrion Music Server. Jest to serwer muzyki z masą różnych opcji i dodatków. Okazało się, że instalacja jest cholernie prosta, soft bardzo użyteczny a i jak ktoś ma stary sprzęt grający (tudzież wzmacniacz, głośniki, cokolwiek innego) to wystarczy zainwestować np w jakiś mały komputerek (terminal, mini pc, raspberry pi, cokolwiek podobnego) i mamy na czym słuchać :D

https://lyrion.org/

Poza instalacją Debiana wystarczy zainstalować paczkę deb z powyższej strony (najlepiej z wykorzystaniem gdebi to i dociągnie zależności) oraz dodatkowo wymagany będzie poniższy odtwarzacz:

https://packages.debian.org/trixie/squeezelite

Dla stable instalujemy...:

apt install squeezelite

Pakiet w repo dostępny jest od wydania Debiana Bullseye do Unstable (na 22.12.2025).

Jako że docelowo chciałem mieć możliwość odtwarzania muzyki zgranej z płyt do katalogu domowego docelowego użyszkodnika, to musiałem trochę pokombinować. Serwer tworzy użytkownika squeezeboxserver, więc testowo dodałem go do następujących grup:

gpasswd -a squeezeboxserver users

gpasswd -a squeezeboxserver uzyszkodnik

Uprawnienia dla katalogu domowego:

chmod -R 755 /home/uzyszkodnik

Pozwoli nam to na dostęp do muzyki. Dla list odtwarzania zrobiłem osobny katalog m3u i dla niego inne uprawnienia:

chmod -R 777 /home/uzyszkodnik/m3u

Dodatkowo, w opcjach serwera:


No i to by było na tyle. Reszta konfiguracji odbywa się poprzez panel administracyjny. Dostęp można zahasłować - panel Zaawansowane i Zabezpieczenia.



Konfiguracja transmission-daemon na przykładzie Debiana Stable

Kilka tygodni temu potrzebowałem skonfigurować klienta Transmission w trybie systemowej usługi (tzw demona). Oto bardzo krótki poradnik na przykładzie Debiana Stable (wersja 13 w momencie pisania). U mnie usługa działa na użytkowniku na którym docelowo operuję.

Najpierw instalujemy:

apt install transmission-cli transmission-common transmission-daemon

Usługa po wystartowaniu ładuje sobie konfig i w trakcie wyłączania np systemu nadpisuje wcześniej zapamiętaną konfigurację. Niweluje nam to wprowadzone w między czasie zmiany także jeżeli po powyższej instalacji, o ile usługa sama z siebie wystartuje, wyłączamy:

systemctl stop transmission-daemon.service

Następnie musimy utworzyć następujący plik (katalog, jeśli nie istniejemy, również należy utworzyć)...:

nano /etc/systemd/system/transmission-daemon.service.d/user.conf

... o następującej zawartości:

[Service]

User=

User=xxx

Group=xxx

Naszego użytkownika, w omawianym przypadku xxx, dodajemy do odpowiedniej grupy:
gpasswd -a xxx debian-transmission
W katalogu domowym tworzymy katalog:
mkdir .config/transmission-daemon
I z katalogu plik z ustawieniami:
cp /etc/transmission-daemon/settings.json .config/transmission-daemon/
Zawartość /etc/transmission-daemon profilaktycznie usuwamy (z poziomu roota):
rm -R /etc/transmission-daemon/*
W pliku konfiguracyjnym .config/transmission-daemon/settings.json znajdujemy i zmieniamy następujące linie tak, żeby ściągnięte materiały były np w naszym katalogu domowym:
    "download-dir": "/home/xxx/Pobrane",
    "incomplete-dir": "/home/xxx/Pobrane",
Hasło znajduje się w poniższej linijce...:
    "rpc-password": "jakies-haslo",
Hasło wpisujemy jakie chcemy, transmission-daemon na swój sposób je przetworzy dając wynik w - na pozór - losowych znakach w pliku wyżej (zakładam, że dlatego wczytuje i nadpisuje konfigurację uniemożliwiając dokonanie zmian w trakcie działania).

Teraz wykonujemy z poziomu roota następujące dwie komendy:
systemctl daemon-reload ; systemctl start transmission-daemon.service
I to by było na tyle. Pisane z pamięci, mam nadzieję że się nie pomyliłem gdzieś po drodze :D

niedziela, 14 września 2025

Server VNC z poziomu ekranu logowania - GNU/Linux Debian

Od jakiegoś czasu zachodziła potrzeba uruchomienia serwera vnc na kilku maszynach. Nie zawsze jest czas żeby biegać od ekranu do ekranu, nawet jeżeli są to jednostki do testów itp.


Naskrobałem (no dobra, podobne rozwiązanie można znaleźć...) usługę systemową (unit w systemd pod Debianem 13). Tworzymy plik /etc/systemd/system/x11vnc.service o następującej zawartości:


[Unit]

Description=x11vnc

After=display-manager.service network.target syslog.target

 

[Service]

Type=forking

ExecStart=/usr/bin/x11vnc -forever -display :0 -auth guess -rfbauth plik.z.haslem

ExecStop=/usr/bin/killall x11vnc

Restart=on-failure

 

[Install]

WantedBy=multi-user.target


Tworzymy plik.z.haslem (najwygodniej w katalogu /etc lub ewentualnie /opt):


x11vnc -storepasswd haslo plik.z.haslem


Następnie, oczywiście z uprawnieniami roota:


systemctl daemon-reload

systemctl enable x11vnc.service

systemctl start x11vnc.service

 

I to było na tyle.

niedziela, 13 lipca 2025

Pierwsza stacja zasilania niskiego napięcia na wyjazdy pod namiot

.... czyli o tym jak nie tworzyć skrzynek ;)

Wykorzystane elementy:
- skrzynka narzędziowa
- dławiki kablowe PG7
- akumulator 18Ah
- regulator mppt
- panel fotowoltaiczny
- 2 łączniki cieselskie
- złącza hermetyczne ip68
- blok rozdzielczy do 'spięcia' okablowania
- bezpiecznik nadprądowy wykorzystany jako wyłącznik
- podstawa bezpiecznikowa z wkładką 10x38 (zastosowana wkładka 16A ale powinno być 10A)

poniedziałek, 12 maja 2025

iwlwifi - wyłączenie trybu oszczędzania energii powersave

 Cześć!


Pokrótce. Na wifi6 Intela (AX200) sieć po dłuższym czasie zaczynała "ścinać" i pracować niestabilnie. Pomagało rozłączenie i połączenie na nowo.

Szczegóły znajdują się w tym (wątku)

Używam Network Managera i u mnie zadziałały dwie metody.


Pierwsza metoda jest dla NM. Robimy taki skrypcik (nazwa i zapis w pliku *.sh dowolnie):

wifi=`nmcli connection show --active | grep wifi | awk '{print $1}'`

sudo nmcli connection modify $wifi 802-11-wireless.powersave disable

Niestety składnia wiersza poleceń nmcli wymusza każdorazowe wykonanie skryptu po zmianie sieci więc trzeba zrobić to manualnie. Można wrzucić to też do cron'a lub napisać własną usługę żeby skrypt sprawdzał (w dodatkowej linijce) czy powersave jest włączony, jeśli tak to go wyłączamy jak wyżej i to wszystko.


Druga metoda jest bardziej pewna bo powersave jest wyłączony na poziomie "kernela" i jest to zrobione w trakcie uruchamiania się systemu. W swoim bootloaderze dopisujemy takie cudo jako opcję kernela:

iwlwifi.power_save=0

Dla gruba domyślnie będzie to plik /etc/default/grub i następująca linijka:

GRUB_CMDLINE_LINUX_DEFAULT="quiet iwlwifi.power_save=0"


Trzecią metodą, której nie sprawdzałem ale powinna zadziałać, jest utworzenie pliku /etc/modprobe.d/iwlwifi.conf z poniższą zawartością:

options iwlwifi power_save=0

I tyle.

sobota, 14 września 2024

Przyśpieszanie Androida na przykładzie Motoroli G24

Są to rzeczy do zrobienia zaraz po wyjęciu telefonu z pudełka:
- aktualizacja systemu
- po aktualizacji hard reset z poziomu recovery (tzw wipe data)
- wyłączenie rozszerzenia pamięci RAM (boost RAM) - spowalnia to pamięć wewnętrzną
- w ustawieniach baterii zostawić włączoną opcję "ogranicz aktywność w tle" a resztę wyłączyć
- włączyć opcje programistyczne i następnie w nich ustawić skalę animacji na 0,5 oraz powyłączać wszystkie opcje związane ze śledzeniem systemu
- w opcjach programistycznych dodatkowo 'wyłącz nakładki hw' oraz 'wymuś 4x msaa'

Powyższe czynności dotyczące głównie Motoroli Moto G24, która jest fajnym telefonem z dużą ilością RAMu ale procek lekko nie daje sobie rady i łapie co chwilę lekkie ścinki. Na ile jest problem z prockiem, softem albo układem graficznym, ciężko stwierdzić.

czwartek, 18 kwietnia 2024

Przykładowy .asoundrc

$ aplay -l

**** List of PLAYBACK Hardware Devices ****

card 0: Generic_1 [HD-Audio Generic], device 3: HDMI 0 [SAMSUNG]

  Subdevices: 1/1

  Subdevice #0: subdevice #0

card 0: Generic_1 [HD-Audio Generic], device 7: HDMI 1 [HDMI 1]

  Subdevices: 1/1

  Subdevice #0: subdevice #0

card 0: Generic_1 [HD-Audio Generic], device 8: HDMI 2 [HDMI 2]

  Subdevices: 1/1

  Subdevice #0: subdevice #0

card 0: Generic_1 [HD-Audio Generic], device 9: HDMI 3 [HDMI 3]

  Subdevices: 1/1

  Subdevice #0: subdevice #0

card 3: Device [USB Audio Device], device 0: USB Audio [USB Audio]

  Subdevices: 1/1

  Subdevice #0: subdevice #0


Dla karty pierwszej od góry plik wygląda tak: 

defaults.pcm.card 0

defaults.pcm.device 3

defaults.ctl.card 1


środa, 6 marca 2024

command not found po zalogowaniu się na root'a (via su)

W Debianie 10 wprowadzili małą zmianę w poleceniu su która polega na dostarczeniu (lub nie) zmiennych dotyczących m. in. dostępu do programów tylko dla root'a. Traf chciał że odkryłem to dopiero po 4 latach na Debianie 12 (wcześniej korzystałem przez kilka lat z Ubuntu LTS). Owa zmiana objawiała się jak na zrzucie:


Sprawdziłem zmienne i oto rezultat:


Na wiki Debiana jest taki wpis, w którym napisane jest:

The su command in buster is provided by the util-linux source package, instead of the shadow source package, and no longer alters the PATH variable by default. This means that after doing su, your PATH may not contain directories like /sbin, and many system administration commands will fail. There are several workarounds:

Use su - instead; this launches a login shell, which forces PATH to be changed, but also changes everything else including the working directory.

Use sudo instead. sudo still runs commands with an altered PATH variable.

To get a regular root shell with the correct PATH, you may use sudo -s.

To get a login shell as root (equivalent to su -), you may use sudo -i.

Put ALWAYS_SET_PATH yes in /etc/default/su (create it) to get an approximation of the old behavior. This is documented in su(1).

Put the system administration directories (/sbin, /usr/sbin, /usr/local/sbin) in your regular account's PATH (see EnvironmentVariables for help with this).

Wykorzystałem więc przedostatnią metodę:

/etc/default/su:
ALWAYS_SET_PATH yes

I Problem rozwiązany :D

Podziękowania dla Forumowiczów z dug.net.pl którzy dali namiar na rozwiązanie problemu :D

piątek, 16 lutego 2024

Wylistowanie jednej kolumny z wyniku w konsoli

 Cześć!

Wynikiem polecenia...:

dpkg -l 

... są dane usytuowane w 5 kolumnach. Kiedyś, w Debianie i debiano-pochodnych popularny był tzw multiarch czyli mieszanie architektur systemu np amd64 z i386. Była to przydatna funkcja przy np wine albo przy steamie. Multiarch jest domyślnie wykorzystywany w np Ubuntu. Ale przy Debianie, chcąc jednak pozbyć się paczek spod i386 (bo np nie korzystamy już ze steama) musielibyśmy wylistować te paczki:

dpkg -l | grep i386 | awk '{print $2}'

Wrzucić w:

aptitude purge `dpkg -l | grep i386 | awk '{print $2}'`

I to w zupełności wystarczy.

środa, 15 listopada 2023

Zmiana polskich znaków na łacińskie w napisach (sed, enca)

W 2014 popełniłem wpis dotyczący zamiany polskich znaków w plikach tekstowych na ascii. Chodziło wówczas o to, by w razie problemów z kodowaniem plików tekstowych, odtwarzacz je wyświetlający nie "krzaczył". To jeszcze pół biedy, bo w ten sposób można byłoby się domyśleć o co chodzi, ale vlc lubi po prostu nie wyświetlać "problematycznych" linii tekstu.

Otóż poprawiłem nieco skrypt i o to rezultat:
#!/bin/bash

for f in *.srt; do

   sed 's/ą/a/g' "$f" -i;
   sed 's/ę/e/g' "$f" -i;
   sed 's/ż/z/g' "$f" -i;
   sed 's/ź/z/g' "$f" -i;
   sed 's/ł/l/g' "$f" -i;
   sed 's/ó/o/g' "$f" -i;
   sed 's/ą/a/g' "$f" -i;
   sed 's/ś/s/g' "$f" -i;
   sed 's/ć/c/g' "$f" -i;
   sed 's/ń/n/g' "$f" -i;
   sed 's/Ą/A/g' "$f" -i;
   sed 's/Ę/E/g' "$f" -i;
   sed 's/Ż/Z/g' "$f" -i;
   sed 's/Ź/Z/g' "$f" -i;
   sed 's/Ł/L/g' "$f" -i;
   sed 's/Ó/O/g' "$f" -i;
   sed 's/Ą/A/g' "$f" -i;
   sed 's/Ś/S/g' "$f" -i;

done
Lub, z wykorzystaniem enca:
#!/bin/bash
for f in *.srt; do
   enca -L polish -x utf-8 "$f"
done

poniedziałek, 9 października 2023

Konwersja napisów z *.txt na *.srt dla vlc

Konwersja napisów dla filmu z *.txt na *.srt przebiega następująco:

ffmpeg -i napisy.txt napisy.srt

Poniżej dla całej zawartości katalogu:

 #!/bin/bash

for f in *.txt; do

    ffmpeg -i "$f" ${f/.txt/.srt}

done

Domyślnie z kodowaniem utf8, dla np windows-1250:

 #!/bin/bash

for f in *.txt; do

    ffmpeg -sub_charenc windows-1250 -i "$f" ${f/.txt/.srt}

done

Wzięło się to stąd, że vlc domyślnie nie ładuje napisów *.txt przy starcie filmu, tylko trzeba podać mu te napisy ręcznie. Jest to prawdopodobnie zamierzone przez autorów programu. Z *.srt tego problemu nie ma.

poniedziałek, 23 listopada 2020

Jak wykorzystać obudowę po halogenie ledowym?

Kiedyś wyciągnąłem ze złomu - z poprzedniej firmy, gdzie pracowałem - obudowę po naświetlaczu ledowym. Chciałem z niej zrobić jakiś użytek - oto i efekt. Co prawda, estetyką nie grzeszy, ale działa:


Umieszczone są tam 3 moduły ledowe po 7zł sztuka (po 2W każda) + zasilacz 12V 15W. Takie naświetlacze są tanie, ale równie tanio wychodzi wymiana samych diód bez straty materiału w postaci obudowy. Zdecydowanie polecam!



wtorek, 15 września 2020

Regulowana lampka biurkowa z halogenem (gu10) i dużą ilością światła

 Cześć!


Kiedyś szukałem lampki z gwintem E27 ("zwykła" żarówka) do której mógłbym wkręcić mocną żarówkę w taki sposób, by nie "wystawała" spod klosza (i jednocześnie mnie nie oślepiała). Być może mógłbym wkręcić zwykłą żarówkę 100W, ale chciałem uniknąć nadmiernego nagrzewania się. Postanowiłem pójść w nieco inną stronę. Z moich potrzeb absolutne minimum to było jakieś ~ 500 lumenów, a żarówki halogenowe (z gniazdem gu10) dają nawet 900 lm i są dość "płaskie". Zaryzykowałem się, zainwestowałem więc w kilka potrzebnych rzeczy i przerobiłem dwie lampki biurkowe na halogeny.


Pierwsza z nich prezentuje się jak niżej:



Powyższa żarówka daje mi około 500 lumenów światła ciepłego (~2700K). Wykorzystałem szybkozłączki w obydwu lampkach, ponieważ zaoszczędziło mi to mnóstwo czasu.


Druga z nich, tytułowa regulowana, prezentuje się jak niżej:





Wyżej zastosowana żarówka daje natomiast około 900lm światła ciepłego. Uchwyt do lampki był w komplecie i umożliwia zamocowanie do biurka, płyty, ściany lub czegokolwiek innego.

Ten sam model żarówki, co w drugiej lampce, w dwóch sztukach jednocześnie wykorzystuję do oświetlenia pokoju. Oczywiście żyrandol również mam na gu10, przy czym zawieszony jest przy samym suficie i żarówki nie są niczym ograniczone :)


Przeróbka zajęła mi łącznie około 30 minut "na spokojnie", a łączny koszt lampek z żarówkami, gniazdkami, śrubkami i szybkozłączkami to około 140 złotych.

poniedziałek, 18 maja 2020

Wykorzystanie smartfona jako kamery internetowej - Android

Cześć!

Żeby wykorzystać naszego smartfona jako kamery internetowej potrzebujemy:
- smartfon z androidem :)
- WiFi lub kabel usb
- Windowsa lub Linux'a :)

Najpierw, instalujemy aplikację DroidCam:
Użytkownicy Windowsa ściągają aplikację (KLIK), instalują i się niczym nie martwią :) uwaga - zgodnie z tym co jest napisane w podanym linku, programy z Windows Store mogą nie wykrywać w ten sposób naszej kamery. Poszczególne aplikacje trzeba dograć "ręcznie", spoza sklepu.

Użytkownicy Linux'a ściągają aplikację (KLIK) i się niczym nie martwią. Protip -> przy każdej aktualizacji kernela trzeba ręcznie kompilować sterownik, co zajmuje 5 sekund, z czego 4 wklepanie komendy.

Droid Cam z automatu działa przez WiFi. Chcąc jednak skorzystać z przewodu USB należy wprowadzić małą zmianę w ustawieniach telefonu. Najpierw należy włączyć "opcje programisty" lub "opcje programistyczne":
- ustawienia > system > informacje o urządzeniu > 7x klik na "numer kompilacji":
Następnie w samych opcjach programisty należy włączyć "debugowanie usb:"
I to wszystko. Tak wygląda droidcam pod linux'em:
A tak pod Windowsem:
A sama aplikacja z poziomu smartfona wygląda następująco:
I to wszystko. Dziękuję za uwagę :)

Konfiguracja prostego klastra komputerowego wysokiej dostępność (HA) na przykładzie Windows Server 2008

Cześć!

Stworzyłem kiedyś klaster komputerowy wysokiej dostępności, który posłużył mi jako podstawka do obrony tytułu inżyniera. Wykorzystałem do tego Windows Server 2008 R2, oraz grę fps Assault Cube, żeby zobrazować działanie klastra. Szczegółowo nie warto opisywać tej pracy ze względu starą wersję serwerowego systemu Windows. W zamian za to wrzucę tutaj same zrzuty ekranowe dla "skrótu myślowego", ponieważ nowsze wersje niewiele się różnią w stosunku do 2008 R2.



















I na koniec krótki filmik:



niedziela, 18 sierpnia 2019

Autologowanie pod tty -> systemd

Cześć!

Pokrótce, najpierw z prawami root'a w terminalu wykonujemy:
# systemctl edit getty@tty1.service
W tym momencie powinien odpalić się domyślny edytor tekstowy w konsoli. Wklepujemy i zapisujemy:
[Service]
ExecStart=
ExecStart=-/sbin/agetty --autologin user --noclear %I $TERM
Po czym restartujemy system i tyle. To jest dokładnie takie samo rozwiązanie, jakie proponuje wiki Archa.

Należy pamiętać o zainstalowaniu xinit w celu odpalenia GUI.

Autologowanie pod tty -> sysvinit

Cześć!

W /etc/inittab zmieniamy:
1:2345:respawn:/sbin/getty 38400 tty1
na:
 1:2345:respawn:/bin/login -f login tty1 </dev/tty1 >/dev/tty1 2>&1
Należy pamiętać o zainstalowaniu xinit w celu odpalenia GUI.