user@homelab:~/docs$ cat troubleshooting.md
Troubleshooting
Technické problémy při stavbě homelabu: příznak, příčina a řešení
# obsah
| # | Příznak | Příčina | Řešení |
|---|---|---|---|
| 1 | Windows instalátor chce síť a Microsoft účet | výchozí chování Win11 Home | Shift+F10 → start ms-cxh:localonly, Ventoy VTOY_WIN11_BYPASS_NRO |
| 2 | Po instalaci Win se nebootuje z USB | Windows Boot Manager první v UEFI | Novo → Boot Menu → EFI USB Device |
| 3 | Ubuntu: Probing for devices to install to failed, Invalid dep_id (disk-dm-1) | Ventoy připojuje ISO přes device-mapper | Ventoy → Boot in grub2 mode |
| 4 | Ubuntu: chybí Add GPT Partition a free space | instalátor v grub2 režimu nenačetl mezery mezi oddíly | sgdisk -n 0:0:0 … v shellu instalátoru a restart |
| 5 | Wi-Fi nefunguje (ani hotspot) | rfkill soft=1 + prázdné wifis: {} v netplanu | odblokovat přes /sys/class/rfkill/*/soft + 50-wifi.yaml |
| 6 | V instalátoru není rfkill | minimální prostředí | instalovat bez sítě, řešit až v systému |
| 7 | GRUB menu se nezobrazí | Ubuntu Server má GRUB_TIMEOUT=0 | GRUB_TIMEOUT_STYLE=menu, GRUB_TIMEOUT=5 |
| 8 | Windows v GRUBu dvakrát | os-prober + ruční položka v 40_custom | odstranit ruční položku |
| 9 | Rezervace v routeru poskytovatele nefunguje | adresy přiděluje vlastní Wi-Fi router za ním | DHCP rezervace na routeru, který je bránou (route -n get default) |
| 10 | Flux: apps hlásí dependency ‘flux-system/infra’ is not ready | po novém commitu se infra synchronizuje jako první (dependsOn) | nic, za chvíli se srovná; urychlit: flux reconcile kustomization apps |
Užitečné diagnostické příkazy
lsblk -o NAME,SIZE,MODEL,MOUNTPOINTS # disky a oddíly
sudo parted /dev/sda unit GiB print free # včetně volného místa
grep . /sys/class/rfkill/*/{name,soft,hard} # blokace rádií
ip -br addr ; ip route # adresy a brána
networkctl status wlp3s0 --no-pager # stav Wi-Fi
sudo journalctl -u ssh -n 20 --no-pager # proč SSH odmítl přihlášení
sudo sshd -T | grep -i auth # výsledná konfigurace sshd
sudo ufw status verbose # firewall
k get pods -A ; k get events -A --sort-by=.lastTimestamp | tailPonaučení
- Bez sítě skripty na USB disku: diagnostika i konfigurace jako skript, výstup uložený do souboru místo ručního přepisování.
- Před zákazem hesel test přihlášení klíčem a druhé SSH okno jako pojistka.
- Pevná IP před k3s: k3s si adresu zapíše do certifikátů a kubeconfigu.