아니요, 지속적인 네트워크 규칙을 원하지 않습니다.

아니요, 지속적인 네트워크 규칙을 원하지 않습니다.

저는 여러 다른 PC에서 사용하는 부팅 가능한 Linux 메모리 스틱을 가지고 있습니다(단, 모델과 구성은 모두 동일합니다). 문제는 udev가 eth 인터페이스의 이름을 바꾸므로 eth0마지막 PC에 있는 것이 갑자기 ethX가 된다는 것입니다. 여기서 X=1..inf입니다. /etc/network/interfaces시작 방법만 지정되었기 때문에 if-up(ifplugd에 의해 호출됨)이 실패하게 됩니다 eth0.

auto eth0
iface eth0 inet dhcp

이것은 잘 알려진 문제입니다. 검색한 결과 이는 MAC 주소 변경으로 인해 발생하며 제거할 수 있다는 것을 알았습니다 /etc/udev/rules.d/70-persistent-net.rules. 그러나 이는 재부팅 후에만 작동하며, 이는 불편하고 내가 원하는 동작이 무엇인지 알기 때문에 필요하지 않습니다.

내가 원하는 건비지속적net 규칙 또는 /etc/network/interfaceseth 이름 변경에 적응하는 스크립트 또는 ifplugd를 사용하여 수행할 수 있습니다. 이를 달성하는 가장 좋은 방법은 무엇입니까?

배포판: 우분투 8.04.

답변1

지속적인 네트워크 규칙은 /lib/udev/rules.d/75-persistent-net-generator.rules(또는 이와 유사한 최신 Debian 시스템을 찾고 있습니다.) 생성됩니다.

Ubuntu 8.04의 /etc/udev/rules.d에 생성기 스크립트가 아직 있으면 삭제할 수 있습니다.

그렇지 않으면 /etc/udev/rules.d에 빈 파일을 넣으면 /lib에 있는 파일을 덮어쓰게 될 것이라고 생각합니다.

인터페이스 이름을 지정하기 위해 자체 규칙 파일을 작성할 수도 있습니다. 이름이 이미 설정된 경우 영구 규칙 생성기는 인터페이스를 무시합니다.

답변2

나는 derobert의 조언에 따라 다음과 같이 /etc/udev/rules.d/75-persistent-net-generator.rules생성된 내용을 삭제하고 편집했습니다 ./etc/udev/rules.d/70-persistent-net.rules

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{type}=="1", KERNEL=="eth*", NAME="%k"

%k에서는 NAME커널 이름을 사용한다는 의미입니다 .

관련 정보