Depois de habilitar o Systemd de acordo com esta resposta no Ubuntu 22.04, sudo systemctl status
mostra State: degraded
.
Adicionalmente:
$ sudo systemctl --failed
UNIT LOAD ACTIVE SUB DESCRIPTION
● systemd-sysusers.service loaded failed failed Create System Users
LOAD = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB = The low-level unit activation state, values depend on unit type.
1 loaded units listed.
Como posso fazer a transição de degraded
para running
?
Isso se deve ao uso atual de um link simbólico de
/dev/shm
para/run/shm
no WSL. Existem vários problemas relacionados ao Github:Entre outras coisas, isso fará com que qualquer serviço Systemd usado
LoadCredentials=
falhe. Isso afeta vários outros serviços em outras distribuições, massystemd-sysusers
é o único serviço padrão no Ubuntu 22.10, pelo menos, a fazer uso disso.A solução alternativa, conforme documentado em #8996, é criar um novo serviço Systemd que corrija o problema antes que qualquer outra unidade Systemd faça uso desse dispositivo de memória compartilhada.
Adicione o seguinte:
Saia do Ubuntu,
wsl --terminate <distro_name>
(ouwsl --shutdown
) e reinicie.Confirme que
sudo systemctl status
agora mostrarunning
. Se não:sudo systemctl status fix_wsl2_shm.service
mostra que o serviço foi carregado.findmnt /dev/shm
mostra que está montado ou sels -ld /dev/shm
mostra que é um link simbólico.