Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


admin_grundlagen:kernel

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
Nächste Überarbeitung Beide Seiten, nächste Überarbeitung
admin_grundlagen:kernel [2013/11/15 16:16]
ingo_wichmann [Kernel Bootparameter]
admin_grundlagen:kernel [2016/08/15 19:54]
ingo_wichmann [Einstellungen zur Laufzeit]
Zeile 7: Zeile 7:
   lspci   lspci
   lspci -v   lspci -v
 +  lspci -vv -nn # mit ids
 ===== SCSI ===== ===== SCSI =====
   lsscsi   lsscsi
Zeile 16: Zeile 17:
 ==== Kernel Meldungen anzeigen ==== ==== Kernel Meldungen anzeigen ====
   dmesg   dmesg
 +fortlaufend,​ mit Uhrzeit:
 +  dmesg -wT
  
 ==== Kernel Module anzeigen ==== ==== Kernel Module anzeigen ====
Zeile 32: Zeile 35:
   modprobe -r dummy   modprobe -r dummy
  
-Wenn das nicht geht, weil das Modul in Benutzung ist, dann kann man+Wenn das nicht geht, weil das Modul in Benutzung ist, dann kann man versuchen:
   rmmod -w dummy   rmmod -w dummy
  
Zeile 40: Zeile 43:
 ===== Konfigurations-Dateien ===== ===== Konfigurations-Dateien =====
 ==== Module nicht automatisch laden ==== ==== Module nicht automatisch laden ====
-Beispiel: automatisches laden des Moduls //ipv6// verhindern +Beispiel: automatisches laden des Moduls //ip_tables// verhindern
- +
-''/​etc/​modprobe.conf''​ : +
-<​file>​alias ipv6 off</​file>​+
  
 +''/​etc/​modprobe.d/​notip_tables.conf''​ :
 +<​file>​alias ip_tables off</​file>​
 ==== Module beim Starten laden ==== ==== Module beim Starten laden ====
 Beispiel: Modul //dummy// laden Beispiel: Modul //dummy// laden
Zeile 62: Zeile 64:
 ==== Modul-Optionen setzen ==== ==== Modul-Optionen setzen ====
 Beispiel: 2 Dummy-Interfaces erstellen Beispiel: 2 Dummy-Interfaces erstellen
 +=== einmalig ===
 +  modprobe dummy numdummies=2
  
 +=== dauerhaft ===
 +
 +''/​etc/​modprobe.d/​dummy_params.conf''​ :
 +(( veraltet:
 ''/​etc/​modprobe.conf''​ : ''/​etc/​modprobe.conf''​ :
 +))
 <​file>​options dummy numdummies=2</​file>​ <​file>​options dummy numdummies=2</​file>​
  
Zeile 70: Zeile 79:
   zypper search kmp   zypper search kmp
  
-==== Debian ====+==== Debian ​====
 Verfügbare Pakete anzeigen: ​ Verfügbare Pakete anzeigen: ​
   aptitude search modules   aptitude search modules
 +  aptitude search dkms
 ( Vorsicht: nicht alle angezeigten Pakete enthalten //​kernel//​-Module ) ( Vorsicht: nicht alle angezeigten Pakete enthalten //​kernel//​-Module )
- 
-Beispiel WLAN Treiber ipw3945 
-  aptitude install ipw3945-modules-2.6-686 ipw3945d firmware-ipw3945 
-  modprobe ipw3945 
  
 ==== CentOS 5 ==== ==== CentOS 5 ====
Zeile 137: Zeile 143:
   * http://​wiki.centos.org/​HowTos/​BuildingKernelModules   * http://​wiki.centos.org/​HowTos/​BuildingKernelModules
  
-===== Eigenes ​Kernel-Modul schreiben ​===== +=====Kernel ​kompilieren ​====== 
-Keine Angst, nur ein ganz einfaches "Hello World" Beispiel ... +[[lpi2::​kernel_kompilieren]]
-==== Debian ​==== +
- +
-  cd +
-  aptitude install linux-source-xxx +
-  tar xjf /​usr/​src/​linux-source-xxx +
-  mkdir hello +
-  vi hello.c +
-<​file>​ +
-#include <​linux/​init.h>​ +
-#include <​linux/​module.h>​ +
-#include <​linux/​kernel.h>​ +
- +
-static int hello_init(void) +
-+
-  printk(KERN_ALERT "Hello World!\n"​);​ +
-  return 0; +
-+
- +
-static void hello_exit(void) +
-+
-  printk(KERN_ALERT "Good bye world!\n"​);​ +
-+
- +
-module_init(hello_init);​ +
-module_exit(hello_exit);​ +
- +
- +
-MODULE_LICENSE("​GPL"​);​ +
-MODULE_AUTHOR("​me"​);​ +
-</​file>​ +
- +
-  vi Makefile +
-<​file>​ +
-obj-m   := hello.o +
-</​file>​ +
-  make -C ../​linux-source-2.6.18/​ SUBDIRS=$PWD modules+
  
 ====== Neuen Kernel installieren ====== ====== Neuen Kernel installieren ======
Zeile 187: Zeile 157:
 Mögliche Einstellungen sind in der Kerneldokumentation in der Datei ''​[[http://​kernel.org/​doc/​Documentation/​filesystems/​proc.txt|Documentation/​filesystems/​proc.txt]]''​ beschrieben. Hier ein paar Beispiele: Mögliche Einstellungen sind in der Kerneldokumentation in der Datei ''​[[http://​kernel.org/​doc/​Documentation/​filesystems/​proc.txt|Documentation/​filesystems/​proc.txt]]''​ beschrieben. Hier ein paar Beispiele:
  
-Auf sehr hoch belasteten Servern kann es Sinn machen, die Anzahl der gleichzeitig geöffneten Dateien zu erhöhen: 
  
-''/​etc/sysctl.conf'' ​: +IPv4-Pingantworten ausschalten:​ (( Defaults in ''/​usr/lib/sysctl.d/*'' ​(CentOS 7) )) 
-<​file>​ + 
-fs.file-max = 16384 +<​file ​txt /​etc/​sysctl.conf
-kernel.threads-max ​2048+net.ipv4.icmp_echo_ignore_all=1
 </​file>​ </​file>​
  
   sysctl -p   sysctl -p
  
 +oder
 +<file txt /​etc/​sysctl.d/​test.conf>​
 +net.ipv4.icmp_echo_ignore_all=1
 +</​file>​
 +
 +  sysctl -p /​etc/​sysctl.d/​test.conf
 +
 +Testen:
 +  ping localhost
 +
 +===== sysrq =====
 Wenn das System nicht mehr reagiert ( z.B. überhohe Last, X Absturz ) gibt es als letzte Rettung oft nur die "​magischen"​ Tastenkombinationen aus ALTGr + SysRq + Buchstabe ((Die vollständige Liste der Befehle steht in der Kerneldokumentation in der Datei ''​[[http://​kernel.org/​doc/​Documentation/​sysrq.txt|Documentation/​sysrq.txt]]''​ )): Wenn das System nicht mehr reagiert ( z.B. überhohe Last, X Absturz ) gibt es als letzte Rettung oft nur die "​magischen"​ Tastenkombinationen aus ALTGr + SysRq + Buchstabe ((Die vollständige Liste der Befehle steht in der Kerneldokumentation in der Datei ''​[[http://​kernel.org/​doc/​Documentation/​sysrq.txt|Documentation/​sysrq.txt]]''​ )):
  
-| Buchstabe | Funktion | +| Buchstabe | Funktion ​|  ​
-|h|Hilfe zu den SysRq Keys anzeigen| +|h|Hilfe zu den SysRq Keys anzeigen|help  ​
-|e|Allen Prozessen ( außer init ) das Signal TERM schicken| +|e|Allen Prozessen ( außer init ) das Signal TERM schicken|  tErm
-|i|Allen Prozessen ( außer init ) das Signal KILL schicken| +|i|Allen Prozessen ( außer init ) das Signal KILL schicken|  kIll
-|s|Alle gemounteten Dateisysteme syncen| +|s|Alle gemounteten Dateisysteme syncen|  Sync
-|u|Alle Dateisysteme umounten| +|u|Alle Dateisysteme umounten|  Umount
-|b|System _sofort_ rebooten| +|b|System _sofort_ rebooten|  reBoot
-|o|System _sofort_ ausschalten|+|o|System _sofort_ ausschalten| ​ ​powerOff| 
 +|k|Alle Prozesse diese Terminals killen| ​ KillTTY| 
 + 
 +  * //​Eselsbrücken:​ BUSTIER// <- (dann allerdings von Hinten nach Vorne) 
 +  * //SUB// - hektisches Notaus 
 +  * ''​K''​ ist sehr nützlich, um die grafische Oberfläche zu beenden. (Ersatz für Ctrl+Alt+Backspace)
  
   sysctl -w '​kernel.sysrq=1'​   sysctl -w '​kernel.sysrq=1'​
Zeile 220: Zeile 205:
 Eine Übersicht über die Parameter, die der Kernel beim Booten auswertet findet sich in der Datei ''​Documentation/​kernel-parameters.txt''​ in den Kernel-Quelltexten. ​ Eine Übersicht über die Parameter, die der Kernel beim Booten auswertet findet sich in der Datei ''​Documentation/​kernel-parameters.txt''​ in den Kernel-Quelltexten. ​
  
-Kernel Bootparameter können beim Booten oder über die Konfigurationsdatei des [[admin_grundlagen:​bootloader|Bootloaders]] ​( z.B. ''/​boot/​grub/​menu.lst''​ ) übergeben werden. ​+Kernel Bootparameter können beim Booten oder über die Konfigurationsdatei des [[admin_grundlagen:​bootloader|Bootloaders]] übergeben werden. ​
  
 ====== Kernel Compile-parameter ====== ====== Kernel Compile-parameter ======
admin_grundlagen/kernel.txt · Zuletzt geändert: 2020/09/07 10:22 (Externe Bearbeitung)