Como listar portas seriais no Linux

Como Listar Portas Seriais No Linux



Portas seriais são interfaces usadas para comunicação com os dispositivos seriais conectados ao sistema. Dispositivos seriais, como mouses, teclados e modems, comunicam-se com o sistema transmitindo um bit por vez. O sistema estabelece comunicação com o dispositivo serial usando o nome da porta serial. No Windows, os nomes COM1 ou COM2 são atribuídos às portas seriais. Enquanto no Linux, os nomes do sistema ttyS0, ttyS1 e ttyUSB são usados.

Por padrão, os dispositivos seriais estabelecem automaticamente uma conexão com o sistema. No entanto, como administrador de sistema ou desenvolvedor, é importante conhecer os nomes das portas seriais. Eles são usados ​​na solução de problemas do sistema e dos aplicativos.

Comparado ao Windows, encontrar nomes de portas seriais no Linux é relativamente desafiador.







Neste guia de instruções, abordarei várias abordagens para exibir portas seriais no Linux.



Como listar portas seriais no Linux



Existem diferentes abordagens para listar as portas seriais no Linux.





Através do diretório /sys/class

No Linux, /sys/classe diretório contém informações sobre dispositivos conectados ao sistema. Esses dispositivos incluem dispositivos de bloco, dispositivos seriais, dispositivos de rede, dispositivos USB e dispositivos PCI. Uma classe de dispositivo significa um tipo específico de dispositivo conectado ao sistema e é usada para gerenciar esses dispositivos com eficiência. Para listar o conteúdo do diretório /sys/class, utilize o eu comando com o -eu bandeira.

eu -eu / sistema / aula / tty /*/ dispositivo / motorista



Isso listará todas as portas seriais, incluindo também os dispositivos virtuais e pseudo. Mas estamos interessados ​​apenas nas portas seriais disponíveis, que no meu caso é ttyAMA0 . Vamos remover o /plataforma/drivers/serial8250 da lista usando a filtragem grep.

eu -eu / sistema / aula / tty /*/ dispositivo / motorista / | pegada -em / plataforma / motoristas / serial8250

O -em é usado para inverter a partida, basicamente removendo a partida.

Agora mostra as portas que estão disponíveis para comunicação serial.

Para simplificar as coisas, um alias permanente pode ser criado para o comando fornecido acima, colocando-o no campo bashrc arquivo.

apelido getports = 'ls -l /sys/class/tty/*/device/driver/ | grep -v /plataforma/drivers/serial8250'

Através do comando dmesg

Para exibir as portas, a abordagem mais simples é usar o dmesg comando. O comando dmesg é usado para imprimir as mensagens do buffer de anel do kernel sobre o hardware conectado ao sistema e o erro encontrado pelo kernel durante a operação do sistema. Execute o comando dmesg e pegada para tty com privilégios sudo.

sudo dmesg | pegada tty

A saída mostra a porta serial ttyAMA0 .

Através do aplicativo Cutecom

Outro método para listar as portas seriais é usar aplicativos baseados em GUI. Para instalar o aplicativo Cutecom no Linux, use os seguintes comandos.

Ubuntu, LinuxMint e outras distribuições baseadas em Debian.

sudo apto instalar fofocom

Para Fedora.

sudo dnf instalar fofocom

Cutecom não pode ser instalado diretamente no Red Hat Enterprise Linux. Para instalar o Cutecom no RHEL, primeiro precisamos habilitar a versão EPEL, que é a abreviatura de Extra Packages for Enterprise Linux.

sudo yum instalar liberação quente

Agora, instale-o usando.

sudo yum instalar fofocom

Agora, inicie o aplicativo.

Clique no menu suspenso ao lado Dispositivo para ver uma lista de portas seriais disponíveis. Se você conectou vários dispositivos, ele listará as portas atribuídas de todos os dispositivos conectados.

Conclusão

Listar as portas seriais no Linux não é uma tarefa simples. Eles podem ser visualizados listando os /sys/classe diretório. Este diretório contém informações sobre portas seriais. Entretanto, nem todas as portas seriais representam hardware físico real. Existem muitos dispositivos virtuais e pseudo. Neste guia, discuti como listar as portas seriais usando abordagens como listar as /sys/classe diretório, usando o dmesg comando e instalando o aplicativo baseado em GUI Cutecom .