hostnamectl în Linux / Bash

Afișează și schimbă numele mașinii (hostname) și arată sistemul de operare, nucleul și tipul de virtualizare.

Sintaxă comandă
hostnamectl [comandă] [argumente]

Ce face hostnamectl

hostnamectl gestionează numele sistemului prin systemd-hostnamed. Rulată fără argumente, este și o cale rapidă de a afla ce distribuție și ce nucleu rulează serverul, dacă este mașină virtuală și pe ce arhitectură.

Numele setat cu set-hostname se salvează în /etc/hostname și rămâne după repornire. Pentru ca numele nou să fie găsit și local, adaugă-l și în /etc/hosts (de exemplu pe rândul 127.0.1.1 la Debian și Ubuntu).

Opțiuni și argumente

Opțiune / Parametru Descriere
status Comanda implicită: afișează numele și informațiile despre sistem.
hostname Afișează doar numele mașinii (systemd 249 sau mai nou).
set-hostname NUME Setează numele static al mașinii (cere drepturi de administrator).
--static / --transient / --pretty Alege tipul de nume: static (din /etc/hostname), temporar (de la DHCP) sau „frumos” (text liber, cu spații).

Exemple

Exemplul 1: Informații despre server

Afișarea arată numele, faptul că rulează într-o mașină virtuală KVM, distribuția și nucleul.

hostnamectl

Ieșire în terminal

 Static hostname: web-iasi-01
       Icon name: computer-vm
      Machine ID: 3f9a1c2b7d4e4f5a9b8c7d6e5f4a3b2c
         Boot ID: 8e7d6c5b4a3f4e2d9c1b0a9f8e7d6c5b
  Virtualization: kvm
Operating System: Ubuntu 24.04.3 LTS
          Kernel: Linux 6.8.0-85-generic
    Architecture: x86-64

Exemplul 2: Schimbarea numelui mașinii

Setăm numele nou și îl verificăm. Promptul terminalului se actualizează abia într-o sesiune nouă.

sudo hostnamectl set-hostname db-iasi-02
hostnamectl hostname

Ieșire în terminal

db-iasi-02

Greșeli frecvente

  • Folosirea spațiilor, a diacriticelor sau a liniei de jos (_) în numele static: un hostname valid conține doar litere, cifre și cratimă.
  • Lăsarea vechiului nume în /etc/hosts: comanda sudo poate afișa atunci „unable to resolve host”.

Comenzi înrudite

  • timedatectl: Afișează și modifică ora sistemului, fusul orar și sincronizarea automată prin NTP, pe sisteme cu systemd.
  • uname: Afișează informații detaliate despre nucleul (kernel), arhitectura hardware și sistemul de operare.
  • systemctl: Controlează sistemul de inițializare systemd și administrează serviciile (demoni de fundal).