Tempo máximo pelo qual um PC Linux pode ser UP? [fechadas]

12

Na verdade, eu tinha um sistema Linux (executando o Ubuntu 12.04.3) por dias sem reiniciar. Corri para alguns erros, como dormir ficando travado e algum sistema de arquivos montado na rede não conseguir montar, mesmo capaz de executar ping (verificado por outro PC, o suporte de rede estava funcionando bem).

Queria verificar se o Linux também requer a reinicialização da máquina após algum período de tempo para evitar esses tipos de erros distorcidos que não são repetíveis.

Qual é o tempo máximo que podemos manter o PC ativo? Existem outros problemas que podem ocorrer se tivermos um sistema ativo por um ano ou mais sem reinicialização?

pRAShANT
fonte
2
Eu não acho que exista um limite estático, já que os computadores não devem ficar acordados e funcionando por um longo período de tempo. Não há limite de classificação; é quanto tempo o seu computador pode ficar ligado. Por que você não gostaria de reiniciar ocasionalmente?
precisa saber é o seguinte
7
@ Zacharee1 umm, por que você gostaria de reiniciar? A menos que seja consumo de energia, realmente não há muito motivo. De fato, é melhor se você não o fizer. Geralmente, o hardware dura X anos por peça. Por uma questão de simplicidade, digamos que X é universalmente 10 (também não será muito distante) - isso geralmente significa 10 anos contínuos de uso que podem durar. Isso é uso normal. Se você reiniciar, isso não é de uso contínuo, mas também estará afetando muito o hardware da próxima vez que a máquina inicializar. Se você simplesmente deixar para lá - a maioria dos componentes gira para baixo, reduz o consumo e o desgaste de qualquer maneira.
VLAZ
1
Obviamente, as peças sofrem mais desgaste quando em uso. No entanto, a reinicialização (diferente de apenas desligar o sistema) não diminui o desgaste dos componentes, aumenta-o. Além disso, você entende fundamentalmente como os caches funcionam se você acha que os dados armazenados em cache na RAM tornam seu computador lento.
usar o seguinte comando
1
Se você estiver executando um servidor Web no Linux (por exemplo, LAMP), evite o máximo possível de reinicializações, pois isso reduziria seus sites durante o tempo necessário para o sistema retornar. Acho que nunca passei um ano, mas certamente vários meses sem reiniciar.
tcrosley
2
@ Zacharee1 praticamente qualquer coisa na RAM não abrandaria o seu computador. Se houver um vazamento de memória em um aplicativo, poderá levar, digamos, 60% da RAM e o sistema começará a trocar em breve, o que é lento, no entanto, a solução é reiniciar o aplicativo, não o SO. Parar a máquina interrompe o desgaste dos componentes, mas você os substituirá mais cedo do que normalmente na maioria dos casos. Além disso, como apontei, os componentes de hardware já diminuem o desgaste por si próprios. Simplesmente deixando o sistema ocioso.
VLAZ 30/04

Respostas:

36

Trabalhando como administrador do sistema, vejo os servidores Linux por mais de 700 a 800 dias sem reinicialização, portanto, não há limitações de tempo de atividade; os erros que você obteve não estão relacionados ao Linux (o kernel) em si.

Muitos serviços podem ser reiniciados e a maioria dos erros pode ser resolvida nos sistemas de produção.

user3417815
fonte
7
Pode confirmar isso. Tempo de atividade atual em um dos meus servidores: ~ $ tempo de atividade 00:13:15 até 883 dias, 9:00, 1 usuário, média de carga: 0,00, 0,01, 0,05 Ubuntu 12.04.4 LTS. Não há necessidade de atualizar nada, pois não está executando nada importante.
Minthos 29/04
5
Mantive com êxito uma instância Linux embutida por mais de 3 anos.
Rafał Cieślak
16

Não há necessidade técnica de reiniciar o computador após um determinado período de tempo. Eu tenho o meu funcionando há meses (incluindo atualizações de módulos do kernel) com algumas suspensões (para RAM e disco) no meio.

Há ocasiões em que

  • é absolutamente necessário reiniciar, como atualizações do kernel (mas elas não são urgentes em muitas situações, e em alguns casos você pode substituir um kernel em execução por um novo em um sistema ativo . Consulte kexec e Ksplice )
  • pode ser mais fácil reiniciar o sistema inteiro em vez de apenas um (conjunto de) subsistema (s).

Pode haver alguns problemas que "pioram" com o tempo (por exemplo, problemas de driver de hardware, processos com vazamento), mas esses são considerados bugs e geralmente podem ser corrigidos com uma atualização de software ou contornados por um recarregamento / reinicialização desse subsistema específico (também Veja acima).

David Foerster
fonte
6
Em tempo real, o patch do kernel recebe mais hype do que merece. É ótimo se você tiver tempo para verificar se uma atualização funcionará dessa maneira, mas qualquer alteração de código que torne as estruturas de dados na memória diferentes não pode ser apenas corrigida ao vivo. Não permitirá a atualização sem reinicialização para novos kernels em geral. Isso permitirá correções sem reinicialização para coisas como erros de verificação de permissão. É óptimo e impressionante não ter de reiniciar um servidor, mas não espere que isso lhe proporcione atualizações sem reinicialização para novas versões.
Peter Cordes
1
Eu concordo com Peter. É por isso que não mencionei o patch ao vivo nesse contexto para não complicar as coisas; infelizmente alguém editou minha resposta.
David Foerster
7

Embora tenha certeza de que há servidores com maior tempo de atividade, apresento o seguinte de um dos meus como um exemplo do que é possível:

# uptime
04:58:44 up 2186 days, 23:15,  1 user,  load average: 0.02, 0.02, 0.00

Este servidor foi instalado logo após o DC entrar no ar e não foi desativado desde então. Até agora, ele continuou feliz fazendo o que foi originalmente planejado e, quando esse objetivo for movido para um servidor diferente, colocarei algo lá apenas para monitorar o tempo de atividade e provavelmente permanecerá até que eu não possa justificar mantê-lo vivo. não mais.

Portanto, acho que "não existe um máximo" é definitivamente a resposta correta.

Kaithar
fonte
7

Não sei se isso afeta a estabilidade do sistema, mas o tempo de atividade máximo mostrado no Ubuntu com o kernel 3.19-xx é de 68,0962597349822anos em uma máquina de 32 bits e 292471208677,8627de uma máquina de 64 bits.

Isso ocorre porque o tempo de atividade atual do sistema, retornado pelo sysinfo()syscall, é retornado como um __kernel_long_ttipo , declarado como a longem um kernel de 32 bits e como long longem um kernel de 64 bits ;

A longem uma máquina de 32 bits tem um valor máximo de 2147483647;

A long longem uma máquina de 64 bits tem um valor máximo de 9223372036854775807;

Fazendo as contas, 2147483647s= 68,0962597349822anos e 9223372036854775807s= 292471208677,8627anos.

Quando esse valor aumenta, excedendo a capacidade de seu tipo, ocorre um estouro aritmético e é definido como o menor valor permitido por seu tipo (nos dois casos, um número negativo): esse pode ser um problema para os programas que dependem dele.

kos
fonte
3
O OP não está solicitando o tempo de atividade máximo que o sistema pode registrar com precisão, ele está perguntando se precisará reiniciar o sistema regularmente devido a alguma estabilidade / etc. limitação.
Boluc Papuccuoglu 30/04
@BolucPapuccuoglu Veja se, na sua opinião, se encaixa melhor neste formato, especialmente a última parte. Eu indiquei explicitamente qual poderia ser o problema. Se você ainda acha que não, excluirei minha resposta.
precisa
6

Eu estava em uma classe uma vez com um administrador de sistema que alegou que ele tinha um servidor Linux que estava sendo executado sem reinicializações por mais de uma década. Não há razão inerente para que um sistema precise ser reiniciado regularmente. Isso é necessário apenas em instâncias limitadas, como atualizações do kernel.

FWIW, normalmente deixo meu computador doméstico com Windows em execução. Normalmente, ele funciona bem por semanas sem reiniciar.

Phillip
fonte
Se o seu computador com Windows ficar semanas sem reiniciar, obviamente você não tem as atualizações automáticas ativadas. Eles geralmente são baixados semanalmente e quase sempre resultam em uma reinicialização.
precisa saber é o seguinte
@tcrosley Quem precisa de atualizações automáticas? É uma das primeiras coisas que desligo nessas máquinas. Decidirei como usar meu computador, não algum serviço automático.
Mast
@tcrosley Você tem certeza de que as atualizações de segurança do Windows geralmente são baixadas toda semana? Meu entendimento, tanto das políticas de lançamento de atualizações da Microsoft quanto da experiência pessoal usando o Windows, é que as atualizações geralmente são lançadas uma vez por mês. Mastro: embora você esteja livre para desativar as atualizações automáticas, não sei por que isso resultaria em mais tempo de atividade. Presumivelmente - espero! - você está atualizando manualmente, pelo menos para correções de segurança. Por outro lado, desabilitar atualizações automáticas pode facilitar o controle quando ocorre o tempo de inatividade.
Elias Kagan
@EliahKagan Eu tenho a minha máquina configurada para fazer o download não apenas de correções de segurança, mas também de atualizações de aplicativos, drivers, etc. Ele verifica atualizações todas as manhãs às 3:00 da manhã. Entrarei de manhã, e descobrirei que meu sistema foi reiniciado e, após o logon, há uma mensagem "Seu sistema foi reiniciado para instalar atualizações".
precisa saber é o seguinte
4

O Linux (o kernel) é muito bom em liberar recursos quando os programas são encerrados. GNU / Linux, todo o sistema operacional, geralmente é bom para ser executado indefinidamente. Reiniciar programas do espaço do usuário depois de atualizá-los geralmente é uma boa idéia, e geralmente a maneira mais fácil de obter tudo usando uma atualização glibcé reiniciar o sistema.

Em sistemas com bugs de driver (normalmente bugs de driver gráfico, todo o resto geralmente é sólido), às vezes você obtém um comportamento estranho que fica mais estranho se você não reinicializar logo. Se você vir um OOPS do kernel em sua dmesgsaída, reinicie o mais rápido possível e relate-o (ou procure por outras pessoas com problemas semelhantes em hardware semelhante, caso seja um problema conhecido). As distros não distribuem as versões mais recentes para desenvolvedores da pilha de gráficos; portanto, às vezes o bug já está corrigido no upstream, e sua placa de vídeo é nova demais para os drivers na versão de distribuição que você está executando para ficar estável. Nesse caso, procure um PPA com versões atualizadas do mesa / drm / xorg. (Não tenho certeza de qual é a melhor opção para rodar o Ubuntu com uma pilha de gráficos de ponta).

De qualquer forma, exceto no driver ou em outros erros do kernel, o Linux pode ser executado indefinidamente sem a necessidade de uma reinicialização para limpar a fragmentação da memória ou algo assim.

Eu tenho uma caixa de roteador / firewall / servidor de e-mail / shell do Linux (P3 450MHz, OCed a 500MHz) que normalmente vê uptime de centenas de dias. Reinicializo apenas para reorganizar os cabos de alimentação ou substituir uma fonte de alimentação com falha. Ele tem estado estável com a mesma CPU / RAM / discos rígidos por provavelmente 15 anos. Eu nunca tive que reiniciar "porque estava ficando instável". Era sempre por um motivo específico, como falha na fonte de alimentação ou atualização do kernel ou falta de energia e a bateria do meu no-break estava quase descarregada (acionando o desligamento automático com apcupsd).

Se seu sistema estiver agindo de forma estranha, verifique se dmesghá problemas. Se for apenas sua área de trabalho, se você acabou de instalar algumas atualizações de pacotes que não sejam do kernel, efetue logout / logon (ou reinicie, mas você não precisa). Eu descobri que o Kubuntu 15.04 terá problemas facilmente após as atualizações de pacotes, acho que devido à incompatibilidade binária entre versões atualizadas / não atualizadas da mesma biblioteca em execução no mesmo binário. (Veja a discussão sobre este bug ).

Meu objetivo para verificar problemas de hardware é inicializar o memtest86 +. ( aptitude install memtest86+) Deixe que passe um passe completo ou passe da noite para o dia. Isso não garante um sistema estável, já que a tensão da fonte de alimentação cai em cargas de pico, atualmente, com as CPUs, e o memtest não descarta isso. Nem aquecerá sua CPU, como o Prime95.

Peter Cordes
fonte
3

Minha máquina só reiniciou hoje para o 15.04 depois de ficar 11 dias sem erros estranhos que me lembro. Se você estiver trabalhando pesado e desenvolvendo um sistema, às vezes pode ser a única opção para reiniciar, mas é sempre necessário.

Patrick
fonte
Exatamente você está certo! Estou desenvolvendo no 16.04 há alguns meses. Por causa do congelamento, reinicio meu computador geralmente todos os dias. Mas tenho certeza de que o motivo é o que eu instalei, uso e drivers etc.
efkan
1

Tecnicamente, não há limites. você só precisa configurá-lo para não dormir ou desligar.

TheSuperMakuhita
fonte
3
Você poderia esclarecer e elaborar sua resposta mais? Especialmente esta linha you just have to set it to not sleep or shut down.
heemayl
“Tecnicamente não há limites” teria sido suficiente como uma resposta curta, concisa e correta.
Léo Lam
0

Pessoalmente, eu não gostaria de rodar meu laptop ou PC por dias sem reiniciar ou desligá-lo.

Simplesmente por causa dos principais componentes que geram calor podem acelerar o desgaste do MB.

(Isso se você não tiver o resfriamento e ventilação adequados)

Kingtoor
fonte
4
Se for lixo de consumo, como Acer ou HP, mas Thinkpads de negócios ou laptops Dell Latitude geralmente são melhores; Pessoalmente, tenho um Latitude rodando 24x7 há mais de um ano, fica ao meu lado e ainda funciona perfeitamente.
@kingtoor Por que seria melhor executar uma máquina 24x7 com refrigeração inadequada com reinicializações ocasionais do que executá-la 24/7 sem reinicializações? (Ou não é isso que você quer dizer?)
Elias Kagan
1
Desligar / dormir quando não estiver em uso em um laptop que fica quente quando deixado em funcionamento 24/7, tudo bem. Isso não está relacionado à reinicialização (sem tempo gasto) versus ao tempo de atividade contínuo.
Peter Cordes
Minha resposta está no meu comentário.
Kingtoor 5/05
Além disso, eu realmente não vejo nenhuma razão para um usuário médio executar seu PC 24/7, a menos que ele tenha um servidor. Essa é a minha opinião.
Kingtoor 5/05
0

Não específico do Ubuntu, mas eu tenho um laptop vintage de 1997 (300 MHz, 288 MB de RAM) executando uma distribuição baseada no Debian que teve tempo de atividade superior a 60 dias, enquanto executava um único programa (além de coisas do sistema e conky) e não iniciar e parar outro software, exceto um terminal para carregar atualizações semanalmente. Eventualmente, ele travou ao carregar as atualizações, em cerca de 63 dias. Por outro lado, meu sistema de desktop Kubuntu 14.04 congelará no bloqueio de tela após cerca de duas semanas. Eu concordo com outras respostas; é mais sobre qual software você executa e com que frequência inicia e para outros programas, e não sobre o Linux como tal.

Zeiss Ikon
fonte
Se ele travou (quero dizer travamento forte ou congelamento, não apenas travamento do X, que pode ser corrigido sem a reinicialização), isso provavelmente significa que há um problema de hardware (superaquecimento, RAM ruim, etc.). Como administrador de sistema, às vezes tenho meus servidores funcionando por meses sem reiniciar, embora prefira evitá-lo, pois é necessário reinicializar para aplicar as atualizações do kernel.
Quando o bloqueio da tela fica preto, não há maneira eficaz de saber se é um bloqueio do sistema rígido ou uma falha do servidor X - e não há maneira de acessar a linha de comando (sem a capacidade de digitar a senha) para reiniciar o X ou qualquer outra coisa pode ser. Estou inclinado a pensar que, se demorar duas semanas, não está superaquecendo ou com RAM ruim.
Zeiss Ikon
Ctrl + Alt + F1 não funciona? E um driver gráfico ruim pode ser o culpado - eles podem não ter sido testados com alto tempo de atividade em mente, mas o Linux é definitivamente capaz de funcionar por anos sem problemas.
Vou ter que tentar o CTL-ALT-F1, se me lembrar da próxima vez que travar um bloqueio de tela (estou usando a reinicialização completa). Presumo que usaria startxpara reiniciar o servidor X? Ou preciso usar um comando especial para reiniciar o serviço? Estou ciente do velho ditado do Linux, que "Reinicia é para atualizações do kernel e instalação de hardware".
Zeiss Ikon
Entre como root ou como um usuário normal e use sudo, e siga estas instruções