Como acelerar a inicialização realmente lenta no Ubuntu 16.04?


39

Estou tentando entender o que preciso fazer para acelerar minha inicialização com o Ubuntu 16.04. Eu executei o dmesg e salvei a saída aqui . Tudo parece dar errado após cerca de 10 segundos.


Se você olhar para o seu dmesg, poderá encontrar uma entrada como 'novas opções de montagem não correspondem ao superbloco existente'. Se assim for Google para essa seqüência e vai levar você a um bug Linux que nunca foi corrigido
nickt

Eu não acho que estou vendo esse erro ou semelhante.
precisa

Por que você sente que as coisas ficam ruins aos 10 segundos? Qual mensagem você acha especialmente preocupante?
Ciro Santilli escreveu

Respostas:



29

Editar o UUID do / etc / fstab do espaço de troca (para combinar com a saída de sudo blkid) funcionou como um encanto!

Nota : Depois disso, se houver alguma entrada de troca no /etc/crypttabarquivo, você deve alterar seu segundo parâmetro para corresponder ao seu espaço de troca, seja por UUID ou caminho (por exemplo, UUID = alguma coisa ou / caminho / para / troca).

No meu SSD, a inicialização passou de 2 minutos para menos de 10 segundos.

O problema é que fiz uma atualização normal do 14.04 para o 16.04, sem mexer nas partições, quando esse problema começou. Claramente, existem alguns problemas com o procedimento de atualização.


Obrigado, isso me ajudou muito: para fins de teste, eu havia trocado um caddy removível, sem problemas de inicialização quando o disco não estava lá no 14.04, no 16.04 o boot demorava 1 ou 2 minutos a mais. Parece que o kernel 3 foi mais rápido que o kernel 4 quando não fundou a troca.
Emmanuel

Obrigado. você economizou muito tempo. Eu também estava atualizando o sistema a partir do 14.04, então esse problema ocorreu.
Paladin

Obrigado, eu tive o mesmo problema com a troca incorreta UUID, uma vez que o texto foi alterado para corresponder blkid demorou um tempo de inicialização longo de cerca de 60 segundos para apenas 5 segundos
Brandon Søren Culley

2
Procure em askubuntu.com/questions/38533/… resposta para obter mais informações sobre como fazê-lo. Reduzi meu tempo de inicialização de mais de 100 segundos para 15. #
Dmitry

sim, atualize para 17.10, mas meu swap uuid corresponde ao resultado de "blkid"
Vasil Valchev

10

Corri para o mesmo problema de maior tempo de inicialização após a atualização.

Qual era o problema? Eu havia excluído meu espaço de troca, portanto meu arquivo / etc / fstab e o novo sistema de arquivos estavam em conflito. O carregador de inicialização esperou quase 1m 30s para encontrá-lo.

Como resolvi o problema Execute sudo blkid

Abra seu arquivo / etc / fstab e compare a correspondência do uuid com as partições que você possui. Se houver incompatibilidade, altere isso e reinicie.


A dmesgsaída na pergunta mostra que o OP tem um problema diferente.
Byte Commander

9

É uma solução alternativa, mas isso reduziu significativamente meu tempo de inicialização (de 1 minuto 24s para 16s).

sudo vim /etc/systemd/system.conf

Remova o comentário desses dois parâmetros e defina o tempo limite desejado:

DefaultTimeoutStartSec=10s
DefaultTimeoutStopSec=10s

Nota: Otimize esses valores para corresponder às suas necessidades de hardware ~ 5 - 60s.

Como discutido aqui esses parâmetros configurar os tempos limite padrão para iniciar e parar de unidades, bem como o tempo padrão de sono entre as reinicializações automáticas de unidades, conforme configurado por unidade em TimeoutStartSec=, TimeoutStopSec=e RestartSec=(para serviços, consulte systemd.service (5) para detalhes sobre as configurações por unidade).

Para unidades fora de serviço, DefaultTimeoutStartSec=define o padrão TimeoutSec= value. DefaultTimeoutStartSec=e o DefaultTimeoutStopSec=padrão é 90s. DefaultRestartSec=o padrão é 100ms.


Editar - Mais detalhadamente:

Analisei a sequência de inicialização com a systemd-analyze plot > sequence.svgque mostrava os serviços falhando ao iniciar no meu sistema operacional atualizado recentemente. Havia três - um era um daemon sendmail mal configurado e, em seguida, powerd.service e NetworkManager-wait-online.service . Como não é uma boa ideia desabilitar completamente o serviço NetworkManager, deixo o tempo limite expirar após 10 segundos e aplico essa regra globalmente.


2
Você poderia expandir como essa solução reduziu o tempo de inicialização em 68 segundos?
Elder Geek

Sem probs, divirta-se!
Mirek

ele não funciona para mim, pois após aplicar as alterações, meu tempo de inicialização passou de 52 para 57 segundos.
Woitg 07/11

11
10s é muito baixo. Pode fazer a inicialização no modo de recuperação. Estou usando 30s
Anwar

O 10s interrompeu minha inicialização em 18.04. Agora reparando o Ubuntu no modo de recuperação.
Pasupathi

1

Isto pode estar relacionado a problemas do sistema de arquivos. Você pode verificar este link para ver se a reparação do sistema de arquivos melhora o tempo de inicialização: https://help.ubuntu.com/community/FilesystemTrou Resolução de problemas


Hmm. agora parece estar [mais longo!] ( pastebin.com/a5g4wHvA ) Parece que dá errado após cerca de 30 segundos. "eth0: link não está pronto" "nf_conntrack: Atribuição ajudante automático é obsoleto e será removido em breve Use o iptables alvo de CT para anexar ajudantes vez".
Packwood

0

Eu tive um problema semelhante que acabei de resolver: executo o Ubuntu 16.04 em um SSD. Eu uso uma unidade flash como partição swap. A unidade foi acidentalmente movida levemente e levou mais de 3 minutos para inicializar. Coloquei de volta corretamente e agora está tudo bem. Caso você tenha experimentado smartctl ou fsck e seu sistema de arquivos esteja em ordem, tente remover as unidades flash (ou outros periféricos?) E veja como ele funciona. Boa sorte!


0

Com base na sua saída pastebin, algumas coisas surgem para mim:

EXT4-fs (sda5): re-mounted

Você pode querer fsck este volume e dar uma olhada no Smart Data para essa unidade.

e

[   31.022220] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   45.720952] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   45.761548] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready

Você pode tentar desativar o IPV6 nas suas conexões de rede se a sua conexão não suportar.


0

Dica do usuário536489 a seguir:

culpa systemd-analyse

Verifique se existe um serviço que demora muito para iniciar e defina um tempo limite mais baixo:

sudo vim /lib/systemd/system/networking.service

Mude TimeoutStartSecpara algo como 10s. A página do manual indica um valor sem unidade em segundos ou um valor de intervalo de tempo como "5min 20s". Passe "infinito" para desativar a lógica de tempo limite.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.