Arch Linux 以太网接口在启动后始终处于关闭状态

Arch Linux 以太网接口在启动后始终处于关闭状态

我最近安装了 Arch Linux,除了互联网之外,一切都运行良好。启动后,我总是必须输入以下命令才能使其工作:

sudo ip link set enp3s0 up
sudo dhcpcd enp3s0

此后互联网连接便可正常运作。

我知道我可以创建一个在启动后自动运行的脚本,但我想知道解决这个问题的“好”方法是什么,以及为什么会发生这种情况,也许我在安装过程中做错了什么?

如果有帮助,这里有一些信息:(运行上述命令后收集)

03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101/2/6E PCI Express Fast/Gigabit Ethernet controller (rev 05)
    Subsystem: Dell Device 0578
    Flags: bus master, fast devsel, latency 0, IRQ 29
    I/O ports at 2000 [size=256]
    Memory at f1404000 (64-bit, prefetchable) [size=4K]
    Memory at f1400000 (64-bit, prefetchable) [size=16K]
    Capabilities: [40] Power Management version 3
    Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+
    Capabilities: [70] Express Endpoint, MSI 01
    Capabilities: [b0] MSI-X: Enable- Count=4 Masked-
    Capabilities: [d0] Vital Product Data
    Capabilities: [100] Advanced Error Reporting
    Capabilities: [140] Virtual Channel
    Capabilities: [160] Device Serial Number 0e-00-00-00-36-4c-e0-00
    Kernel driver in use: r8169
    Kernel modules: r8169

以及 ip link 的相关部分

2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 5c:f9:dd:62:dd:f0 brd ff:ff:ff:ff:ff:ff

答案1

几年后我来到这里,找到了可能的答案,因为我也遇到过这个问题。也许这将有助于未来的旅行者访问此页面。

一个基本事实 - Arch 目前使用 systemd 来控制系统服务。我们将发出命令告诉 systemd 在启动时启动 dhcpcd 服务。

假设您计划使用 dhcpcd(而不是网络管理器或其他选项),目标是让 dhcpcd 服务在启动时启动。dhcpcd 服务会自动启动任何必要的接口 - 至少是以太网类型的接口。无线显然需要额外的配置。

启用、立即启动和检查 dhcpcd 状态的命令:

$ systemctl enable dhcpcd.service
$ systemctl start  dhcpcd.service
$ systemctl status dhcpcd.service

注意:启用该服务也会导致其在启动时运行。

Arch 文档内容广泛且非常出色,但要实现几乎所有普通人都需要做的简单、基本的事情,需要大量的知识和阅读大量非常长的文档页面。读完所有这些之后,如果你很幸运,你最终会茫然地发现,对于大多数常见情况来说,只需要一两行代码。

答案2

systemctl enable dhcpcd.service

或者

systemctl enable [email protected]

此答案可能已过时,请参阅ArchWiki 页面提供更多信息

相关内容