Re: Atrasar o desligamento no processo de shutdown

2022-03-10 Por tôpico Paulino Kenji Sato
Ola,

On Tue, Mar 8, 2022 at 6:55 PM Antonio Terceiro  wrote:

>
> Em princípio você pode colocar um script em
> /lib/systemd/system-shutdown/ que chama um sleep de quanto tempo você
> quiser, e o processo de desligamento vai esperar ele terminar. Veja a
> manpage de `systemd-shutdown`
>

Coloquei um script com sleep 30 nesse diretório.
Parece que o shutdown esta demorando os 30s.
Ao ler a documentação, fiquei curioso de como ele vai acessar o script se,
nesse ponto, todos os 'discos' já foram desmontados. Ele monta de novo em
Read Only.

Agora o certo era o systemd não só tentar desmontar todos os
> filesystems, como também chamar um sync() antes de desligar pra que o
> kernel termine de enviar os dados pro hardware, exatamente pra evitar
> esse tipo de coisa. Como exatamente esse seu filesystem está sendo
> montado? É possível que esteja dando erro na hora de desmontar
>

Isso deveria estar sendo feito, pelo menos era assim no SysVinit.
Mesmo assim um umount implica em um sync.
O problema e como o SSD funciona internamente, o buffer dele e muito maior
que de um HDD, e o processo de gravação pode demorar muito mais tempo que o
esperado, e firmware pode ter sinalizado que o bus já esta livre.


> Se você consegue reproduzir esse problema de forma consistente, seria
> interessante abrir um bug (no Debian ou no repositório upstream).
>

Não e um bug.
Seria mais um 'feature' do systemd, para que em casos especiais, um atraso
possa ser adicionado entes de enviar o poweroff para o 'kernel'.

***
On Thu, Mar 10, 2022 at 3:12 PM Vitor Hugo  wrote:

> Recomendo que faça backup urgente dos seus dados pessoais e importantes
> e verifique a saúde deste SSD.


Backup já foi feito, um novo SSD esta a caminho.
A coisa mais importante que tem nesse SSD e o Debian, se ele pifar, só vou
ficar algumas horas sem poder assistir os meus animes. :)


-- 
Paulino Kenji Sato


Re: Atrasar o desligamento no processo de shutdown

2022-03-10 Por tôpico Vitor Hugo
Recomendo que faça backup urgente dos seus dados pessoais e importantes 
e verifique a saúde deste SSD.


Qual a marca e modelo do SSD?


Em 08/03/2022 16:24, Paulino Kenji Sato escreveu:

Ola,
Estou tendo problemas de corrupção de FS em um SSD.
De vez em quando preciso iniciar um 'live linux' para poder rodar um 
fsck e reparar.
O processo de shutdown atualmente está muito rápido, então estou 
especulando que a causa da corrupção seja o corte no fornecimento de 
energia antes que o SSD grave de fato os dados.
Para comprovar ou não essa especulação precisaria atrasar o power off 
após a desmontagem dos discos.


É possível introduzir esse atraso no processo de shutdown (no systemd 
ou kernel)?


Poderia, em vez de desligar, fazer um reboot e desligar manualmente no 
tela do grub, mas isso não é nada prático


OBS.: E um atraso no processo de shutdown, não quando o shutdown deve 
ser feito.

--
Paulino Kenji Sato




Re: Atrasar o desligamento no processo de shutdown

2022-03-08 Por tôpico Antonio Terceiro
On Tue, Mar 08, 2022 at 04:24:11PM -0300, Paulino Kenji Sato wrote:
> Ola,
> Estou tendo problemas de corrupção de FS em um SSD.
> De vez em quando preciso iniciar um 'live linux' para poder rodar um fsck e
> reparar.
> O processo de shutdown atualmente está muito rápido, então estou
> especulando que a causa da corrupção seja o corte no fornecimento de
> energia antes que o SSD grave de fato os dados.
> Para comprovar ou não essa especulação precisaria atrasar o power off após
> a desmontagem dos discos.
> 
> É possível introduzir esse atraso no processo de shutdown (no systemd ou
> kernel)?
> 
> Poderia, em vez de desligar, fazer um reboot e desligar manualmente no tela
> do grub, mas isso não é nada prático
> 
> OBS.: E um atraso no processo de shutdown, não quando o shutdown deve ser
> feito.

Em princípio você pode colocar um script em
/lib/systemd/system-shutdown/ que chama um sleep de quanto tempo você
quiser, e o processo de desligamento vai esperar ele terminar. Veja a
manpage de `systemd-shutdown`.

Agora o certo era o systemd não só tentar desmontar todos os
filesystems, como também chamar um sync() antes de desligar pra que o
kernel termine de enviar os dados pro hardware, exatamente pra evitar
esse tipo de coisa. Como exatamente esse seu filesystem está sendo
montado? É possível que esteja dando erro na hora de desmontar?

Se você consegue reproduzir esse problema de forma consistente, seria
interessante abrir um bug (no Debian ou no repositório upstream).


signature.asc
Description: PGP signature


Atrasar o desligamento no processo de shutdown

2022-03-08 Por tôpico Paulino Kenji Sato
Ola,
Estou tendo problemas de corrupção de FS em um SSD.
De vez em quando preciso iniciar um 'live linux' para poder rodar um fsck e
reparar.
O processo de shutdown atualmente está muito rápido, então estou
especulando que a causa da corrupção seja o corte no fornecimento de
energia antes que o SSD grave de fato os dados.
Para comprovar ou não essa especulação precisaria atrasar o power off após
a desmontagem dos discos.

É possível introduzir esse atraso no processo de shutdown (no systemd ou
kernel)?

Poderia, em vez de desligar, fazer um reboot e desligar manualmente no tela
do grub, mas isso não é nada prático

OBS.: E um atraso no processo de shutdown, não quando o shutdown deve ser
feito.
-- 
Paulino Kenji Sato