Rendi più veloce l’avvio di Linux disabilitando i servizi non necessari

Schnelleres Booten von Linux durch Deaktivieren unnötiger Dienste
⏱️ 4 min read

Sempre più sistemi operativi si gonfiano con molti servizi che vengono eseguiti in background. Sebbene possano non utilizzare molto tempo della CPU, aumentano il tempo di avvio e l’utilizzo della RAM.

Alcune distribuzioni Linux includono “tutto tranne il lavello della cucina”, nel tentativo di semplificare la vita degli utenti. Questo fa sì che cose come la condivisione di file o la stampa funzionino immediatamente. Sfortunatamente, l’unico modo per farlo è includere centinaia di utilità in modo che tutti trovino qualcosa di cui hanno bisogno.

Fortunatamente, i sistemi operativi open source ti danno la potenza e la libertà di fare ciò che ritieni opportuno. Ciò significa che puoi disabilitare o rimuovere tutto ciò che non ti serve. La prima opzione, come disabilitare i servizi, verrà esplorata qui. Quando disabiliti, piuttosto che rimuovi, i componenti, c’è meno rischio di rompere le cose in modo permanente. E puoi tornare a come era prima semplicemente riattivando un servizio se noti che qualcosa di utile ha smesso di funzionare.

Analizza il tempo necessario per il caricamento di ogni servizio

La maggior parte dei sistemi operativi basati su Linux è stata migrata a Systemd. Tra la suite di utilità che include, c’è un programma che ti consente di analizzare la velocità di avvio del tuo sistema. Nello specifico, mostra il tempo totale necessario per l’avvio e il tempo necessario per il caricamento di ciascun servizio. Notare che alcuni servizi vengono caricati in parallelo. Quindi, se uno richiede due secondi per il caricamento e gli altri tre secondi, non significa necessariamente che siano necessari cinque secondi in totale. Potrebbe essere molto meno di quello.

Apri un emulatore di terminale e inserisci questo comando:

Questo mostra quanto tempo ci vuole per il caricamento del kernel Linux e dei servizi di sistema di base, il che significa che non tiene conto del tempo necessario per l’avvio dell’interfaccia grafica. Per dirla in altro modo, questo mostra quanto tempo è necessario, dal momento in cui il kernel viene caricato fino a quando non si viene rilasciati sulla console Linux, che assomiglia a quanto illustrato di seguito.

systemd-analizza-console

Se non avessi un’interfaccia grafica installata, questo è ciò che verresti accolto sul tuo schermo.

Tuttavia, puoi anche vedere il tempo richiesto dall’interfaccia grafica per inizializzarsi con questo comando:

systemd-analizzare-graphic-target

Questo mostra che l’interfaccia utente grafica è stata caricata in 2,126 secondi. Questo non tiene conto del tempo necessario per caricare le utilità desktop. Per abilitarli / disabilitarli, avvia il gestore di avvio dell’ambiente desktop.

Infine, probabilmente il comando più utile ai fini di questo tutorial è:

systemd-analizza-colpa

Puoi navigare nell’elenco con i tasti freccia o PAGINA SU e PAGINA GIÙ. stampa q abbandonare.

Usa systemctl per disabilitare i servizi non necessari

Come puoi vedere nell’immagine precedente, il caricamento del servizio snapd richiede 1.295 secondi. Su un SSD, questo è trascurabile. Ma su un disco rigido, questi tempi sarebbero nell’ordine di più secondi e alla fine si sommerebbero molto. Inoltre, su un SSD molte cose vengono caricate in parallelo con un’efficienza incredibile. Su un disco rigido è molto difficile caricare i servizi in parallelo. Le testine di lettura che galleggiano sui piatti del disco devono spostarsi da settore a settore, quindi è quasi impossibile leggere veramente i dati in parallelo.

Per semplificare, immagina questo: se su un SSD vedessi cinque servizi che richiedono un secondo per l’avvio, è probabile che il tempo totale richiesto per caricarli tutti potrebbe essere inferiore a 1,2 secondi. Se, su un disco rigido, vedi gli stessi cinque servizi inizializzati in un secondo, è probabile che il tempo di caricamento totale sia molto superiore a cinque secondi.

Supponi di non aver bisogno del servizio snapd, che fornisce l’accesso agli snap ad applicazioni containerizzate. Puoi disabilitarlo con questo comando:

Ma, se riavvii, noterai che il demone snap è ancora in esecuzione. Questo perché altre dipendenze potrebbero avviarlo, anche se è disabilitato. Prova a vedere quali potrebbero essere:

systemd-analizza-grep-snap

snapd.seeded.service e snapd.socket sono i colpevoli qui. Un servizio figlio può richiedere di avviare il proprio servizio padre. Quando ne disabiliti uno, gli dici semplicemente di non avviarsi automaticamente all’avvio da solo. Ma esiste un metodo di forza bruta per aggirare questo problema.

Usa systemctl per mascherare un servizio

Questo fondamentalmente rende il file di servizio nullo in modo che le applicazioni non abbiano modo di avviare il servizio.

Nella maggior parte dei casi non è così complicato disabilitare un servizio. Questo esempio è stato scelto per mostrarti come affrontare scenari più complicati. In questo caso, snapd.seeded.service e snapd.socket dovrebbe essere disabilitato o anche mascherato.

Quanto segue mostra il tempo di avvio migliorato.

systemd-analizza-tempo di avvio migliorato

Conclusione

Da 4.078, il tempo di avvio è stato ridotto a 3.452 secondi, il che equivale a una diminuzione del ~ 15%. Non male, considerando che un solo servizio è stato disabilitato, e questo è su un SSD. Su un disco rigido è molto più facile ottenere risultati molto più significativi.

In questo particolare esempio, più servizi avrebbero potuto essere disabilitati con un comando come: sudo systemctl mask avahi-daemon.service ModemManager.service thermald.service pppd-dns.service.

Se preferisci un’applicazione grafica per gestire i tuoi servizi, puoi dare un’occhiata al file Systemd Manager progetto. Tuttavia, sarai limitato in ciò che puoi fare con esso, poiché la riga di comando offre molta più flessibilità.

Join our Newsletter and receive offers and updates! ✅

0 0 votes
Article Rating
Avatar di Routech

Routech

Routech is a website that provides technology news, reviews and tips. It covers a wide range of topics including smartphones, laptops, tablets, gaming, gadgets, software, internet and more. The website is updated daily with new articles and videos, and also has a forum where users can discuss technology-related topics.

Potrebbero interessarti anche...

Subscribe
Notificami
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x