Вы можете использовать опцию rsync
chmod, чтобы добавить разрешения на чтение к вашим целевым файлам:
rsync -r --chmod=g+rX source/ dest/
Обратите внимание на /
в конце как источника, так и адресата. Они указывают, что вы должны скопировать содержимое источника в каталог назначения. Если вы хотите иметь «исходный» каталог внутри dest, опустите /
из исходного кода.
У меня была аналогичная проблема. Если вы используете Linux, вы можете использовать команду strace
, чтобы узнать, как осуществляется доступ к устройству. В моем случае это были вызовы ioctl, как описано в /usr/include/Linux/hiddev.h
. Отсюда вы можете перехватывать вызовы ioctl и проверять все сообщения, которыми обмениваются. Хороший пример есть в ldpreload , но его нужно будет изменить, чтобы вывести сообщения HID.
Удачи, это непростая задача.