几年来我一直使用 Linux 作为我的主要系统,特别是 Fedora,我总是看到我的主机名设置为“localhost”,除了当我连接到某些网络并且它成为我的 IP 时。今天我经历了以下行为,但我无法理解。
我在笔记本电脑的另一个分区上设置了 Ubuntu 安装,在 Ubuntu 安装期间设置了计算机名称/主机名。但是,当我重新启动回 Fedora 时,Fedora 已将我的主机名更新为我在 Ubuntu 安装中设置的名称。
我一直认为主机名是配置并存储在发行版安装的分区上的,确实在 Fedora 上 /etc/hostname 的内容仍然是“localhost.localdomain”,但运行该hostname命令会显示新的主机名。两个安装共享一个 efi 引导分区,但在其他方面是离散的。我想知道 Fedora 安装从哪里以及为什么读取新主机名?
我知道这是一个非常常见的问题,但我尝试了很多常见的答案(下面列举),但都无济于事。
基本设置:我正在设置 Fedora 31 / Ubuntu 18.04 双引导,每个分区都有一个单独的加密 / 和非加密 /boot 分区,以及一个 /boot/efi 分区,总共 5 个。首先安装了 Fedora,然后是Ubuntu。一切都很顺利,我可以从 efi 启动菜单启动到其中一个。我想锁定 efi 启动顺序并在 grub 中进行启动选择,而当前的 Ubuntu grub 选项错过了 Fedora。所以我启动到 Fedora 并尝试grub2-install /dev/sda将 MBR 重置为 Fedora 的 grub 配置并添加 Ubuntu。相反,我得到了 oh-too-common grub2-install: error: /usr/lib/grub/x86_64-efi/modinfo.sh doesn't exist. Please specify --target or --directory。
grub2-install --target=x86_64-efi --efi-directory=/boot/efi --bootfloader-id=grub2不做任何更改。dnf reinstall grub2-efi shim grub2-toolsgrub2-efi-modules尽管如此,我在我的/usr/lib/grub目录中可以找到的只是arm64-efiandi386-pc但没有x86_64-efi。我对 bootmgr 的东西有点不了解(我的经验一直延伸到解决这些问题,直到每次我有新安装时它们都能工作)。
有人猜测问题是什么或在其他地方寻找答案吗?