Ubuntu LTS 데스크탑 - 두 데스크탑 컴퓨터 간의 완전한 동기화를 어떻게 구성할 수 있습니까? 응용 프로그램, 설정, 파일 및 폴더?

Ubuntu LTS 데스크탑 - 두 데스크탑 컴퓨터 간의 완전한 동기화를 어떻게 구성할 수 있습니까? 응용 프로그램, 설정, 파일 및 폴더?

2~3개의 Ubuntu LTS 데스크탑 간에 실시간 동기화를 설정해야 합니다. 모든 애플리케이션, 모든 파일 및 폴더, 모든 설정, 모든 변경 사항이 실시간으로 이루어집니다. 그리고 누군가가 이 컴퓨터 중 하나를 변경하면 이 컴퓨터가 다른 컴퓨터로 전송되고 동기화됩니다.

가능한가, 아니면 불가능한가? 새로운 아이디어를 공유해 주실 수 있나요?

답변1

일반적으로 두 대의 컴퓨터를 동기화하는 데 사용됩니다 rsync.

그러나 귀하가 요구하는 내용은 훨씬 더 복잡할 수 있다고 생각합니다. 당신은 말한다"모든 애플리케이션", 하지만"동일한 사용자 계정을 가진 다른 컴퓨터와 동기화할 수 있는 컴퓨터는 하나만 있습니다". 대부분의 애플리케이션은 모든 사용자를 위해 설치되지만 데이터는 사용자별로 설치되며 구성은 다음과 같습니다.어느 하나.

다음을 수행해야 합니다.

  1. 다른 컴퓨터에서 복사하여 uid가 1000보다 큰 모든 계정의 /etc/passwd로컬 컴퓨터와 비교하여 /etc/passwd동기화할 계정을 찾거나 동기화할 계정 목록을 유지하세요.
  2. 원격 컴퓨터에서 설치된 모든 데비안 패키지 목록을 가져와서 로컬 컴퓨터에 있는 목록과 비교하고 두 컴퓨터에 모두 설치합니다( dpkg --get-selections).
  3. Snaps, Flatpaks, Node 등에 대해서도 동일한 작업을 수행합니다(이 작업은 매우 빠르게 지루해질 수 있습니다!)
  4. rsync(양방향) /etc/PACKAGE그리고 etc/default/PACKAGE2단계에서 발견된 모든 PACKAGE에 대해
  5. rsync /home/USER1단계에서 찾은 모든 사용자에 대해
  6. 이 모든 것을 하나의 머신에서만 정기적으로 실행되는 cron 작업에 넣으십시오.

그러면 당신(또는 나)이 잊어버린 것이 있다는 것을 당신은 반드시 발견하게 될 것입니다! 그리고 백업 없이 이 작업을 수행할 생각조차 하지 마십시오.

관련 정보