Cum mi-am transformat PC-ul în Server AI și Consolă de Gaming cu Linux Bazzite

Dec 17, 2025 | 0 comments

INTRODUCERE

Trăim într-o lume a chiriilor digitale. Plătim pentru filme, muzică, stocare de date, până și pentru un AI care să gândească pentru noi. Eu îmi doresc libertate, intimitate dar mai ales să nu plătesc niciun abonament.

Dacă și tu îți dorești o astfel de libertate, rămâi cu mine până la final deoarece în acest clip îți voi arăta cum am transformat un PC destul de capabil, într-o consolă de gaming în care se ascunde un server AI local suficient de inteligent încât să înlocuiască mai toate serviciile AI de pe piață. Poate fi folosit pentru conversații, generare de imagini și film, gratis, complet privat și pe lângă asta și necenzurat. În acest episod vă arăt cum am configurat PC-ul urmând ca în episodul următor să vă prezint partea de AI.

Salutare și bine ai venit la un nou episod #DEPPSiT (Dacă eu pot, poți și tu).

PARTEA I: STRATEGIA ȘI DECIZIA

Obiectivul Principal

  • Așadar obiectivul principal al acestul calculator este de a putea fi folosit ca și consolă de jocuri puternică, legat direct la televizorul din sufragerie. Îmi doresc să-l pot controla de la distanță și să pot rula modele AI open source care să nu părăsească rețeaua locală și fără tot felul de filtrele corporatiste.
  • Cum ar fi să mă pot conecta pe el cu orice laptop slab și să pot juca orice joc doresc, cu latență cât mai mică astfel încât nici să nu percep faptul că jocul rulează în altă parte.
  • De ce să nu creez imagini, filme, muzică sau orice altceva fără să fiu nevoit să plătesc abonamente sau conexiuni prin API-uri scumpe.
  • Îmi doresc să am control absolut, să pot configura și automatiza orice doresc.
  • Pentru a putea rula un AI cât mai bun am nevoie de mult VRAM. Iar cea mai accesibilă placă video în momentul de față este NVIDIA RTX 3090 cu 24 GB VRAM.
  • Așadar am cumpărat un PC second hand de gaming de la MSI cu 64 GB RAM și un procesor i9-13900 gen 13 care m-a costat 1500 de euro.

Alegerea Sistemului de Operare:

  • De ce am ales Bazzite? Acest sistem de operare linux este imuabil adică este read-only, ceea ce-l face imposibil de stricat și este conceput special pentru gaming. Apropo, am reușit să-l stric.
  • Acest sistem de operare mă scutește de multe problemele în comparație cu Windows. Spre exemplu nu voi avea update-uri sau reboot-uri surpriză, nu rulează servicii ascunse, iar toate resursele calculatorului îți aparțin. Pornește direct în Steam, funcția de suspend și resume funcționează perfect în jocuri, nu vine încărcat cu tot felul aplicații sau reclamele de care nu ai nevoie, nu te spionează nimeni, ai satisfacția că PC-ul îți aparține cu adevărat și ai control complet asupra lui și pe lângă toate astea înveți să faci chestii foarte cool. Singurul mare dezavantaj este că nu poți juca jocurile care folosesc anti-cheat, dar dacă poți trăi cu asta, înseamnă că Bazzite e și pentru tine.
  • Hai să îți arăt cum am construit consola mea de gaming sub care ascund un AI local complet privat și necenzurat.

PARTEA II: AVENTURA INSTALĂRII (BAZZITE OS)

Instalarea Bazzite

  • Înainte de toate am salvat licența Windows în contul meu de Microsoft, pentru orice eventualitate.
  • După care am verificat cum pot intra în partiția de boot pentru resetarea calculatorului. La mine tasta F3 face asta indiferent dacă mai am sau nu partiția de boot EFI.
  • Dacă ai calculatorul pregătit, atunci intră pe Bazzite.gg și apasă pe download bazzite.
  • În cazul meu am selectat
    • Desktop > NVIDIA RTX > KDE > Yes I want to load directry into Steam și downloadează Download Bazzite-deck-nivida. E foarte importantă ce selectezi aici deoarece va instala tot ce trebuie din prima și va fi gata de joacă imediat ce se termină instalarea.
  • Pune acest ISO pe un USB Stick pe care sper că ai deja instalat Ventoy. Dacă nu, mergi pe pagina oficială Ventoy și instalează-l pe un Stick USB.
  • Intră în BIOS și asigură-te că e dezactivat Secure Boot și Fast boot și selectează să pornească calculatorul de pe USB.
  • Pornește instalarea Bazzite și lasă storage configuration pe Automatic, dacă vrei să ștergi totul pe ssd.
  • Eu am ales custom și am șters toate partițiile în afară de partiția de recuperare a Windows-ului și am lăsat Bazzite să se instaleze cum dorește în spațiul liber.
  • Dacă totul a mers cum trebuie înseamnă că ai deja o consolă de gaming pregătită de joacă.
  • Gata, poți intra în contul tău de steam să te joci, distracție plăcută.

CAPITOLUL 1: Fundația – Rețea și Acces

  • Ești mulțumit de cum îți merg jocurile? Felicitări, ai o consolă demnă de invidiat. Totuși putem face mult mai multe din calculatorul nostru, abia acum începe partea interesantă.
  • Primul pas de făcut pe orice server este să aibă o adresă IP fixă, nu vrem să vânăm IP-ul prin casă.
  • Eu mi-am setat router-ul să dea IP-uri dinamice de la 100 în sus, spre exemplu 192.168.68.100 are IP dinamic. Ce e sub 100 nu se atinge serverul DHCP și îmi pot pune ce IP-uri vreau cui vreau. Poți sări pest acest pas dar îți recomand să o faci să nu ai conflicte.

Pasul 1.1: Configuram IP-ul static

  1. Dacă se deschide Steam automat dute pe Exit > Switch to Desktop și deschide un terminal. Va trebui să ne acomodăm cu fereastra asta intimidantă pentru că aici se întâmplă toată magia.
  2. Hai să indentificăm numele conexiunii de rețea folosind următoarea comandă:
nmcli connection show
  1. Ne trebuie numele conexiunii noastre. Pentru a modifica adresa vom folosi comanda:
sudo nmcli connection modify "numele-conexiunii-noastre" ipv4.method manual ipv4.addresses 192.168.68.99/24 ipv4.gateway 192.168.68.1
  • aceasta setează placa noastră de rețea cu un IP static 192.168.68.99/24 și cu gateway 192.168.68.1. Asigură-te că acest gateway este IP-ul routerului tău.
  1. Pentru a avea acces la internet trebuie să setăm serverele dns cu comanda asta:
sudo nmcli connection modify "Wired connection 1" ipv4.dns "8.8.8.8 1.1.1.1"
  1. Dacă a mers totul fără nici o eroare va trebui să reactivăm conexiunea pentru a aplica modificările:
sudo nmcli connection down "Wired connection 1" && sudo nmcli connection up "Wired connection 1"
  1. Iar cu comanda asta verificăm dacă IP-ul s-a schimbat:
ip a show enp4s0

Pasul 1.2: Conectare de la distanță crează ssh server

Pentru a putea controla serverul de la distanță și să instalăm ce vrem pe el, va trebui să activăm serverul SSH pe Bazzite. Apoi pentru a simplifica conectarea și a elimina parola vom crea cheie de autentificare . Hai să instalăm serverul ssh:

rpm-ostree install openssh-server

Repornim sistemul pentru a aplica instalarea:

systemctl reboot

Activă, serviciul la boot:

sudo systemctl enable --now sshd

Verificăm statusul serviciului:

sudo systemctl status sshd
  • Dacă apare Active: active(running) e perfect
    Orice instalare pe acest sistem imutabil necesită restart așadar repornim calculatorul cu comanda:
sudo reboot

Acum poți testa conexiunea de pe un alt PC cu comanda:

ssh bazzite@192.168.68.99
  • schimbă bazzite și IP-ul cu ce ai configurat tu, introdu parola și ar trebui să fii pe serverul tău acum de la distanță. Nu-i așa că-i cool?

Pasul 1.2.1 Generează chei SSH

Poți trece peste pașii următori dacă vrei, dar pentru a simplifica procesul de logare eu i-am făcut. Dacă vrei să înveți cum să generezi o cheie ssh și să creezi o conexiune imbatabilă, poți practica pe serverul tău acum.

  1. De obicei ssh se află pe toate sistemele de operare, dar e bine să verificăm cu comanda:
ssh-keygen
  • E foarte improbabil dar dacă ești pe Windows și primești eroare atunci caută în Search Optional Features și selectează Add Feature. Caută OpenSSH Client și instalează-l.
  1. Acum putem genera o cheie pentru calculatorul nostru cu comanda:
ssh-keygen -t ed25519 -C "your_email@example.com"
  • -t ed25519 este algoritmul de criptare
  • -C și ce urmează după este comentariul la cheie pentru a identifica cine deține cheia respectivă
  • La promptul “Enter file in which to save the key”, poți apăsa Enter pentru locația implicită (~/.ssh/id_ed25519).
  • La “Enter passphrase”, poți lăsa gol dacă vrei o conexiune fără parolă.

Acest lucru va crea două fișiere în directorul ~/.ssh/:

  • id_ed25519 (cheia privată – NU o partaja cu nimeni!)
  • id_ed25519.pub (cheia publică – aceasta va merge pe server)
  1. Acum copiem cheia publică pe serverul Bazzite de pe mașina de client de unde am generat-o
ssh-copy-id -i ~/.ssh/id_ed25519.pub bazzite@192.168.68.99
  • Vom introduce parola utilizatorului bazzite.
  • Comandă adaugă automat conținutul fișierului id_ed25519.pub în ~/.ssh/authorized_keys pe server și setează permisiunile corecte.
  • Dacă vrei poți transfera fișiere și cu comanda următoare, totuși ssh-copy-id face mai mult decât o simplă copiere:
scp C:Proiectefisier.txt bazzite-pc:~/
  1. Acum ar trebui să putem să ne conectăm fără să introducem parola:
ssh bazzite@192.168.68.99
  1. Dacă a mers, atunci putem dezactiva parola, dar asigură-te că merge, altfel te vei bloca în afara serverului. Hai să edităm fișierul de configurare SSH:
sudo nano /etc/ssh/sshd_config
  1. Caută liniile de mai jos și șterge # diez din fața rândului dacă există:
PasswordAuthentication no
ChallengeResponseAuthentication no
  1. Salvează fișierul cu Ctrl + S, apoi Ctrl + X să-l închizi după care restartează serviciul SSH:
sudo systemctl restart sshd
  • După acest pas, autentificarea cu parola nu va mai fi posibilă.

CAPITOLUL 2: Control Total de la Distanță (5:00 – 8:00)

Poate te întrebi. Bine Dorule, dar dacă vreau să mă conectez vizual, pot avea o conexiune gen team viewer? Pot să instalez chestii din interfața grafică? Pot să mă joc remote de pe un laptop slab și să mă bucur de puterea calculatorului meu puternic?
Mă bucur că vrei să faci asta, hai să-ți arăt cum te poți conecta din interfața grafică și cum te poți juca remote, cu o latență minimă, ca și cum te-ai juca direct pe calculator. Totuși contează foarte mult să ai o conexiune bună la Wifi sau cel mai bine să fii conectat prin cablu pentru o experiență cât mai bună.

Pasul 1: Streaming Grafic (Sunshine & Moonlight)

Pentru asta avem nevoie de Sunshine server și Moonlight ca și client. Două softuri open source foarte capabile pentru ce avem noi nevoie.
Bazzite ne știe intențiile așadar vom găsi Sunshine deja instalat care abia așteaptă să fie folosit iar noi va trebui doar să activăm serviciul. Așadar, ne folosim de comanda ssh să intrăm pe server. Apoi activăm și pornim serviciul Sunshine pentru utilizatorul curent cu această comandă:

systemctl --user enable --now sunshine

După care verificăm dacă a pornit:

systemctl --user status sunshine

Pasul 2: Configurarea inițială (Web UI)

Sunshine are o interfață web de configurare accesibilă la ip-ul serverului pe portul :47990

  1. Deschide browserul pe PC-ul tău Windows.
  2. Accesează: https://192.168.68.99:47990 (ignoră avertismentul de certificat SSL).
  3. Sunshine îți va cere să setezi un Username și o Parolă pentru administrare. Setează-le și ține-le minte.

3. Instalare Moonlight pe Windows (Client)

  1. Acum că avem serverul pregătit, va trebui să descărcăm clientul Moonlight pentru Windows de aici: Moonlight GitHub Releases (alege varianta .exe).
  2. Instalează-l și pornește-l.

4. Pairing (Împerecherea)

  1. Moonlight ar trebui să detecteze automat PC-ul “bazzite” în rețeaua locală. Dacă nu, dă click pe iconița “+” și introdu IP-ul 192.168.68.99.
  2. Dă click pe PC-ul apărut.
  3. Îți va afișa un PIN din 4 cifre.
  4. Mergi înapoi în browser, în interfața Sunshine, la tab-ul “PIN”.
  5. Introdu PIN-ul afișat de Moonlight și apasă “Send”.

5. Testare

În Moonlight, dă click din nou pe PC-ul Bazzite și alege “Desktop” sau “Steam Big Picture” pentru a începe stream-ul.

Probleme Comune

  • Ecran Negru: Poate apărea dacă nu există un monitor conectat la Bazzite (headless). Soluția este un “HDMI Dummy Plug” sau configurarea unui display virtual.
  • Rezoluție Slabă / Aspect “Șters” (Greyness) / Culori spălăcite:
    1. Client Moonlight (Windows):
      • În setările Moonlight, asigură-te că Resolution este setată manual la valoarea dorită (ex: 3840×2160 pentru 4K).
      • Mărește Video Bitrate (ex: la 50-80 Mbps sau mai mult, mai ales pentru 4K și conexiune LAN prin cablu). Un bitrate prea mic duce la artefacte de compresie.
      • Verifică opțiunea “Enable HDR (experimental)”. Dacă este bifată și ai probleme, încearcă să o debifezi (sau invers). Un “mismatch” între capabilitățile HDR ale monitorului host, clientului și ale stream-ului poate duce la culori spălăcite sau un “layer de gri”.
      • Încearcă să schimbi Video Decoder pe “Automatic” sau forțează “HEVC” (H.265) pentru o mai bună gestionare a culorilor, dacă ai hardware compatibil pe client.
    2. Host Bazzite (pe PC-ul însuși):
      • Asigură-te că monitorul fizic conectat la Bazzite este pornit și setat la rezoluția dorită (4K în cazul tău). Sunshine va prelua rezoluția monitorului activ.
      • Dacă problema persistă, poți încerca să dezactivezi HDR-ul din setările de Display ale sistemului de operare Bazzite. Stream-ul SDR este adesea mai consistent.

FINAL EPISOD

Avem un PC de gamming puternic, cu un sistem de operare foarte stabil pe care-l putem controla de oriunde din casă prin SSH și Moonlight.

Dar RTX-ul meu cu 24GB de video RAM se cam plictisește doar cu atât pentru că poate face mult mai mult. Așa că în episodul următor trecem la categoria grea. Vă arăt cum am transformat această consolă într-un Powerhouse AI.

Vă arăt cum am instalat “creierul” digital cu Ollama, cum pot genera imagini și clipuri cu ComfyUI, cum închid și deschid calculatorul de la distanță pentru a economisi energie atunci când nu e folosit. Și, cel mai important, vă voi arăta cum am făcut să pornească totul automat când deschizi calculatorul, asta a fost cea mai dificilă parte din tot acest proces.

Dacă vrei să-ți faci propriul ChatGPT, privat și necenzurat, chiar la tine în sufragerie, abonează-te pentru a nu rata episodul următor!

Lasă-mi te rog un comentariu și spune-mi cum ți se pare proiectul? Te-ai apucat deja de construit, ți se pare prea dificil sau nu-i vezi rostul?

Și nu uita ca până data viitoare să fii creativ! Ciao!

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *