Для перезагрузки USB токена необходимо выполнить следующие набор действий:
- Устанавливаем утилиту usb-reset
sudo snap install usb-reset
sudo connect usb-reset:hardware-observe core:hardware-observe
sudo snap connect usb-reset:raw-usb core:raw-usb
- Проверяем, что USB токен действительно завис
pkcs11-tool --module /usr/lib/ecss/ecss-ds/lib/lpm_storage-3.14.0.70203.423017/priv/x64/librtpkcs11ecp.so -L
Вывод должен либо вообще ничего не показать, либо показать все слоты пустыми
- Узнать idVendor, idProduct USB токена. Для РуТокена команда следующая:
sudo lsusb -v | grep -C 10 "Rutoken ECP"
В указанном выводе ищем параметры idVendor, idProduct Пример
lsusb -v | grep -C 10 "Rutoken ECP"
FIXME: alloc bigger buffer for device capability descriptors
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 16
idVendor 0x0a89
idProduct 0x0030
bcdDevice 1.00
iManufacturer 1 Aktiv
iProduct 2 Rutoken ECP
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 93
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
- Перезапустить USB-устройство
sudo usb-reset <idVendor>:<idProduct>
Пример
sudo usb-reset 0x0a89:0x0030
Смотрим что слот(ы) появились
pkcs11-tool --module /usr/lib/ecss/ecss-ds/lib/lpm_storage-3.14.0.70203.423017/priv/x64/librtpkcs11ecp.so -L
Available slots:
Slot 0 (0x0): Aktiv Rutoken ECP 00 00
...