Não é possível encerrar o TFTP

Não é possível encerrar o TFTP

Estou tentando entender melhor um comportamento que vejo - assumi o controle de um servidor que tinha TFTP em execução e estou tentando desligá-lo. Eu já corri:

systemctl stop tftp

systemctl stop xinetd

No entanto, ao parar o serviço tftp, diz

Aviso: Parando tftp.service, mas ainda pode ser ativado por: tftp.socket

ss -lnpudepois me dá

UNCONN      0      0                             :::69                                        
:::*                   users:(("systemd",pid=1,fd=60))

Eu verifiquei e a porta ainda está escutando, mas o PID está listado como systemd? Não entendo o comportamento - como o TFTP está sendo executado diretamente pelo systemd?

Editar: descobri que havia outro "serviço" chamado tftp.socket em execução que mantinha o soquete aberto depois que eu eliminei o tftp.service. O que ainda não entendo é por que isso aparece como parte do pid systmed.

Responder1

O servidor tftp é iniciado para lidar com uma solicitação tftp. Como log não existe tal solicitação, systemdnão inicia o servidor tftp. Mas é necessário que haja um processo que escute a solicitação recebida na porta 69, caso contrário, a solicitação chegará ao bitbucket.

Esse processo é systemd.

Quando uma solicitação na porta 69 chega, o systemd desativa um servidor tftp para lidar com a solicitação. Quando o servidor tftp termina, ele simplesmente morre.

informação relacionada