"일관된 네트워크 장치 이름 지정"을 사용할 수 있는지 확인

"일관된 네트워크 장치 이름 지정"을 사용할 수 있는지 확인

여러 시스템(더 정확하게는 두 개)에서 특정 네트워크 인터페이스의 이름을 알아야 하는 사용자 정의 소프트웨어가 있는데, "일관된 네트워크 장치 이름 지정"을 비활성화하는 등 아무것도 변경할 수 없습니다. 일부 시스템에서는 Network Manager의 이 새로운 기능을 사용하지만 다른 시스템에서는 일관된 네트워크 장치 이름 지정이 장치에서 사용 가능하고 활성화되었는지 확인하는 방법을 모릅니다.

100% 작동하는 시스템 버전을 사용할 수 있지만 이는 매우 해킹된 솔루션이므로 기능이 실행 중인지 알려주는 일종의 Linux 명령과 같은 좀 더 우아한 것이 필요합니다.

시스템은 ubuntu 16.04(이전 이름 ​​지정 체계를 사용하는 시스템) 및 CentOS 7(일관된 네트워크 장치 이름 지정을 사용하는 시스템)입니다.

답변1

장치가 존재하는지 테스트

가장 쉬운 방법은 네트워크 장치의 존재 여부와 이름을 테스트하는 것입니다. 그래서, 실행

ip l

그런 다음 네트워크 장치 eth0등이 존재하는 경우 이전 명명 체계를 갖게 됩니다 eth1. wlan0이름이 더 길면 enp[0-9]s[0-9]새롭고 일관된 구성표를 사용할 수 있습니다.

이를 스크립팅하려면 테스트할 수 있습니다(여기서 이더넷 테스트).

# test for new, consistent naming scheme
if ( "`ip l | egrep 'enp[0-9][1-9]?s[0-9][1-9]?:' | wc -l`" != "0" ) then

(쉘 if구문을 계속 사용하십시오. 당신이 무엇을 가지고 있는지 모르겠습니다).

또는 (기존 이더넷 및 Wi-Fi 테스트):

# test for old naming scheme
if ( "`ip l | egrep '(eth|wlan)[0-9][1-9]?:' | wc -l`" != "0" ) then

오래된 솔루션을 테스트하기 위해.

실제로 systemd테스트하고 싶을 수도 있지만 systemd구성을 통해 기본 동작을 변경할 수 있습니다.

관련 정보