Я приступаю к программному проекту, который должен будет подтвердить идентичность устройства съемного носителя (например, флэш-накопителей USB), прежде чем он продолжит делать кучу других интересных вещей.
Некоторые мои друзья указали мне на использование серийного номера, и предварительное тестирование с помощью команды udevadm показывает, что это должно работать. Я сделал некоторые дополнительные проверки, и оказалось, что если я смогу заставить программное обеспечение работать с libudev, то оно должно (минимально) скомпилироваться на Ubuntu, Slackware и Gentoo, что было бы действительно хорошим преимуществом.
Поэтому я использовал bing, чтобы найти учебник и получил сайт Signal 11 (http://www.signal11.us/oss/udev/) Это очень хорошо написанное учебное пособие. На самом деле, кажется, там есть все, что мне нужно. Я загружаю код. Исправьте пару платформо-зависимых ошибки, а затем скомпилировать. BOOM! Gcc компилируется без ошибок. Пока все хорошо.
Но когда я пытаюсь запустить его, он обнаруживает пару ошибок, и я понимаю, что мне нужно прочитать еще несколько руководств, чтобы я мог достаточно хорошо понять libudev, чтобы исправить ошибки и найти работающее программное обеспечение. Проблема заключается в том, что на самом деле нет других учебных пособий (которые я могу найти), а сайт kernel.org, который является (единственным известным?) Сайтом документации библиотеки, недоступен после недавнего взлома сервера.
Я подумал о том, чтобы просто выпустить директивы udevadm для system () и затем проанализировать результаты, но это действительно хакерский способ собрать программное обеспечение вместе, и я планирую выпустить его для сообщества, когда закончу писать.
Так как же мне лучше узнать libudev ??