web-dev-qa-db-fra.com

Comment améliorer la vitesse de démarrage?

J'ai vu de nombreuses vidéos qui rendent Ubuntu plus rapide, mais ces méthodes ne font que rendre les performances de bureau plus rapides.

Je cherche à accélérer le démarrage de mon ordinateur. Est-ce que je peux faire quelque chose pour que Ubuntu démarre plus rapidement?

66
jnut

En règle générale, moins le nombre de programmes chargés au démarrage est élevé, plus votre système devrait être rapide. Essayez BUM (à partir du centre logiciel) pour désactiver certains services inutiles et assurez-vous également qu'aucun programme inutile n'est installé et qu'il ne sera chargé lors du démarrage. Enfin, l’utilisation d’un lecteur SSD en tant que périphérique d’amorçage devrait permettre d’améliorer considérablement l’amorçage.

Oh, encore une chose, votre type de système de fichiers fait également une différence. EXT4 a subi certaines régressions de performances (selon phoronix), mais j'ai toujours trouvé que EXT4 était idéal pour un démarrage rapide.

28
RolandiXor

Je viens de traverser cela l'autre jour. Son "e4rat" Instructions Here

Cette petite application est incroyable.

J'ai pris un sempron AMD à processeur unique surchargé fonctionnant à 2800+ qui démarre normalement Natty à 1,45 min à 27,885 secondes.

J'ai les tableaux de démarrage pour le prouver. C'est fou! enter image description here

17
Ringtail

L'amélioration du temps de démarrage est étroitement liée à la désactivation/gestion du service, mais les réponses actuelles manquent de détails concernant la désactivation de services qui utilisent systemdname__.

Qu'est-ce que systemd?

En bref, systemd est un gestionnaire de système et de service pour Linux, compatible avec les scripts d'initialisation SysV et LSB. Plus d'informations à ce sujet peuvent être lues sur page officielle du projet .

Vérifiez quels services prennent le plus de temps

Utilisez la commande suivante pour vérifier quel service prend le plus de temps

systemd-analyze blame

Désactivation du démarrage automatique des services au démarrage

Si vous souhaitez désactiver le démarrage automatique des services lors du démarrage, vous pouvez utiliser la commande suivante

Sudo systemctl disable some-time-eater-service.service --now

Cependant, vous voudrez peut-être voir quels autres services ont besoin du service en question. Pour vérifier, utilisez la commande suivante

systemctl list-dependencies some-time-eater-service.service --reverse

Remarque: remplacez some-time-eater-service.service par le nom de service actuel, par exemple [email protected].

Notez que la désactivation du démarrage automatique ne rend pas un service non-démarrable. Le service peut être démarré après le démarrage lorsque les besoins l'exigent. Si vous voulez le désactiver complètement, lisez la section suivante

Désactiver complètement les services.

Si vous souhaitez désactiver complètement un service afin qu'il ne puisse pas être démarré, vous devez utiliser maskau lieu de le désactiver. Comme ça

Sudo systemctl mask <SERVICE-NAME>

Remplacez le <SERVICE-NAME> par le nom réel d'un service

La différence entre masket disableest que le masque rend un service complètement désactivé, vous ne pouvez pas le démarrer. Vous devez unmaskpour le démarrer avec systemd (vous pouvez toujours commencer avec servicename__). Mais disabledésactive simplement le démarrage automatique d'un service, vous pouvez le démarrer plus tard.

Par exemple, après avoir masqué mon service [email protected], lorsque je voulais le démarrer avec systemctlname__, le message suivant s'affiche

Failed to start [email protected]: Unit [email protected] is masked.

Outil graphique

Un outil graphique que je trouve particulièrement intéressant est systemd-manager, il est toujours en phase de développement et n’a pas été redirigé vers le référentiel officiel Ubuntu. Cependant, vous pouvez l'installer très facilement à partir de page github de Systemd-Manager . Les versions contiennent un paquet .deb, très facile à installer. Vous avez cependant besoin de GTK-3.16 ou supérieur.

Une fois que vous avez téléchargé et installé, vous pouvez le démarrer avec la commande systemd-manager. Commencez le.

L'application a deux vues principales. L'un est Systemd Units et l'autre est Systemd Analyze . Vous pouvez le changer avec l'étiquette dans le coin supérieur gauche. Voir la capture d'écran.

Swithch Between Views

Et il existe trois types d'unités que vous pouvez gérer. Services , sockets et minuteries . Vous pouvez basculer entre eux. Voir la capture d'écran.

Switch between unit types

Affichage d'informations

Les trois onglets principaux sont Fichiers , Journal , Dépendances .

  • Fichiers est le fichier de configuration de l'unité sélectionnée.
  • Journal est la sortie du système actif tout en activant/désactivant/démarrant/arrêtant les unités
  • Dépendances indique quels autres services ou unités doivent être activés pour démarrer un service sélectionné.

Indicateurs d'état

Il y a deux colonnes à côté du nom des unités pour indiquer le statut. Celui de gauche indique si cette unité est activée pour démarrer au démarrage et celui de droite indique si cette unité est en cours de fonctionnement. Les voir en photo.

Enabled at boot status

Currently running status

Commutateurs de commande

Pour activer le statut d'activation ou de démarrage de toogle, deux boutons toogle se trouvent dans le coin supérieur droit. Activé signifie que les unités vont démarrer et démarrer. Les voir en photo.

Toogle switches to enable/start

La vue complète de l'application est présentée ci-dessous

Complete View

J'espère que cela aidera. Je profite d’autres réponses concernant systemd, mais j’ai vraiment besoin de rassembler les informations en un seul endroit.

Plus d'informations :

Pour en savoir plus sur systemdname__, vous pouvez visiter ces liens:

Les autres réponses ont des suggestions différentes. Y compris l’achat de disques SSD, l’augmentation de RAM etc. Si vous en avez les moyens, cela vous aidera certainement, en particulier la suggestion SSD.

17
Anwar

Passez d'un lecteur magnétique à un lecteur à semi-conducteurs ou à un lecteur hybride magnétique et à semi-conducteurs. Cela accélérera beaucoup le démarrage d'un système d'exploitation. Les disques hybrides ne sont pas beaucoup plus chers. Si vous ne voulez pas aller aussi loin, procurez-vous simplement un disque dur à 7 200 tr/min.

15
Jim McKeeth

Je suppose que vous parlez d'Ubuntu 11.04?
Cela fait assez longtemps que j'essaie, sans grand succès. Quoi qu'il en soit, ces étapes ont fait une différence de quelques secondes:

1. Suppression des paquets inutiles

apt-get purge brltty brltty-x11 foo2zjs min12xxw ttf-indic-fonts-core ttf-kacst-one ttf-khmeros-core ttf-lao ttf-punjabi-fonts ttf-unfonts-core

2. Utilisation des deux cœurs/processeurs pendant le processus de démarrage

NE LE FAITES QUE SI VOUS ÊTES SÛR QUE VOTRE ORDINATEUR DISPOSE DE PLUSIEURS CPU/CORES!
Ouvrez /etc/init.d/rc (vous aurez besoin des privilèges root) et remplacez CONCURRENCY=none par CONCURRENCY=Shell. Puis enregistrez le fichier.

Mettre à jour

"CONCURRENCY = Shell est maintenant obsolète et s'appelle" makefile ". Depuis le 2010-05-14, la valeur par défaut est" makefile "." ~ Jonathon =

3. Désactiver les démons inutiles

Ceci est un peu plus avancé, il est donc préférable de ne pas le faire si vous ne savez pas ce que cela signifie. Installez bumet démarrez-le avec les privilèges root. Ensuite, décochez les cases devant les démons dont vous n’êtes plus besoin. Par exemple, lorsque vous ne possédez pas de scanner, vous pouvez désactiver sanedname__. Et si vous n'utilisez jamais Bluetooth, vous pouvez également désactiver bluetoothname__.
Lorsque vous avez terminé, cliquez sur le bouton Appliquer et cliquez sur oui ou non (peu importe).

Une fois ces étapes terminées, redémarrez deux fois . Pour une raison quelconque, le premier redémarrage après la modification de toutes ces options prend beaucoup plus de temps que les autres, mais vous devriez remarquer une différence lors du deuxième redémarrage.

13
RobinJ

Utilisez bootchart pour produire des graphiques détaillés de ce qui prend du temps au démarrage. Cela peut aider à décider quoi modifier ou supprimer. De https://wiki.ubuntu.com/BootCharting :

  • Installez les paquets de bootchart et pybootchartgui via apt-get ou Synaptic
  • Redémarrez votre machine
  • Le graphique de démarrage se trouve dans/var/log/bootchart en tant que fichier .png
9
David Andersson

Remplacer votre disque dur par un SSD est probablement la seule méthode pratique. Exemple:

http://www.engadget.com/2011/08/17/samsungs-6gbps-ssd-gets-a-consumer-label-october-ship-date/

Le temps semble un peu excessif mais vous n’avez publié aucun détail.

4
Steve-o

Ma machine a démarré WAY plus rapidement si j'avais effectué une autre installation et ajouté manuellement les packages de l'interface graphique. Bien sûr, il supprime tout ce dont je n’ai pas besoin et que je suis capable d’ajouter moi-même. Si vous revenez avec "comment compiler/installer les applications X, Y et Z", cela pourrait ne pas être une bonne idée.

3
RobotHumans

Pour tous ceux qui ont des difficultés avec cela, installez simplement BUM et démarrez-le en tant qu'utilisateur root (faites attention à utiliser gksudo au lieu de Sudo normal). Puis décochez le service que vous souhaitez désactiver (j'ai désactivé Apache2, le démon PostGreSQL, MySQL, la boîte virtuelle, etc.) et c'est tout! Vous pouvez supprimer complètement le service si vous ne le souhaitez pas, mais le désactiver est largement suffisant.

Sudo apt-get install bum

enter image description here

3
Stefano Mtangoo

25.10.2016: Si vous n'allez pas utiliser l'hibernation parce que vous ne pouvez pas ou si vous préférez suspendre/S3, vous pouvez le désactiver dans Grub en ajoutant noresume à GRUB_CMDLINE_LINUX_DEFAULT dans /etc/default/grub et exécuter update-grub. Voici un exemple sur un Chromebook N22 sous GalliumOS:

livewire@zc01:~$ systemd-analyze
Startup finished in 8.580s (kernel) + 4.160s (userspace) = 12.740s

livewire@zc01:~$ systemd-analyze
Startup finished in 3.595s (kernel) + 4.254s (userspace) = 7.850s

J'ai trouvé cela parce que j'étais curieux à propos de la partie "Exécution de scripts local-premount" lors du démarrage et que je cherchais un peu dans initramfs, ce qui m'avait conduit à cette option que je n'utilisais auparavant que lorsque mon système ne pouvait pas sortir de la veille prolongée.


Éditer 06.08.2016: Vous devriez mettre à jour une version récente de votre distribution Linux fournie avec systemd.


Ingrédients:

  • Procurez-vous un système UEFI avec code UEFI ou Coreboot gratuit
  • Obtenir un SSD
  • Installer Ubuntu en mode UEFI
  • Bonus: Compressez initramfs avec xz lzop et n'incluez que les modules nécessaires. (Vous devriez vraiment savoir ce que vous faites avant d'essayer de le faire.)
  • Bonus: Supprimez les démons inutiles ou configurez-les pour un démarrage plus rapide. Bien que l'installation par défaut soit déjà suffisante.
    • Exemple: le travail d'initialisation de btrfs qui recherche des pools à monter alors qu'il n'y a pas de volumes btrfs sur ce périphérique. Cela m'a obligé à supprimer btrfs-tools de certaines de mes installations.

Je dois dire que 32 secondes est en fait assez bon. Cela ne sera pas beaucoup plus rapide avec du matériel traditionnel. Mon nouveau Lenovo T530 prend le même temps pour démarrer en mode hérité. Avec le nouveau micro SSD que j'ai récemment installé et Ubuntu en mode UEFI, il ne vous reste que 15 secondes pour appuyer sur le bouton d'alimentation pour vous connecter. On a toujours l'impression de perdre 5 secondes au cours du post, mais il ne faut surtout pas perdre de temps à démarrer le système d'exploitation. Le micro-SSD a une vitesse de transfert de 280 Mo/s. Peut être un SSD de 500 Mo/s pouvant atteindre 7 secondes. Mais c’est vraiment aux fabricants de réduire le temps de démarrage avant le système d’exploitation (POST ou non).

Concernant le profilage de démarrage et la concurrence du shell. Ces informations peuvent être considérées comme datées ou, éventuellement, comme un mythe. Je me souviens que le profilage de démarrage automatique ou quelque chose qui rendait le profil de démarrage absolument superflu avait été ajouté à Linux ou au système principal il y a des années. Depuis lors, je n'utilisais plus le profil de démarrage après l'installation d'un nouveau package de noyau. Le paramètre de concurrence de Shell était censé casser des choses, mais avec Systemd et Upstart, il devrait également être superflu et ne devrait avoir aucun effet positif.

2
LiveWireBT

Essayez d’éditer le fichier "/ etc/default/grub", comme le montrent la plupart des blogs. Vous connaissez probablement celui-là. Tout d’abord, ajouter Word "profil", puis redémarrer, puis supprimer "profil" puis redémarrer à nouveau ... cela améliore vraiment la vitesse de démarrage. Voici un exemple: http://lgjsheron.wordpress.com/2010/07/06/how-to-speed-up-boot-of-ubuntu-10-04-lucid-lynx/

2
Xamidovic

Garbagecollector a raison. Procéder avec prudence. Mais certains des programmes que vous pouvez désactiver en toute sécurité sont des utilitaires de messagerie tels que Evolution, en particulier si vous n'utilisez pas Evolution au début. En outre, tout élément lié à l'impression peut être désactivé si vous n'imprimez pas du tout. Même chose pour le sans fil si vous êtes câblé.

1
jfmessier