--reinstall install
::
Normalerweise ist dies geschrieben install --reinstall
, aber beide funktionieren einwandfrei. Dies bedeutet lediglich, dass apt-get
die Pakete neu installiert werden müssen.
linux-headers-
::
linux-headers-
ist der Anfang eines Paketnamens. Wenn Sie ausführen dpkg -l | grep linux-headers-
, sehen Sie eine vollständige Liste aller installierten Pakete, die damit beginnen:
Header-Dateien stammen von der GNU-Site :
Eine Header-Datei ist eine Datei mit C-Deklarationen und Makrodefinitionen, die von mehreren Quelldateien gemeinsam genutzt werden sollen. Sie fordern die Verwendung einer Header-Datei in Ihrem Programm an, indem Sie diese in die C-Vorverarbeitungsanweisung '#include' aufnehmen.
Und wie Sie der Antwort von dpkg -l | grep linux-headers-
entnehmen können, linux-headers-
sind die Pakete, mit denen beginnen, die Header-Dateien für den Linux-Kernel.
`uname -r`
::
Dies wird als Befehlssubstitution bezeichnet . (Der Link führt zur Seite faqs.org über die Funktionen zum Ersetzen von BASH-Befehlen.)
Dadurch wird der uname -r
Befehl ausgeführt, der die aktuelle Kernelversion zurückgibt:
und fügt dann das, was vom uname -r
Befehl zurückgegeben wird, in den sudo apt-get --reinstall install linux-headers-`uname -r`
Befehl ein.
Von der faqs.org-Seite:
Durch die Befehlsersetzung kann die Ausgabe eines Befehls den Befehl selbst ersetzen. Die Befehlsersetzung erfolgt, wenn ein Befehl wie folgt eingeschlossen ist:
$(command)
oder
`command`
Bash führt die Erweiterung durch, indem der Befehl ausgeführt und die Befehlsersetzung durch die Standardausgabe des Befehls ersetzt wird, wobei alle nachfolgenden Zeilenumbrüche gelöscht werden.
In diesem Unix / Linux-Q / A erfahren Sie auch, wie Sie BASH-Backticks verstehen .
Jetzt sehen Sie das nicht - Sie sehen nur die Ergebnisse. Wenn Sie den Befehl jedoch sehen würden, nachdem die uname -r
Antwort in den Befehl eingegeben wurde, würde dies ungefähr so aussehen (offensichtlich für Ihre aktuelle Kernel-Version ändern):
sudo apt-get --reinstall install linux-headers-3.16.0-31-generic
Vereinfachte Version:
Sie fordern apt-get auf, das Linux-Header-Paket für Ihre aktuelle Kernel-Version neu zu installieren.