インテル® Edge Controls for Industrial のドキュメントに記載されている 手順を使用して EtherCAT デバイスを構成した後、デバイス情報を表示できません。
$ ethercat master
Failed to get master information: The ioctl of the device is inappropriate
このエラーは、/etc/sysconfig/ethercat ファイルが正しく設定されていないことを意味します。次のコマンド を使用して 、ネットワークデバイスを照会し、必要な構成変数 を指定します 。
$ sudo ifconfig
eno1: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether a4:ae:12:77:85:b6 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device memory 0x8e100000-8e17ffff
$ cat /sys/class/net/eno1/device/uevent
DRIVER=igb
PCI_CLASS=20000
PCI_ID=8086:1533
PCI_SUBSYS_ID=FFFF:0000
PCI_SLOT_NAME=0000:6d:00.0
MODALIAS=pci:v00008086d00001533sv0000FFFFsd00000000bc02sc00i00
上記のコマンドの出力を使用して、/etc/sysconfig/ethercat の MAC アドレス、PCI_SLOT_NAME、ドライバー を編集 します。
#/etc/sysconfig/ethercat MASTER0_DEVICE="a4:ae:12:77:85:b6" DEVICE_MODULES="igb" REBIND_NICS="0000:6d:00.0" #eno1