2011-05-23 10:49:38 +0000 2011-05-23 10:49:38 +0000
118
118

Uzyskać konfigurację jądra z aktualnie działającego systemu Linux?

Przypadkowo usunąłem mój .config dla konfiguracji jądra w Linuksie, i wydaje mi się, że pamiętam, że był sposób na odzyskanie konfiguracji jądra poprzez system plików proc w jakiś sposób.

Czy to nadal jest możliwe, a jeśli tak to jak mam to zrobić?

Odpowiedzi (6)

118
118
118
2011-05-23 10:51:41 +0000

W zależności od systemu, znajdziesz go w którymś z tych miejsc:

  1. /proc/config.gz
  2. /boot/config
  3. /boot/config-$(uname -r)

i prawdopodobnie w większej ilości miejsc.

57
57
57
2013-01-18 08:34:10 +0000

Dla aktualnego działającego jądra, jednym ze sposobów uzyskania pliku konfiguracyjnego jest

cat /proc/config.gz | gunzip > running.config

lub,

zcat /proc/config.gz > running.config

Wtedy running.config będzie zawierało konfigurację działającego jądra linuxa.

Jednak jest to możliwe tylko wtedy, gdy twoje działające jądro linuxa zostało skonfigurowane tak, aby mieć /proc/config.gz. Konfiguracja do tego znajduje się w

  • General setup
  • [*] Kernel .config support
  • [*] Enable access to .config through /proc/config.gz

Większość dystrybucji nie posiada tej konfiguracji. Dostarczają one pliki konfiguracyjne jądra w swoich pakietach kernela i zazwyczaj znajduje się ona w katalogu /boot/.

39
39
39
2015-12-11 09:51:33 +0000

Trochę późno, ale może komuś pomoże. Nie miałem /proc/config.gz ani /boot/config ani /boot/config-$(uname -r) na moim komputerze. Musiałem uruchomić modprobe configs jako root. Wtedy, /proc/config.gz był obecny

9
9
9
2016-09-23 16:33:31 +0000

Jeśli nie udało Ci się znaleźć konfiguracji jądra w /boot/ ani w /proc/config.gz, możesz spróbować wydobyć te informacje z samego jądra.

Wewnątrz każdego kodu źródłowego jądra znajduje się skrypt do wyodrębniania configu zlokalizowany w scripts/extract-ikconfig, przekaż mu jako parametr kernel, którego konfigurację chcesz uzyskać.

To rozwiązanie będzie działać tylko wtedy, gdy Kernel .config support zostało włączone w skompilowanym jądrze.

6
6
6
2018-12-28 02:32:15 +0000

Niezależnie od dystrybucji, można uruchomić: cat /lib/modules/$(uname -r)/build/.config

Źródło: https://linux.die.net/man/5/proc (szukaj /proc/config).

1
1
1
2019-09-15 18:53:43 +0000

Dla dystrybucji opartych na RedHat, plik .config jądra off-the-shelf można znaleźć za pomocą polecenia cat /lib/modules/$(uname -r)/build/.config, które jest dostępne po zainstalowaniu pakietu kernel-devel za pomocą polecenia:

yum -y install kernel-devel

Zauważ, że w przypadku prawdziwej dystrybucji Red Hat Enterprise Linux, będziesz musiał włączyć repozytorium źródeł, aby uzyskać ten pakiet. Na RHEL8, użyj następującego polecenia, aby to zrobić:

subscription-manager repos --enable=rhel-8-for-x86_64-baseos-source-rpms