나는 실제로 예측 가능한 인터페이스 이름을 좋아합니다. 데비안 dist 업그레이드 후 재부팅하기 전에 이름을 알고 /etc/network/interfaces
그에 따라 변경할 수 있기를 원합니다. 어떻게 예측할 수 있을까요?
답변1
노트:원래 레거시 이름을 사용했던 데비안 시스템을 업그레이드하면 기본적으로 레거시 이름이 계속 사용됩니다. 업그레이드 프로세스는 /dev/null에 대한 심볼릭 링크를 배치하여 /etc/systemd/network/99-default.link
새 명명 정책 파일을 덮어씁니다 /lib/systemd/network/99-default.link
. 새 스타일을 사용하기로 선택한 경우 rm /etc/systemd/network/99-default.link
업그레이드 후 다시 시작하기 전에 이를 수행하십시오.
규칙 세트 의 새 버전이 udev
이미 있는 경우(표시된 대로: apt dist-upgrade
재부팅 후, 이전)
udevadm info -q all -p /sys/class/net/<current name of interface> |grep ID_NET_NAME
명명된 모든 옵션은 우선순위 내림차순으로 표시되어야 합니다.
enoN
네트워크 인터페이스를 온보드 통합 NIC로 식별하는 DMI 정보가 있는 경우 ID_NET_NAME_ONBOARD가 있습니다. 기본적으로 이 이름은 다른 모든 옵션보다 우선합니다.- 네트워크 카드가 PCIe 핫플러그 슬롯에 있는 경우
ensN
해당 슬롯 번호를 식별하는 ID_NET_NAME_SLOT 번호가 표시될 수 있습니다. - ID_NET_NAME_PATH는
enpNsM
PCI 장치 ID N:M.0에 해당합니다. 안타깝게도 장치 이름 번호는 10진수이고 PCI 장치 ID는 16진수이므로 일부 변환이 필요할 수 있습니다. - NIC에 별도의 PCI 기능으로 나타나는 여러 포트(PCI ID N:ML)가 있는 경우 ID_NET_NAME_PATH 로 변경됩니다
enpNsMfL
. - ID_NET_NAME_MAC 형식도 있습니다
enx<MAC address in hex>
. 이 기능은 기본적으로 사용되지 않지만 USB로 연결된 NIC에서는 편리할 수 있습니다.
아직 업그레이드를 실행하지 않은 경우 프로세스는 다음과 같습니다.
- 첫 번째 실행
dmidecode -t10
. 이더넷 인터페이스가 보고되면 온보드 인터페이스( )로 나열됩니다enoN
. - NIC가 있는 경우핫스왑 기능PCIe 슬롯의 경우 하드웨어 설명서에서 슬롯 번호를 식별할 수 있을 것입니다.
그런 다음
ethtool -i ethN | grep bus-info
네트워크 카드의 PCI 버스 식별자 보기를 사용하십시오. 버스 ID 번호를 16진수에서 10진수로 변환하면enp...
새 이름이 어떻게 표시되는지 알 수 있습니다. 예를 들어:버스정보: 0000:00:19.0
enp0s25 및 듀얼 포트 NIC에 매핑됩니다.
bus-info: 0000:01:00.0
그리고
bus-info: 0000:01:00.1
enp1s0f0
및 에 매핑됩니다 enp1s0f1
.
기본 이름을 조정하려면 디렉터리 .link
에 있는 파일을 사용하면 됩니다 /etc/systemd/network/
. man systemd.link
자세한 내용은 참조하세요. 예를 들어 USB 네트워크 인터페이스 스타일 이름 지정을 사용하려는 경우 다음 콘텐츠가 포함된 파일을 enx<MAC>
추가할 수 있습니다 ./etc/systemd/network/81-usbnet.link
[Match]
Path=*usb*
[Link]
NamePolicy=database mac