2P by GN⁺ 12일전 | ★ favorite | 댓글 1개
  • macOS는 오랜 시간 동안 rsync 2.6.9를 기본 포함해왔으며, 이는 2006년에 출시된 매우 오래된 버전임
  • 최신 버전인 rsync 3.xGPLv3 라이선스로 배포되었지만, Apple은 이 라이선스 조건을 충족하기 어렵다고 판단하여 포함하지 않았음
  • 반면, rsync 2.xGPLv2로 배포되어 비교적 덜 제한적이었기 때문에 포함 가능했음

openrsync의 도입 배경

  • macOS Sequoia부터 Apple은 기존의 rsync 대신 openrsync를 포함시킴
  • openrsyncBSD 계열의 ISC 라이선스를 따르므로 사용, 수정, 배포에 거의 제한이 없음
  • 이는 Apple이 법적 제약 없이 openrsync를 자유롭게 업데이트하고 유지보수할 수 있게 해 줌

openrsync 사용 시 유의사항

  • openrsync는 rsync와 호환되지만, 모든 rsync 명령어를 지원하지 않음
  • 특히 일부 고급 기능이나 복잡한 옵션은 작동하지 않을 수 있으므로, 기존 rsync 스크립트가 macOS Sequoia에서 작동하지 않을 수 있음
  • 호환 가능한 명령어와 옵션 목록은 공식 매뉴얼 페이지에서 확인 가능함

명령어 위치 및 버전 확인 방법

  • macOS 15.4 기준, /usr/bin/rsync 경로는 openrsync로 연결되어 있음
  • 터미널에서 다음 명령어를 실행하여 버전 정보를 확인 가능함:
    /usr/bin/rsync –version  
    openrsync: protocol version 29  
    rsync version 2.6.9 compatible  
    

Mac 관리자와 개발자를 위한 요약

  • openrsync 도입으로 macOS는 더 이상 구형 rsync에 의존하지 않음
  • 그러나 기존 rsync 사용 경험과 호환되지 않을 수 있으므로, 마이그레이션 시 주의 필요함
  • 특정 rsync 기능이 작동하지 않을 경우, 외부에서 직접 rsync 3.x를 설치해 사용하는 방법도 고려할 수 있음
Hacker News 의견
  • openrsync의 문서가 부족하여 rsync의 대체품으로 신뢰할 수 없음을 느끼는 의견이 있음

    • 파일 복사 프로그램은 원본 파일의 데이터나 메타데이터를 완벽하게 복사할 수 있어야 함
    • 많은 UNIX 계열 운영 체제의 복사 프로그램은 기본 옵션으로 완벽한 복사를 하지 못함
    • scp 명령어는 서로 다른 운영 체제와 파일 시스템 간에 완벽한 복사를 할 수 없었음
    • rsync는 적절한 옵션을 사용하면 서로 다른 운영 체제와 파일 시스템 간에도 완벽한 복사를 할 수 있음
    • openrsync의 현재 문서는 완벽한 파일 복사를 보장하지 않음
    • bsdtar는 pax 파일 형식을 사용할 때 완벽한 파일 복사를 아카이브할 수 있음
    • rsync를 사용할 때 특정 옵션을 항상 사용함
  • macOS에 번들된 rsync를 최신 버전으로 교체한 경험이 있음

    • macOS는 점점 iOS와 비슷해지며, 애플의 허가를 받아야 하는 경향이 있음
  • openrsync를 살펴보았을 때 좋은 코드였음

    • openrsync가 rsync와 100% 호환되지 않는 점이 아쉬움
    • Apple이 openrsync로 전환하기 시작했음을 알게 됨
  • 새로운 Linux 사용자로서 번들된 시스템 유틸리티의 버전 관리가 혼란스러움을 느끼는 의견이 있음

    • unzip의 경우 AES-256 암호화 ZIP 파일을 처리할 수 없는 버전이 있음
    • unzip의 업데이트된 버전을 찾기 어려움
    • 시스템 번들된 유틸리티를 교체하는 것이 안전한지 확신할 수 없음
    • Linux가 시스템 유틸리티 관리를 더 잘할 것이라고 기대했음
  • openrsync가 rsync의 일부 기능을 지원하지 않는 점이 아쉬움

    • 여러 독립적인 rsync 구현이 있다는 것은 긍정적임
  • rsync에 패치를 추가하여 macOS 메타데이터를 지원하는 확장 속성을 지원하게 됨

    • Bombich "Carbon Copy Cloner"는 이를 감싸는 GUI 앱임
    • Nathaniel Gray는 백업의 정확성을 확인하는 도구를 만듦
  • Apple이 osx의 posix 측면을 계속 강화하고 있다는 점에 만족함

  • Apple이 왜 GPLv3를 두려워하는지에 대한 자원이 있는지 묻는 의견이 있음

  • openrsync는 OpenBSD의 RPKI 검증기 프로젝트의 일부로 작성되었으며, 여러 조직의 지원을 받았음

  • Sequoia 15.3까지 rsync_samba와 rsync_openrsync가 사용 가능했음

    • openrsync의 특정 기능에 대한 버그 리포트를 Apple에 제출한 경험이 있음
    • rsync_samba는 Sequoia 15.4부터 사라짐
    • homebrew를 통해 rsync를 설치함