Netbird na CachyOS
Netbird je open-source VPN klient a daemon implementujúci protokol WireGuard. Umožňuje jednoduché vytváranie privátnych sieťových tunelov medzi zariadeniami. Tento dokument popisuje krok za krokom funkčný postup inštalácie a konfigurácie na distribúcii CachyOS tak, aby po reštarte vždy fungoval príkaz netbird up.
Problém
Po nainštalovaní a povolení systemd-služby sa po reboote pri spustení príkazu:
netbird up
objaví chyba:
dial unix /run/netbird.sock: connect: no such file or directory
Error: failed to connect to daemon: context deadline exceeded
Daemon beží na sockete /run/netbird/main.sock, klient však predvolene hľadá /run/netbird.sock.
Príčina
Šablónová služba netbird@main.service (a ďalšie inštancie) vytvára socket pomenovaný podľa inštancie:
/run/netbird/<instance>.sock
Klient netbird up však bez ďalších parametrov očakáva socket:
/run/netbird.sock
Riešenie
Nižšie uvedený postup zabezpečí, že daemon vždy počúva na sockete, ktorý klient hľadá, bez potreby symlinkov či manuálnych parametrov.
1. (Voliteľné) Inštalácia alebo preinštalovanie služby
Ak ešte nemáte Netbird alebo chcete začať „čisto“:
sudo pacman -Syu netbird
sudo netbird service install
sudo systemctl enable --now netbird@main
2. Vytvorenie drop-in override pre systemd
Tento krok prepíše pôvodné ExecStart tak, aby daemon počúval priamo na /run/netbird.sock.
-
Vytvorte adresár pre override:
sudo mkdir -p /etc/systemd/system/netbird@main.service.d -
Otvorte súbor v editore a vložte obsah:
sudo nano /etc/systemd/system/netbird@main.service.d/override.confDo editora skopírujte:
[Service] # Zrušenie pôvodného štartu ExecStart= # Nový štart s upravenou cestou socketu ExecStart=/usr/bin/netbird service run \ --log-file /var/log/netbird/client-%i.log \ --daemon-addr unix:///run/netbird.sockUložte (
Ctrl+O, Enter) a zatvorte (Ctrl+X). -
Načítajte zmeny a reštartujte službu:
sudo systemctl daemon-reload sudo systemctl restart netbird@main
3. Overenie
-
Skontrolujte, že existuje správny socket:
ss -xl | grep netbird.sock # výstup napr.: # u_str LISTEN 0 4096 /run/netbird.sock -
Spustite klienta:
netbird upAk je všetko v poriadku, príkaz sa úspešne pripojí na daemon bez chýb.
Poznámky
-
Pre inú inštanciu (napr.
@homealebo@work) nahraďte v ceste aj názov služby:
/etc/systemd/system/netbird@home.service.d/override.confanetbird@home. -
Môžete použiť aj iný editor (vim, micro, …) podľa vašich preferencií.