Ubuntu Server 16.04.3 LTS更新失败及网络接口异常问题咨询
解决HP Proliant DL380 G7上Ubuntu Server 16.04的两个问题:网络接口命名与apt update错误
关于网络接口命名为enp13s0f0的疑问
兄弟,先别慌这个看起来奇怪的接口名——这是Ubuntu 16.04开始采用的可预测网络接口命名规则,是systemd带来的变化,用来替代原来eth0/eth1这类容易因为硬件顺序变化而混乱的命名。
这个命名的含义其实很清晰:
en代表以太网(Ethernet)p13对应PCI总线编号s0对应插槽编号f0对应功能编号
这完全是正常现象,不会影响网络功能。如果你实在看不顺眼,想改回传统的eth0命名,可以这么操作:
- 编辑GRUB配置文件:
sudo nano /etc/default/grub - 找到
GRUB_CMDLINE_LINUX这一行,在引号内添加net.ifnames=0 biosdevname=0,修改后类似:GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0" - 更新GRUB生效:
sudo update-grub - 重启服务器,下次启动就会恢复成eth0这类传统命名了。
解决sudo apt-get update出错的问题
apt update出错大概率和网络连通性或者源配置有关,咱们一步步排查:
第一步:先确认网络是否真的连通
先通过ping命令验证网络链路是否正常:
# 测试公共DNS连通性 ping -c 4 8.8.8.8 # 测试Ubuntu老版本源服务器连通性 ping -c 4 old-releases.ubuntu.com
如果ping不通,先解决基础网络问题:
- 用
ip addr show enp13s0f0查看接口是否获取到IP地址,如果没有inet条目,手动触发DHCP获取:sudo dhclient enp13s0f0 - 检查路由器是否正常分配IP、网线是否插紧,也可以用
lspci | grep Ethernet确认服务器网卡是否被系统正常识别。
第二步:修复sources.list配置
Ubuntu 16.04(Xenial)已经结束官方支持,原来的archive.ubuntu.com源已经迁移到old-releases仓库,这是老版本用户遇到update错误的核心原因。
咱们替换成正确的源配置:
- 先备份原文件,以防操作失误:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak - 清空原文件并写入适配老版本的源:
sudo tee /etc/apt/sources.list <<EOF deb http://old-releases.ubuntu.com/ubuntu/ xenial main restricted universe multiverse deb http://old-releases.ubuntu.com/ubuntu/ xenial-updates main restricted universe multiverse deb http://old-releases.ubuntu.com/ubuntu/ xenial-backports main restricted universe multiverse deb http://old-releases.ubuntu.com/ubuntu/ xenial-security main restricted universe multiverse EOF - 再次执行更新命令:
sudo apt-get update
如果还是出错,检查是否有代理设置干扰:
env | grep http_proxy
如果输出了代理地址但你不需要代理,可用unset http_proxy临时取消,或者修改/etc/apt/apt.conf删除代理配置。
内容的提问来源于stack exchange,提问作者Hassine H'maied
相关产品推荐
相关产品推荐

