systemd inicialização lenta - systemd-tmpfiles-setup

2

Recentemente fiz o upgrade para debian jessie (teste atual) e depois disso o tempo médio de inicialização aumentou para 3-4 minutos.

Entre grub e gdm start, recebo esta mensagem por 2-3 minutos.

A job is running for creating volatile and temporary files and directories

Aqui está a saída de systemd-analyze blame

[smit: ~] $ systemd-analyze blame 
    3min 14.096s systemd-tmpfiles-setup.service
          8.657s NetworkManager.service
          8.244s apache2.service
          7.048s ModemManager.service
          6.328s networking.service
          6.004s accounts-daemon.service
          5.288s binfmt-support.service
          4.557s systemd-logind.service
          4.541s alsa-restore.service
          4.541s console-kit-log-system-start.service
          4.530s lm-sensors.service
          4.521s pppd-dns.service
          4.520s redis-server.service
          4.519s hostapd.service
          4.519s minissdpd.service
          4.519s timidity.service
          4.519s nvidia-kernel.service
          4.518s rc-local.service
          4.437s bluetooth.service
          4.408s avahi-daemon.service
          2.243s systemd-fsck-root.service
          1.437s exim4.service
          1.415s keyboard-setup.service

Quando o sistema for iniciado, systemctl não reportará nenhum erro.

[smit: ~] $ sudo systemctl status systemd-tmpfiles-setup
● systemd-tmpfiles-setup.service - Create Volatile Files and Directories
   Loaded: loaded (/lib/systemd/system/systemd-tmpfiles-setup.service; static)
   Active: active (exited) since Fri 2014-10-17 01:19:09 IST; 1h 41min ago
     Docs: man:tmpfiles.d(5)
           man:systemd-tmpfiles(8)
  Process: 230 ExecStart=/bin/systemd-tmpfiles --create --remove --boot --exclude-prefix=/dev (code=exited, status=0/SUCCESS)
 Main PID: 230 (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/systemd-tmpfiles-setup.service

Por que systemd-tmpfiles-setup.service está começando lento? Onde posso obter logs detalhados de systemd-tmpfiles-setup.service ?

    
por smitrp 16.10.2014 / 23:33

3 respostas

1

Quando o systemd inicia um sistema, uma das primeiras unidades de serviço ativadas é o systemd-tmpfiles-setup. Este serviço executa o comando:

# systemd-tmpfiles --create --remove 

Este comando lê os arquivos de configuração de (menos relevante primeiro):

  • /usr/lib/tmpfiles.d / *. conf - esses arquivos são fornecidos pelo Pacote RPM e não deve ser editado pelo administrador do sistema.
  • /run/tmpfiles.d / *. conf - esses arquivos são normalmente usados pelos daemons para gerenciar seus próprios arquivos temporários de tempo de execução
  • /etc/tmpfiles.d / *. conf - esses arquivos são destinados a sysadmis para configurar temporário personalizado locais e para substituir o padrão fornecido pelo fornecedor

Além disso, há três locais onde arquivos temporários são armazenados:

  • / var - Dados variáveis específicos deste sistema que devem persistir entre as inicializações
  • / run - Dados de tempo de execução para processos iniciados desde a última inicialização. Isso inclui arquivos de ID do processo e arquivos de bloqueio, entre outras coisas. O conteúdo deste diretório é recriado na reinicialização.
  • / tmp - Um espaço mundial para arquivos temporários. Arquivos que não foram acessados, alterados ou modificados por 10 dias são excluídos automaticamente. Outro diretório temporário existe em / var / tmp em quais arquivos que não foram acessados, alterados ou modificados em mais de 30 dias são excluídos automaticamente.

Resumindo:
Verifique os arquivos de configuração tmp para ver por que a configuração tmp leva tanto tempo, especialmente observe as entradas no diretório / run porque ele foi recriado no momento da inicialização.

    
por 31.08.2017 / 11:40
0

Isso ocorre porque os beta e xícaras do Google Chrome tiveram problemas onde criaram milhões de arquivos em / tmp. Se / tmp é um tmpfs para você, tente desmontá-lo e remontá-lo. Caso contrário, rm -rf / tmp, em seguida, recrie-o.

    
por 25.10.2014 / 21:02
0

systemd-tmpfiles inicia antes da rede, portanto, dependendo da sua configuração, é possível que um dos arquivos de configuração systemd-tmpfiles (localizado em /usr/lib/tmpfiles.d) esteja tentando criar um diretório para um usuário ou grupo que está disponível apenas no sistema quando a rede está ativa, como um usuário ou grupo definido no LDAP.

Se for esse o caso, você deve procurar mover systemd-tmpfiles-setup.service para iniciar após a rede.

    
por 12.12.2018 / 23:46