Myslím, že je to tento příkaz:
dmesg | grep tty
Spuštění na mém vlastním Linuxovém boxu (který má pouze 1 sériový port) vytváří jednu výstupní linku ttyS0. Zkuste to na vlastní kůži, uvidíte, co tím myslím.
Podívejte se, které UART byly zjištěny v /proc/tty/driver/serial
. Řádek s uart:unknown
znamená:nic nebylo zjištěno (a pravděpodobně neexistuje).
# cat /proc/tty/driver/serial
serinfo:1.0 driver revision:
0: uart:16550A port:000003F8 irq:4 tx:0 rx:0
1: uart:16550A port:000002F8 irq:3 tx:111780 rx:1321 RTS|DTR|DSR
2: uart:unknown port:000003E8 irq:4
3: uart:unknown port:000002E8 irq:3
Pokud je něco připojeno a řídí linky CTS, DSR nebo CD (toto jsou vstupní linky), můžete si být dokonce docela jisti, že tam skutečně něco je... Totéž platí pro rx-byte-count.
Pokud to potřebujete provést programově, čtení výstupu z dmesg může být problematické, místo toho má složka /dev/serial/by-id symbolické odkazy, které jsou pojmenovány podle identifikovatelných dat vašeho zařízení a ukazují na konkrétní /dev/tty* jsou připojeni k.
Nejsem si jistý, jestli je to nějaké speciální pravidlo udev, které je specifické pro distribuci, ale v Ubuntu to funguje dobře, dejte mi vědět, jestli to funguje.