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

admin_grundlagen:kernel [2016/08/15 20:03]
ingo_wichmann [Einstellungen zur Laufzeit]
admin_grundlagen:kernel [2019/04/30 12:50]
Zeile 1: Zeile 1:
-====== Hardware Schnittstellen anzeigen ====== 
-  ls /​sys/​bus/​*/​* 
-===== USB ===== 
-  lsusb 
-  lsusb -v 
-===== PCI ===== 
-  lspci 
-  lspci -v 
-  lspci -vv -nn # mit ids 
-===== SCSI ===== 
-  lsscsi 
  
-====== Kernel-Module ====== 
-Modulverzeichnis: ​ 
-  ls /​lib/​modules/​$(uname -r)/ 
-===== Befehle ===== 
-==== Kernel Meldungen anzeigen ==== 
-  dmesg 
-fortlaufend,​ mit Uhrzeit: 
-  dmesg -wT 
- 
-==== Kernel Module anzeigen ==== 
-  lsmod 
- 
-==== Informationen und mögliche Parameter zu einem Modul anzeigen ==== 
-Informationen zum Modul "​dummy"​ anzeigen 
-  modinfo dummy 
- 
-==== Modul von Hand laden ==== 
-Modul "​dummy"​ laden 
-  modprobe dummy 
- 
-==== Modul entladen ==== 
-Kernel-Modul "​dummy"​ entladen: 
-  modprobe -r dummy 
- 
-Wenn das nicht geht, weil das Modul in Benutzung ist, dann kann man versuchen: 
-  rmmod -w dummy 
- 
-(( wenn auch das nicht geht, kann man noch  
-  rmmod -f dummy 
-probieren.)) 
-===== Konfigurations-Dateien ===== 
-==== Module nicht automatisch laden ==== 
-Beispiel: automatisches laden des Moduls //​ip_tables//​ verhindern 
- 
-''/​etc/​modprobe.d/​notip_tables.conf''​ : 
-<​file>​alias ip_tables off</​file>​ 
-==== Module beim Starten laden ==== 
-Beispiel: Modul //dummy// laden 
-=== Debian=== ​ 
-''/​etc/​modules''​ 
-<​file>​dummy</​file>​ 
- 
-=== SuSE ===  
-''/​etc/​sysconfig/​kernel''​ : 
-<​file>​MODULES_LOADED_ON_BOOT="​dummy"</​file>​ 
- 
-=== RedHat === 
-''/​etc/​rc.modules''​ :  
-<​file>​modprobe dummy</​file>​ 
-  chmod +x /​etc/​rc.modules 
- 
-==== Modul-Optionen setzen ==== 
-Beispiel: 2 Dummy-Interfaces erstellen 
-=== einmalig === 
-  modprobe dummy numdummies=2 
- 
-=== dauerhaft === 
- 
-''/​etc/​modprobe.d/​dummy_params.conf''​ : 
-(( veraltet: 
-''/​etc/​modprobe.conf''​ : 
-)) 
-<​file>​options dummy numdummies=2</​file>​ 
- 
-===== Fehlendes Kernel-Modul nachträglich installieren ===== 
-==== openSuSE 11.1 ==== 
-  zypper search kmp 
- 
-==== Debian 7 ==== 
-Verfügbare Pakete anzeigen: ​ 
-  aptitude search modules 
-  aptitude search dkms 
-( Vorsicht: nicht alle angezeigten Pakete enthalten //​kernel//​-Module ) 
- 
-==== CentOS 5 ==== 
-Verfügbare Pakete anzeigen: 
-  yum list | grep kmod 
- 
-=== Modul über ELRepo nachinstallieren === 
-ELRepo ist ein Repository mit Fokus auf hardware-nahen Paketen 
- 
-Repository [[http://​elrepo.org|ELRepo]] hinzufügen (siehe auch [[yum]]): 
- 
-Verfügbare Pakete anzeigen: 
-  yum search kmod 
- 
- 
-== Modul installieren == 
-  yum install kmod-ntfs 
-== testen == 
-  modprobe ntfs 
-  dmesg | tail 
- 
- 
-===== Fehlendes Kernel-Modul selbst bauen ===== 
-Problem: es gibt in der verwendeten Distribution keinen Treiber für folgendes Gerät: 
-  lsusb 
-<​file>​Bus 001 Device 005: ID 0a46:6688 Davicom Semiconductor,​ Inc.</​file>​ 
- 
-==== als Nutzer ==== 
-Lösung: jagen & sammeln & Modul selbst kompilieren:​ 
-Auf der Seite http://​alcopop.org/​unix/​linux/​dm9601/​ sind zwei passende Treiber verlinkt: 
-  wget http://​www.silencio.ro/​DM9601.GZ 
-Entpacken und hineinwechseln:​ 
-  tar xzf DM9601.GZ 
-  cd 2.6.18/ 
-USB-ID hinzufügen:​ 
-  vi dm9601.h 
-<​file>​ 
-  DM9601_DEV( "​Davicom USB-100",​ 0x0a46, 0x6688, DEFAULT_GPIO_RESET ) 
-</​file> ​ 
-Kompilieren:​ 
-  make 
- 
-==== Als root ==== 
-Modul laden 
-  insmod /​tmp/​2.6.18/​dm9601.ko 
-Testen ob Gerät erscheint: 
-  dmesg 
-  ifconfig -a 
-Aufräumen: 
-  rmmod dm9601 
-Gerät entfernen 
- 
-Modul installieren:​ 
-  cp /​tmp/​2.6.18/​dm9601.ko /​lib/​modules/​`uname -r`/​kernel/​drivers/​usb/​net 
-  depmod -a 
- 
-==== Doku ==== 
-=== CentOS / Redhat === 
-  * http://​wiki.centos.org/​HowTos/​BuildingKernelModules 
- 
-====== Kernel kompilieren ====== 
-[[lpi2::​kernel_kompilieren]] 
- 
-====== Neuen Kernel installieren ====== 
-===== Debian 6.0 ===== 
-[[admin_grundlagen:​paketverwaltung#​zusaetzliche_repositories|Repository]] hinzufügen,​ z.B. Debian Backports 
- 
-  apt-get -t squeeze-backports install linux-image 
-Passende Version auswählen, z.B. 
-  apt-get -t squeeze-backports install linux-image-2.6.39-bpo.2-686-pae 
- 
-====== Einstellungen zur Laufzeit ====== 
-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: 
- 
-=== Maximale PID === 
- 
-Maximale PID anzeigen: 
-  sysctl kernel.pid_max 
- 
-Aktuelle PID ermitteln: 
-  cat & 
-  kill 19477 
- 
-Maximale PID ändern (kleiner als die grade ermittelte):​ 
-  sysctl kernel.pid_max=18000 
-  cat & 
-  kill %1 
- 
-=== IPv4-Pingantworten ausschalten === 
-(( Defaults in ''/​usr/​lib/​sysctl.d/​*''​ (CentOS 7) )) 
- 
-<file txt /​etc/​sysctl.conf>​ 
-net.ipv4.icmp_echo_ignore_all=1 
-</​file>​ 
- 
-  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]]''​ )): 
- 
-| Buchstabe | Funktion |  | 
-|h|Hilfe zu den SysRq Keys anzeigen|help ​ | 
-|e|Allen Prozessen ( außer init ) das Signal TERM schicken| ​ tErm| 
-|i|Allen Prozessen ( außer init ) das Signal KILL schicken| ​ kIll| 
-|s|Alle gemounteten Dateisysteme syncen| ​ Sync| 
-|u|Alle Dateisysteme umounten| ​ Umount| 
-|b|System _sofort_ rebooten| ​ reBoot| 
-|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'​ 
- 
-Diese Einstellungen rebootfest machen: 
- 
-''/​etc/​sysctl.conf''​ : 
-<​file>​ 
-kernel.sysrq = 1 
-</​file>​ 
- 
-====== Kernel Bootparameter ====== 
-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]] übergeben werden. ​ 
- 
-====== Kernel Compile-parameter ====== 
-Auf den meisten Systemen ist es nicht notwendig, den Kernel neu zu kompilieren. Es macht Unerfahrenen mehr Ärger als es bringt. Trotzdem ist es interessant,​ sich die Einstellungen anzusehen, die auf Kernel-Ebene möglich sind: 
- 
-http://​kernel.xc.net/​ 
- 
-====== Dokus & Links ====== 
-  * http://​www.linuxtopia.org/​online_books/​linux_kernel_index.html 
admin_grundlagen/kernel.txt · Zuletzt geändert: 2019/09/17 10:04 (Externe Bearbeitung)