NetworkManager 설정을 새 시스템으로 내보내고 마이그레이션하려면 어떻게 해야 합니까?

NetworkManager 설정을 새 시스템으로 내보내고 마이그레이션하려면 어떻게 해야 합니까?

NetworkManager 설정을 새 시스템으로 내보내고 마이그레이션하려면 어떻게 해야 합니까?

사용 사례는 다음과 같습니다.

  • 기계를 다시 설치하세요
  • 네트워크 구성을 노트북에서 데스크탑 시스템으로(또는 그 반대로) 이동

다음을 포함한 모든 설정을 마이그레이션해야 합니다.

  • 기본 및 사용자 정의 네트워크 연결
  • 비밀번호로 Wi-Fi 연결
  • VLAN 구성
  • VPN 구성(가능한 경우 키 포함)

아치 위키를 확인해 보니 마이그레이션에 관한 내용이 없어서 여기에 문의드립니다.

답변1

NetworkManager에 구성된 각 연결은 다음 파일에 저장됩니다.

/etc/NetworkManager/system-connections

일반적으로 원하는 파일을 한 컴퓨터에서 다른 컴퓨터로 복사할 수 있습니다(물론 루트를 통해).

경고하다: 특정 구성 파일은 외부 리소스를 참조할 수 있습니다. 예를 들어 내 openvpn 파일 중 하나에 다음과 같은 줄이 있습니다 cert=/home/andcoz/somedir/somefile.crt. 참조된 파일을 모두 복사해야 합니다.

경고 2: 기본적으로 이러한 파일에는 비밀번호가 표시되지 않습니다. 바라보다문서. 이와 대조적으로 와 같은 행은 private-key-flags=1비밀번호가 비밀 요원(예 kde wallet: )에 저장되어 있음을 나타냅니다. 대부분의 GUI 클라이언트에서 이는 각 비밀번호 아래의 "이 사용자에 대해서만 비밀번호 저장(암호화됨)" 드롭다운 메뉴를 통해 제어됩니다. 다른 값으로 변경되면 -flags값이 다음으로 변경되고 0비밀번호는 이 파일에 저장됩니다(루트만 읽을 수 있음).

답변2

다른 사람들이 언급했듯이 system-connections디렉터리의 Wi-Fi 연결 파일에는 인터페이스 MAC 주소가 포함되어 있습니다. 이는 현재 설정과 일치해야 하므로 프로세스는 다음과 같습니다.

  1. 이전 머신의 모든 파일을 새 머신의 디렉터리로 복사합니다.

    /etc/NetworkManager/system-connections
    
  2. 각 파일의 MAC 주소 항목을 이전 MAC에서 새 MAC로 변경합니다. 루트 사용자로서:

    cd /etc/NetworkManager/system-connections
    sed -i -e 's/<old mac>/<new mac>/ *
    
  3. 만일을 대비해 네트워크 관리자를 다시 시작하세요.

    systemctl restart NetworkManager
    

ip link이전 Mac은 복사한 모든 파일에서 확인할 수 있으며, 새 Mac을 확인할 수 있는지 확실하지 않은 경우 (또는 파일에 연결하기 위해 시스템을 설치할 때 생성했을 수 있는 파일에서) 확인할 수 있습니다. 복사했습니다).

참고: 위의 내용은 이전 설정과 새 설정 모두에 Wi-Fi 인터페이스가 있다고 가정하지만 동일한 논리가 여러 인터페이스에 적용되어야 합니다.

답변3

다음은 나를 위해 일했습니다우분투:20.10

/etc/NetworkManager/system-connections위 내용을 복사하세요.

확실하게 하다permissions=user:newusername:;현재 사용자를 매칭하세요(VPN을 사용하려는 사람이 echo $( whoami )도움을 받을 수 있습니다)

다음으로 당신이 가지고 있는지 확인하십시오올바른 패키지가 설치되었습니다.. 당신이 사용하고 있다면 openvpn당신은 필요합니다

network-manager-openvpn
network-manager-openvpn-gnome

service-type또한 올바른 패키지를 설치 해야 합니다.. 예를 들어 사용하는 경우 네트워크 관리자를 service-type=org.freedesktop.NetworkManager.l2tp 설치해야 합니다.l2tp

마침내내가 겪고 있는 문제는권한나에게 있어 이러한 파일에는 /etc/NetworkManager/system-connections 다음 권한이 필요합니다.

-rw------- 1 root root

이 파일을 복사했을 때 내 사용자는 소유자로서 775 권한을 갖고 있었고 이로 인해 어떤 이유로 NetworkManager가 해당 파일을 사용할 수 없게 되었습니다.

답변4

이를 파악하는 데 오랜 시간이 걸렸지만 다음 명령을 사용하여 개별 콘텐츠(예: VPN 설정)를 내보낼 수 있습니다 nmcli.

# List connections
nmcli connection

# Export one
nmcli connection export ConnectionName > yourfile

이는 구성 파일의 위치에 관계없이 작동하지만 한 번에 여러 파일을 내보내는 방법은 없다고 생각합니다. 불행하게도 이것은 적어도 비밀번호 자격 증명을 보존하지 않는 것 같습니다. 인증서 자격 증명을 보존할 수 있습니다.

관련 정보