다른 사용자 간 파일 전송: 최선의 전략은 무엇일까요?

다른 사용자 간 파일 전송: 최선의 전략은 무엇일까요?

몇 가지 작업을 수행하는 프로그램이 있습니다. 사용자 A로 실행 중입니다.

그 중 아주 작은 부분은 사용자 B의 집에 있는 디렉터리로 파일을 전송하는 것입니다. 전송은 쉘 명령의 시스템 호출이 아니라 작성된 언어의 API 호출에 의해 수행됩니다.

이제 전송을 수행하는 여러 가지 방법이 보입니다.

  • 프로그램을 루트로 실행하십시오.
  • A와 B를 같은 그룹에 넣고 디렉터리 소유권을 조정합니다.
  • 프로그램을 sudo하세요
  • 시스템 호출과 sudo로 이동하십시오.
  • 파일을 A에 로컬로 넣고 외부로 전송합니다(문제를 아웃소싱).
  • ACL B의 디렉터리
  • ...

루트를 통해 프로그램을 실행하는 것은 맛이 좋지 않기 때문에 요구 사항이 일반적이라고 생각합니다. 이를 처리하는 가장 일반적인 방법은 무엇입니까?

편집하다

A의 프로그램이 파일을 생성합니다. B는 그것을 읽고 삭제할 수 있어야 합니다.

답변1

A 사용자의 다른 파일을 보지 않는 것이 중요하다면 두 사용자 모두 읽기/쓰기 권한을 갖는 별도의 공통 디렉토리를 만들고 거기에 파일을 저장하십시오.

또는 inotifywatch 및 chown을 사용하여 파일이 생성되자마자 파일을 B로 복사/이동할 수 있습니다. 여기에 예가 있습니다. cron에 넣으세요.

파일이 생성되자마자 자동으로 대상에 복사

관련 정보