나는 RHEL 8에 대해 읽고 있는데 이것은성명이 발표되었습니다:
네트워크 스크립트는 Red Hat Enterprise Linux 8에서 더 이상 사용되지 않으며 더 이상 기본적으로 제공되지 않습니다. 기본 설치는 nmcli 도구를 통해 NetworkManager 서비스를 호출하는 ifup 및 ifdown 스크립트의 새 버전을 제공합니다.
좋아, 나에게 이는 더 이상 사용되지 않는다는 것을 의미 하지만, 무엇을 교체해야 하는지 (또는 유사한 항목)를 /etc/sysconfig/network-scripts
읽은 내용에서는 명확하지 않습니다 .ifcfg-eth0
그런데 읽다보니이 페이지는 고정 IP 주소에 관한 것입니다., 이는 다음과 같이 주장합니다.
RHEL 8에서 고정 IP 주소를 구성하는 절차:
/etc/sysconfig/network-scripts/ifcfg-eth0
다음과 같은 이름의 파일을 생성합니다.DEVICE=eth0 BOOTPROTO=none ONBOOT=yes PREFIX=24 IPADDR=192.168.2.203
RHEL 8에서 네트워크 서비스 다시 시작:
systemctl restart NetworkManager
또는sudo nmcli connection reload
그렇다면 ifup
및 구성 파일은 더 이상 ifdown
사용되지 않지만 구성 파일은 남아 있습니까? 와 가 한 장에 모여 있는 것처럼 보이지만 scripts
차이가 있나요 ?configuration files
12장 RHEL 고정 네트워크 스크립트처럼:
12장 네트워크 스크립팅
...네트워크 인터페이스의 구성 파일과 이를 활성화 및 비활성화하기 위한 스크립트가 이/etc/sysconfig/network-scripts/
디렉터리에 있습니다.
그렇다면 더 이상 사용되지 않는 콘텐츠는 무엇으로 구성되나요? /etc/sysconfig/network-scripts
이는 여전히 고정 IP를 구성하는 적절한 방법이므로 스크립트가 아닌 것 같습니다 .
저는 아직 RHEL 8 시스템을 실행해 본 적이 없으므로 누군가 피해야 할 사항에 대해 알려줄 수 있기를 바랍니다.
답변1
/sbin/ifup-local
ifdown-pre-local
, 및 스크립트의 사용자 정의 명령은 실행ifdown-local
되지 않습니다.이러한 스크립트가 필요한 경우 다음 명령을 사용하여 더 이상 사용되지 않는 네트워크 스크립트를 시스템에 설치할 수 있습니다.
~]# yum install network-scripts
따라서 network-scripts
RHEL 8 RPM 파일에 포함되어 있거나 해당 RPM의 기능에 의존하는 모든 항목은 이제 더 이상 사용되지 않습니다. 특히, 이전에 스크립트를 사용하여 /sbin/ifup-local
일부 고급 라우팅이나 기타 특수한 네트워크 구성을 설정한 적이 있다면 이를 수행하는 새로운 방법을 찾아야 할 때입니다.
NetworkManager가 RHEL에 도입되었을 때 이전 구성 파일 위치를 사용하는 구성 백엔드가 포함되어 있었고 여전히 포함되어 있지만 새로운 NetworkManager 인프라와 이전 구성 스크립트 구문의 확장 버전이 포함되어 있습니다. 그래서 /etc/sysconfig/network-scripts/ifcfg-*
파일아직 거기 있을 거야이제 NetworkManager에 의해 구문 분석되고 소스 스크립트로 실행되지는 않지만 동일한 구문을 사용합니다.
더 이상 사용되지 않는 network-scripts
패키지에는 주로 다음이 포함됩니다.
- SysVinit 스타일 서비스 스크립트
/etc/init.d/network
ifup*
및 디렉토리에서 본ifdown*
스크립트init.ipv6-global
network-functions*
/etc/sysconfig/network-scripts/
/usr/sbin/ifup
및 클래식 버전( 기본적으로 존재하는/usr/sbin/ifdown
호환성 래퍼를 재정의함)nmcli
/usr/sbin/usernetctl
명령- 관련 문서 및 예제 파일
따라서 더 이상 사용되지 않는 RPM을 사용하지 않는 경우 network-scripts
이제 디렉토리 /etc/sysconfig/network-scripts/
가오직ifcfg-*
네트워크 인터페이스 및 사용자 지정 경로에 대한 파일이 포함되어 있지만 route-*
다른 파일은 전혀 포함되어 있지 않습니다. 이 명령이 필요한 경우 더 이상 사용되지 않는 기능이므로 대체 명령으로 usernetctl
적절한 하위 명령을 사용해야 합니다 .nmcli
ifup
여전히 사용할 수 있지만 이제 더 이상 사용되지 않는 RPM을 설치하지 않는 한 ifdown
완료하여 작업할 수 있습니다 .NetworkManager
network-scripts
답변2
RHEL 7의 PXE 설치를 수행하는 동안 NetworkManager를 사용하여 kickstart를 사용하여 네트워크를 구성했을 때 환경이 약간 불안정하다는 것을 발견했습니다. 이것이 바로 네트워크 인터페이스를 수동으로 구성해야 했던 이유입니다. 또한 구성 NetworkManager에서 비활성화하기로 결정했습니다. 이번 소식으로 NetworkManager로 이전하게 되었습니다.
현재 RHEL은 initscript 대신 네트워크 스크립트 rpm을 사용하여 레거시 동작을 지원합니다.
https://access.redhat.com/solutions/3777201
여전히 구성 파일에서 NM_ControlLED=no를 사용하고 NM을 비활성화하려는 경우 다음 문서에서 이 주제를 더 자세히 다룹니다.
https://www.golinuxcloud.com/unit-network-service-not-found-rhel-8-linux/
그러나 현명한 선택은 NetworkManager에 천천히 적응하고 NM 문제에 대한 Red Hat 지원에 대한 후속 조치를 취하는 것입니다. 왜냐하면 Red Hat이 언제 사용자에게 NM을 완전히 강요하기 시작할지 모르기 때문입니다.
답변3
RHEL 8은 여전히 네트워크 스크립팅을 지원하며 기본적으로 최소 구성에서 사용할 수 있습니다.
확인하다네트워크 구성 및 관리 장RHEL 문서에 있습니다.
다음 튜토리얼도 참조하세요.RHEL 8에서 고정 IP 주소를 구성하는 방법그리고RHEL 8 및 Centos 8에서 고정 IP 주소를 구성하는 방법.
답변4
더 이상 사용되지 않는 네트워크 스크립트를 계속 지원해야 하는 매우 타당한 이유가 여전히 있지만(예: RHEL8은 루프백 인터페이스에서 별칭 애니캐스트 IP를 지원하지 않음) 일부 사항은 통제할 수 없습니다.
대부분의 경우 이는 다음과 같은 방법으로 진행됩니다.
- "키 파일"을 읽도록 NetworkManager를 구성합니다.
- 키 파일 형식으로 네트워크 스크립트의 NetworkManagers 버전 생성/편집
- NM 키 파일이 루트 소유이고 권한이 600인지 확인하세요.
- 재부팅하거나
nmcli con reload
(systemctl restart NetworkManager
작동하지만 보장되지는 않는다고 합니다.)
"키 파일"을 읽도록 NetworkManager를 구성합니다.
/etc/NetworkManager/NetworkManager.conf
아니면 순서대로 읽으세요
/etc/NetworkManager/conf.d/50-whatevername.conf
"main" 섹션 아래의 플러그인에 "keyfile"을 설정/추가합니다.
[main] plugins=keyfile
원격으로 관리하고 연결이 이전 네트워크 스크립트를 기반으로 하는 경우 다음 사항을 확인해야 할 수 있습니다.둘 다로드된 플러그인:
[main] plugins=keyfile,ifcfg-rh
NetworkManager 키 파일을 생성/편집합니다(파일 이름은 중요하지 않은 것 같습니다).
이제
/etc/NetworkManager/system-connections
새로운(그러나 이전 MS Windows와 유사) "키 파일" 형식으로 NetworkManager 네트워크 스크립트 파일을 편집할 수 있습니다.인터페이스의 실제 MAC 주소를 가져오고 uuid를 무시하거나(자동으로 생성됨) cli 도구를 사용하여 직접 생성하십시오
uuidgen
.키 파일 예:
# Translate REF - https://people.freedesktop.org/~lkundrak/nm-docs/nm-settings-ifcfg-rh.html [connection] type=ethernet uuid=969fc159-a48f-4930-8de1-e3e5b952769 interface-name=ens34 id=ens34 autoconnect=true [ethernet] #cloned-mac-address=da:d0:ed:00:06:86 mac-address=00:50:00:00:00:02 [dummy] #cloned-mac-address=da:d0:ed:00:06:86 #mac-address=da:d0:ed:00:06:86 [ipv4] method=manual address=10.1.1.2/20 gateway=10.1.0.1/20 #never-default=true #dns=8.8.8.8;8.8.4.4 #[ipv6] #method=manual #address=2001:db8::2/64 #gateway=2001:db8::1 [proxy]
NM 키 파일이 루트 소유이고 권한이 600인지 확인하세요.
chown root.root ${nm-whatever.conf} && chmod 600 ${nm-whatever.conf}
그냥 재부팅하세요.
systemctl restart NetworkManager
일반적으로 작동하지만 재부팅을 의미하지는 않지만nmcli
다음과 같은 도구를 사용한다고 명시되어 있습니다.nmcli con reload