配置文件意外删除

配置文件意外删除

我意外删除了在中找到的内核配置文件/boot。所以我有两个问题。

这会不会对系统造成影响?

我现在正在尝试编译 Linux 内核,并希望使用 Ubuntu 配置文件并在其基础上进行构建,那么在哪里可以获取有效的配置文件?

我在使用内核 3.13 的 Ubuntu 14.04 LTS 上

答案1

对于软件包提供的文件,您可以随时查找哪个软件包提供了这些文件,然后重新安装该软件包或下载软件包文件并提取文件。找到的配置文件/boot由软件包提供linux-image-*

$ dpkg -S /boot/config-3.13.0-26-generic 
linux-image-3.13.0-26-generic: /boot/config-3.13.0-26-generic

请注意配置文件的名称都遵循以下模式config-$(uname -r): 。uname -r是内核版本,看起来像3.13.0-26-generic。 由于dpkg存储了有关哪些当前安装的软件包添加了哪些文件的信息,因此只要这些软件包存在,甚至可以查找已删除的文件。 因此您可以执行以下操作:

dpkg -S /boot/config-$(uname -r)

这可能会显示该文件的所有者是linux-image-$(uname -r)。然后重新安装该内核包:

sudo apt-get install --reinstall linux-image-$(uname -r)

或者下载软件包并手动提取:

apt-get download linux-image-$(uname -r)
ar x linux-image-$(uname -r)*.deb
tar -xf data.tar.* ./boot/config-$(uname -r)

现在配置文件将位于boot/您解压它的目录中。

答案2

我认为配置文件现在对系统没有任何影响。

它仅用于构建内核映像和模块。也许,当你构建新的内核模块时,可以参考该配置文件。

由于读取配置文件,您可以查看内核包含的或动态加载的或未使用的模块。

例如,在配置文件中,

CONFIG_EXT3_FS=y

ext3fs 模块嵌入在内核映像中。

CONFIG_EXT3_FS=m

ext3fs 模块没有嵌入在内核镜像中,但是有运行时模块加载。

CONFIG_EXT3_FS=n

内核中没有使用 ext3fs 模块。

相关内容