/etc/udev/rules.d/70-pertant-net.rules CentOS를 제거하는 방법

/etc/udev/rules.d/70-pertant-net.rules CentOS를 제거하는 방법

VMware Recover Point를 사용하여 확장된 네트워크 장애 조치를 테스트하는 서버가 있습니다. 서버가 대체 사이트로 이동했을 때 MAC 주소가 변경되어 eth1파일이 재생성되어 70-persistent-net.rules새 MAC 주소로 새 eth0이 생성되었기 때문에 네트워크 인터페이스(eth0)가 변경되었습니다.

새 파일을 만들 수 있도록 시작 시 이 파일을 삭제하는 스크립트를 작성하고 싶지만 udev어디에 넣어야 할지 아는 데 문제가 있습니다. 시도해봤는데 /etc/rc1.d/S25_70위에 있지만 /etc/rc1.d/S26_udev-post작동하지 않습니다.

어떤 도움을 주셔서 감사합니다!

답변1

eth0가장 간단한 해결책은 파일에 70-persistent-net.rules각 서버의 관련 MAC 주소에 대해 하나씩 두 개의 규칙을 정의하는 것입니다. 이 파일 버전은 다음과 호환되어야 합니다.둘 다섬기는 사람.

server1에서 시작되면 server1의 MAC 주소는 eth0입니다.

server2에서 시작되면 server2의 MAC 주소는 eth0입니다.

예를 들어

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="11:11:11:11:11:11", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="22:22:22:22:22:22", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

서버의 하드웨어를 변경 "11:11:11:11:11:11"하고 일치시킵니다."22:22:22:22:22:22"


그런데 사용하는 경우 systemd/etc/systemd/network에는 일치하는 MAC 주소마다 하나씩 두 개의 파일이 있습니다. 예를 들어

/etc/systemd/network/10-eth0-1.link:

[Match]
MACAddress=11:11:11:11:11:11

[Link]
Name=eth0

/etc/systemd/network/10-eth0-2.link:

[Match]
MACAddress=22:22:22:22:22:22

[Link]
Name=eth0

에서 man 5 systemd.network:

[매치] 일부 옵션

네트워크 파일에는 [Match]특정 네트워크 파일을 특정 장치에 적용할 수 있는지 여부를 결정하는 섹션과 [Network]장치 구성 방법을 지정하는 섹션이 포함되어 있습니다.

지정된 장치와 일치하는 첫 번째(어휘적으로) 네트워크 파일이 적용되며, 이후의 모든 파일은 일치하더라도 무시됩니다.

답변2

다른 작업을 수행하기 전에 시작 스크립트를 수정하여 파일을 삭제해 볼 수 있습니다 udev.70-persistent-net.rules

또는 initramfs(빌드)에 사용자 정의 후크/스크립트를 추가하세요.

관련 정보