Come risolvere l'errore "SystemCTL Not Found"
L'errore "systemctl command not found" si verifica in genere quando si esegue un sistema operativo Linux che utilizza un sistema di configurazione diverso, come runit, SystemV, ecc. Il sistema di configurazione SystemV è comunemente utilizzato nelle distribuzioni Linux più vecchie, in particolare nelle versioni di Ubuntu precedenti alla 15.04. Tuttavia, alcune distribuzioni Linux moderne utilizzano sistemi di configurazione diversi da systemd, come Artix Linux, che è basato su Arch Linux ma utilizza altri sistemi di configurazione come runit, dinit, ecc., al posto di systemd.

Che cos'è un sistema di inizializzazione?
Il sistema di inizializzazione è il primo processo eseguito dopo l'avvio del kernel di sistema. Esistono diversi sistemi kernel Linux, ma il più comune è systemd, utilizzato in molte delle principali distribuzioni Linux. systemd è un insieme di processi in background (daemon) e librerie che controllano tutti gli altri processi e librerie in background, come l'avvio, l'arresto, l'abilitazione o la disabilitazione di un processo in background. Un daemon in Linux è l'equivalente di un servizio in Windows che viene eseguito in background.
Come risolvere l'errore "comando systemctl non trovato" nelle distribuzioni Linux:
Per correggere questo errore, hai due opzioni.
- Installa systemd e sostituisci la tua configurazione attuale con systemd. L'errore "comando systemctl non trovato" si verifica perché systemd non è installato sul sistema.
- Utilizza il sistema di configurazione della tua distribuzione Linux per gestire i vari processi/servizi in background. Questa soluzione è per coloro che non hanno systemd installato ma non vogliono installarlo sui propri computer, oppure se systemd non è disponibile nei repository della loro distribuzione.
1. Installare systemd (se non è già installato):
Se si utilizza un sistema operativo basato su Debian/Ubuntu, è possibile digitare un comando per verificare se systemd è installato o meno.
Digitare questo comando se si utilizzano sistemi operativi basati su Ubuntu o Debian e premere Invio.
sudo dpkg -l | grep systemd.
Per le distribuzioni Arch Linux, utilizzare questo comando:
pacman -Qs systemd

Se vedi del testo come risultato, significa che systemd è installato sul tuo sistema e potrebbe essere danneggiato.
Quindi è necessario reinstallare systemd affinché il comando systemctl funzioni.
Per fare ciò, digita questo comando nel terminale e premi Invio.
sudo apt-get install --reinstall systemd.
In questo modo verrà reinstallato systemd utilizzando il gestore di pacchetti apt utilizzato dalle distribuzioni basate su Debian/Ubuntu.
Per le distribuzioni Arch Linux o i loro derivati, utilizzare questo comando:
sudo pacman -S systemd

Se il comando ` sudo dpkg -l | grep systemd` non produce alcun output , significa che systemd non è installato sulla tua distribuzione.
In uno scenario del genere, puoi utilizzare il sistema di configurazione della tua distribuzione oppure installare systemd.
Per installare systemd sulle distribuzioni Debian/Ubuntu, digitare questo comando nel terminale e premere Invio:
sudo apt-get install systemd
Per la distribuzione Arch Linux, digitare pacman -S systemd come utente root o utilizzando sudo.
Questo installerà systemd sul tuo sistema operativo. Ora potrai usare il comando systemctl senza errori.
2. Utilizzare il sistema init della distribuzione:
Un'altra soluzione, e preferibilmente la migliore per questo errore, è Utilizza il sistema di inizializzazione di tua proprietà Distribuzione Linux Già tuo Per la gestione dei servizi/operazioni backend (daemon).
Per scoprire quale sistema di inizializzazione ha il tuo computer, puoi digitare questo comando nel terminale e premere Invio.
ls -l /sbin/init

quella /sbin/init è un collegamento simbolico. Per il sistema di inizializzazione utilizzato dalla tua distribuzione Linux. Se vedi il collegamento simbolico a /sbin/init puntando a /lib/sysvinit/initCiò significa che la tua distribuzione utilizza un sistema sysv initDovrai usare il comando INSTALLAZIONE invece di systemctl Per la gestione di servizi o processi back-end (daemon).
Anche la formula del sistema sysv init per la gestione dei servizi è molto semplice:
servizio [nome_servizio] [azione]
È quindi possibile avviare un servizio digitando service [nome_servizio] start
Esempio:
ا كنت ترغب في Avvio di un servizio/processo Bluetooth in backgroundPuoi digitare il comando:
sudo service bluetooth start
Quindi, per verificare se funziona senza errori, puoi digitare il comando:
stato del servizio sudo bluetooth
Se si desidera riavviare o arrestare un servizio, è possibile utilizzare i comandi. "riavvio del servizio [nome-servizio]" E "servizio [nome-servizio] stop" Dritto.
Ad esempio, se desideri Disattiva il servizio BluetoothPuoi scrivere:
sudo service bluetooth stop
Il tuo sistema di inizializzazione probabilmente non è sysvinitSi tratta piuttosto di un sistema di configurazione diverso. Pertanto, è sufficiente effettuare una semplice ricerca su Google sull'output del collegamento simbolico per /sbin/initDopodiché potrai utilizzare i comandi applicati al sistema di inizializzazione sul tuo dispositivo.
Molti sistemi di inizializzazione (sistemi init) contengono in genere gli stessi comandi di avviare, arrestare e riavviareTuttavia, i comandi per eseguirli differiscono, poiché contengono sysvinit sul comando di servizio Per avviare o arrestare i servizi, systemd contiene comando systemctl Così.
Se le soluzioni sopra menzionate non funzionano, continua a leggere l'articolo perché la soluzione menzionata di seguito potrebbe funzionare.
Come risolvere l'errore "comando systemd-resolve non trovato"?
Un altro errore correlato all'errore "systemctl status command not found" è l'errore "systemd-resolve command not found ". Gli utenti potrebbero erroneamente credere che il loro systemd non sia installato, motivo per cui systemd-resolve non funziona. Tuttavia, nelle versioni di systemd 239 e successive, il comando systemd-resolve è stato modificato in resolvectl.
È quindi possibile utilizzare "resolvectl" per interagire con lo strumento systemd-resolve nelle proprie distribuzioni Linux.
I commenti sono chiusi.