%20%D0%B1%D0%B5%D0%B7%20sudo.png)
Я пытаюсь получить уникальный идентификатор системы. Во время исследования я наткнулся на , system serial number
который является именно тем, что мне нужно (также присутствует на корпусе компьютера). Серийный номер записан в файле, расположенном вsysfs:
/sys/class/dmi/id/product_serial
. Выполнение ls
показывает, что файл защищен от чтения и принадлежит пользователю root:
-r-------- 1 root root 4096 Mai 29 16:00 product_serial
Поэтому я не могу писать в него (что прекрасно), а также не могу читать его, без sudo
чего моя программа не может быть выполнена.
Если я изменю владельца этого файла на своего пользователя (который находится всудоgroup), то я могу прочитать его также с помощью моей программы без использования sudo. Но это перезаписывается при каждой перезагрузке.
Мой вопрос: можно ли прочитать этот файл (серийный номер) без использования sudo
? Возможно, есть другой способ получить серийный номер, который я упускаю?
Возможно, есть udev
правила, которые могли бы изменить владельца? Я видел, что они hal
существуют, и сделал именно то, что мне хотелось, но поддержка того, что отпало в пользу udev
. Я также думал о том, чтобы считывать информацию при sudo
запуске системы и сохранять ее где-то еще, но таким образом файл затем можно было бы изменять... Также есть, dmidecode
но также потребности sudo
в доступе к этому файлу..