%20sem%20sudo.png)
Estou tentando obter um identificador exclusivo do sistema. Durante a pesquisa me deparei com o system serial number
que é exatamente o que preciso (também presente no gabinete do computador). O número de série está escrito no arquivo localizado emsysfs:
/sys/class/dmi/id/product_serial
. A execução ls
mostra que o arquivo está protegido contra leitura e pertence ao root:
-r-------- 1 root root 4096 Mai 29 16:00 product_serial
Portanto, não posso escrever nele (o que é perfeito) e também não posso lê-lo, sem sudo
o qual meu programa não pode ser executado.
Se eu mudar a propriedade deste arquivo para meu usuário (que está emsudogrupo), então posso lê-lo também com meu programa sem usar o sudo. Mas isso é substituído a cada reinicialização.
Minha dúvida é: a leitura deste arquivo (número de série) pode ser feita sem o uso do sudo
? Existe talvez outra maneira de obter o número de série que estou perdendo?
Existe talvez uma udev
regra que possa mudar a propriedade? Já vi que hal
existia e fiz exatamente o que gostaria, mas apoio o que caiu em favor do udev
. Também pensei em ler as informações sudo
na inicialização do sistema e salvá-las em outro lugar, mas assim o arquivo seria alterável... Também existe, dmidecode
mas também é necessário sudo
acessar esse arquivo.