#!/bin/bash #echo "I am in ${0}" # skip this file for debian 10 if [ "$EPICS_HOST_ARCH" = "deb10-x86_64" ]; then exit fi ETHCATPCKGE="/ioc/NeedfulThings/EtherCAT/install-packages/ethercat-1.6.3-$(uname -r)-drv.deb" if [ ! -f "${ETHCATPCKGE}" ] then echo "${ETHCATPCKGE} does not exist" exit else if [ ! -r "${ETHCATPCKGE}" ] then echo "${ETHCATPCKGE} is NOT readable" exit else echo "Will install ${ETHCATPCKGE}" fi fi #udevadm control --log-priority=debug # this is probably not needed, because it did not start (package was missing) systemctl stop ethercat # stop if already running # install package dpkg -i ${ETHCATPCKGE} > /tmp/ethercat-install.log # service housekeeping systemctl daemon-reload # if ethercat.service was already there systemctl enable ethercat # if ethercat.service was not enabled # start ethercat service systemctl start ethercat # start (again) echo "ls -l /dev/EtherCAT*"; ls -l /dev/EtherCAT* sleep 1 udevadm trigger # make /dev/EtherCAT* rw for all: why I need this on some systems, and on some other not echo "ls -l /dev/EtherCAT*"; ls -l /dev/EtherCAT* sleep 1 echo "ls -l /dev/EtherCAT*"; ls -l /dev/EtherCAT*