Eu tive um problema semelhante com um dispositivo USB usando o driver pl2303. De vez em quando / dev / ttyUSB0 iria desaparecer e / dev / ttyUSB1 apareceria em seu lugar.
Eu resolvi isso executando um cronjob a cada 15 minutos que fez o seguinte:
if [ ! -c /dev/ttyUSB0 ]
then
echo 'date' Device missing
echo 'date' Stopping zmconcopy '/usr/sbin/rczmconcopy stop 2>&1'
sleep 2
echo 'date' Unloading drivers '/sbin/modprobe -r pl2303 2>&1'
sleep 2
echo 'date' Reloading drivers '/sbin/modprobe pl2303 2>&1'
sleep 2
echo 'date' Starting zmconcopy '/usr/sbin/rczmconcopy start 2>&1'
echo 'date' Finished
fi
É importante que qualquer aplicativo que use / dev / ttyUSB0 seja interrompido antes de descarregar o driver de dispositivo.
Você pode estar usando um driver diferente de pl2303, então mude isso para qualquer que seja o seu driver.