# ubuntu 24.04 固定網卡名稱為 eth0 Linux 的網路介面名稱(如 `ens33` 或 `enp1s0`)是根據底層硬體匯流排位置 (PCI Slot) 自動產生的。而不同虛擬化環境,例如: VMware、KVM 都會有自己的命名方式,如果要前移 VM 到不同虛擬化環境,網卡名稱就會發生改變。 VMware 環境:網卡通常被識別為 `ens33`、`ens160` 或 `ens192`。 Harvester (KVM) 環境:遷移過去後,底層虛擬硬體變成了 KVM 的 VirtIO 架構,位置變了,所以 Linux 核心會把它識別為新名稱 `enp1s0`。 ## 原始網卡名稱 ``` $ ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host noprefixroute valid_lft forever preferred_lft forever 2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:50:56:87:29:32 brd ff:ff:ff:ff:ff:ff altname enp2s1 inet 172.20.1.11/16 brd 172.20.255.255 scope global ens33 valid_lft forever preferred_lft forever inet6 fe80::250:56ff:fe87:2932/64 scope link valid_lft forever preferred_lft forever ``` ## 修改網卡名稱 ``` $ sudo nano /etc/default/grub ...... GRUB_CMDLINE_LINUX_DEFAULT="" GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0" # 新改此欄位 ``` ``` $ sudo update-grub ``` * 修改網卡名稱 ``` $ sudo sed -i "s/ens33/eth0/" /etc/netplan/50-cloud-init.yaml ``` ``` $ sudo reboot ``` * 重新開機後網卡名稱固定為 `eth0` ``` $ ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host noprefixroute valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:50:56:87:29:32 brd ff:ff:ff:ff:ff:ff altname enp2s1 altname ens33 inet 172.20.1.11/16 brd 172.20.255.255 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::250:56ff:fe87:2932/64 scope link valid_lft forever preferred_lft forever ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up