有可能是网络接口可能处于关闭(DOWN)状态
# 1. 首先,查看你的有线网卡接口名,通常是 eth0, enp3s0, ens33 等
ip link show
# 2. 手动启用该接口 (将 <your_interface_name> 替换为你的实际接口名)
sudo ip link set <your_interface_name> up
# 3. 尝试通过 DHCP 自动获取 IP 地址
sudo dhclient <your_interface_name>
上述设置后,如果网络好了,为了避免下次重启时,网络还是处于关闭状态,我们可以创建一个 Systemd 服务,指定其开机启动
1. 确认你的网卡接口名称
首先,你需要知道你的网卡叫什么名字(例如 enp3s0, eth0, enp7s0 等)。
在终端输入:
ip link show
请记下那个处于 DOWN 状态的有线网卡名称,下文假设它叫 enp7s0,请替换为你实际的名称。
2. 创建启动脚本
我们需要创建一个脚本文件,里面存放你要执行的命令。
sudo nano /usr/local/bin/net-start.sh
在打开的编辑器中,输入以下内容(注意将 enp7s0 替换为你的网卡名):
#!/bin/bash
# 延迟 2 秒执行,防止系统还没初始化好网络硬件
sleep 2
# 开启网卡
sudo ip link set enp7s0 up
# 可选:如果你需要自动获取IP,可以加上这一行
# sudo dhclient enp7s0
按 Ctrl + O 保存,按 Enter 确认,然后按 Ctrl + X 退出。
3. 赋予脚本执行权限
sudo chmod +x /usr/local/bin/net-start.sh
4. 创建 Systemd 服务文件
现在我们要告诉系统开机运行这个脚本。
sudo nano /etc/systemd/system/net-start.service
将以下内容复制粘贴进去:
[Unit]
Description=Auto Start Network Interface
After=network.target
[Service]
Type=oneshot
ExecStart=/usr/local/bin/net-start.sh
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
按 Ctrl + O 保存,Enter 确认,Ctrl + X 退出。
5. 启用并测试
最后,启用这个服务:
# 重新加载系统配置
sudo systemctl daemon-reload
# 启用开机自启
sudo systemctl enable net-start.service
# 立即测试一下(不需要重启)
sudo systemctl start net-start.service
此时,你可以用 ip link show 查看网卡是否已经变为 UP 状态。下次重启电脑,它就会自动运行了。