Pular para conteúdo

Criando um Servidor TFTP

imagems

Image by OpenClipart-Vectors from Pixabay

Introdução

Com a ideia de facilitar o processo de testes do bootloader, Kernel Linux e do Root FS é possível uma rede de computadores para carregar o Kernel e o Root FS, ao invés de flashar no cartão SD. O primeiro passo é saber como configurar o servidor. Para isso, foi utilizado o protocolo TFTP. Por fim, configurar o bootloader para buscar a imagem do Kernel Linux e o DTB no servidor, que foi mostrado no post Habilitando o env.txt com tfpt

Configurando o Servidor

É necessário instalar algumas dependências e configurar alguns arquivos.

Dependências

Podemos instalar os pacotes xinetd, tftp e tftpd com o comando:

sudo apt-get install xinetd tftp tftpd

Arquivo de Configuração

O serviço do TFTP busca o arquivo tftp, para isso devemos cria-lo:

sudo touch /etc/xinetd.d/tftp 

Dentro do arquivo precisamos adicionar algumas informações:

service tftp
{
protocol = udp
port = 69
socket_type = dgram
wait = yes
user = nobody
server = /usr/sbin/in.tftpd
server_args = /home/joao/Documents/TFTP -s
disable = no
}

O parâmetro server_args é o local onde ficará os arquivos que serão compartilhados.

Se for o caso, agora crie a pasta configurada no parâmetro server_args:

mkdir -p /home/joao/Documents/TFTP

Permissões

Como um outro dispositivo irá acessar essa pasta (no nosso exemplo, a beaglebone), a pasta criada precisa ter permissões para isso. Primeiro, vamos configurar os usuários:

sudo chown nobody:nogroup /home/joao/Documents/TFTP

Por fim, dando acesso total a pasta:

sudo chmod 777 /home/joao/Documents/TFTP

Cuidado

Cuidado ao utilizar o comando acima. Usar o 777 é altamente desencorajado. Lembre-se que esse é um setup de testes.

Reiniciando o Serviço

Por fim, basta reiniciar o serviço para que ele carregue as novas configurações:

sudo /etc/init.d/xinetd restart

Conclusão

O TFTP pode ser utilizado para compartilhar arquivos de forma geral, mas o propósito desse post é fazer com que o u-boot acesse o servidor criado e possa baixar a imagem do Kernel Linux.

Comentários