Ich bin in einer Situation, in der es sehr praktisch wäre, die Version eines geladenen Kernelmoduls durch Abfragen des geladenen Moduls oder der .ko-Datei zu finden.
Gibt es eine Standardmethode, dies zu tun, ohne in den Quellcode zu graben?
Laufzeitmethode
%Vor%Getestet mit Getestet auf Kernel 4.9.6 .
version
version
wird von MODULE_VERSION
angegeben. Die Datei existiert nicht, wenn MODULE_VERSION
nicht angegeben wird.
srcversion
srcversion
ist ein MD4 Hash des Quellcodes, der zum Kompilieren des Kernel-Moduls verwendet wurde. Es wird automatisch zur Erstellungszeit von Ссылка mit Ссылка
Um es zu aktivieren, entweder:
MODULE_VERSION
für das Modul CONFIG_MODULE_SRCVERSION_ALL
. srcversion
wird dann für alle Module generiert, einschließlich derjenigen ohne MODULE_VERSION
set: modinfo srcversion: Wie erstelle ich das aus meiner Quelle?
srcversion
ist nur vorhanden, wenn angegeben.
Sie können dann überprüfen, ob der eingebaute .ko
mit dem integrierten übereinstimmt mit:
Dies ist eine sehr nützliche Plausibilitätsprüfung, wenn Sie Ihre eigenen Kernel-Module entwickeln und Module zwischen Maschinen kopieren.
Tags und Links linux kernel-module