2014-09-17 8 views
2

내 연구에서 VirtualBox 동기화 폴더에 탑재 프로세스 중에 사용 권한이 설정되어 있음을 이해합니다. 나중에 변경할 수 없으므로 전체 동기화 된 폴더의 사용 권한은 공유 폴더의 모든 단일 파일/폴더에 대해 동일해야합니다. 수퍼 유저 권한으로 변경하거나 변경하지 않고 변경하려고하면 변경 사항이 바로 되돌려집니다.Vagrant 공유/동기화 된 폴더 사용 권한

다른 파일/폴더에 대해 여러 가지 권한이있는 Symfony PHP 프레임 워크와 어떻게 작동합니까? (즉, app/console에서 권한을 실행해야하지만 어디서나 7XX를 사용하고 싶지는 않습니다.)

다른 질문이지만 (Vagrant and symfony2) 나는 Vagrantfile의 모든 것에 대해 권한을 777로 설정할 수 있다고 보았습니다. 그러나이 코드는 배포 된 것보다 내 소스 코드에서 GIT를 사용해야하므로 바람직하지 않습니다. 살아있는 환경. 생산 과정에서 777 이하의 모든 것을 실행하는 것은 정당하지 않다.

어떻게 대처할 수 있습니까? 당신의 권한 설정은 무엇입니까?

+0

Git이 호스트 컴퓨터에서 실행되고 호스트 파일 시스템의 파일 사용 권한을 올바르게 사용하므로 이러한 문제가 발생하지 않았습니다. 귀하의 설정을보다 구체적으로 설명 할 수 있습니까? – Gerry

+0

@Gerry 감사합니다, 그 순간에 내가하고있는 일이고 합리적인 해결책처럼 보입니다. 나는 호스트 시스템 (Windows 7)과 게스트 (behat, 작곡가 등)의 개발/테스트에 대해 실현 된 모든 것을 망각하고있다. –

답변

0

이제 더 이상 경험이 없으면 실제로이 질문에 대답 할 수 있습니다.

은이 문제에 대한 3 해결책이 있습니다 : 호스트 시스템에

  • 사용 힘내 방랑 basic shared folders 설정은 어떻게 든에서
  • 사용이 NFS shared folders 옵션 (적어도 Windows 호스트에) 777을 강제하기 때문에 (Windows에서 즉시 사용할 수 없음)
  • 더 복잡한 구성 rsyncEmyl's에서 설명한대로 r (느린 동기화 속도).
0

가능한 해결책은 vagrant rsyncvagrant rsync-auto 명령과 함께 rsync synced folder strategy을 사용할 수 있습니다.

이렇게하면 양방향 동기화가 손실되지만 파일 사용 권한 및 소유권을 관리 할 수 ​​있습니다.

+0

나는 rsync도 조사하고 있었지만, 호스트에서 퀘스트로 파일이 한 방향으로 만 동기화된다는 또 다른 문제가 있습니다. 이 방법은 Windows 호스트에 적합하지 않은 호스트의 모든 명령을 실행하는 모든 명령을 실행해야합니다. –

+0

상황에 대한 업데이트가 더 있습니다. 함께 살 수있는 양방향 문제 외에도 RSYNC는 권한 수준을 변경합니다. – Coffee123

+0

변동 요인은 호스트 운영 체제, VM 및 SYNC 공급자의 너무 많은 기본값에 의존하기 때문에 동기화가 예측할 수 없다고 생각했습니다. – Coffee123

0

나는 비슷한 상황에 있습니다. 나는 Vagrant 마운트 옵션을 사용하기 시작했고, 기술 스택 (Kernel, Virtualbox, Vagrant, Guest Additions)의 일부를 업그레이드 할 때 동기화 된 폴더에서 권한을 설정하는 동안 다른 동작을 시작한다는 것을 알게되었습니다.

어느 시점에서 필자의 셸 프로비저에서 몇 가지 권한을 업데이트해도 문제가 없습니다. 처음에는 변경 사항이 게스트와 호스트에 반영되었습니다. 다른 시점에서 예상대로 진행되고 있었고 변경 내용은 호스트 파일 시스템이 아닌 게스트에만 반영되었습니다. 내 호스트에서 커널과 VB를 업데이트 한 후 게스트의 권한 변경이 호스트에만 반영된 것으로 나타났습니다.

내 커널의 이전 버전에 대해 VBOX를 컴파일하기 위해 DKMS를 사용하려고했습니다. 행운은 아직 없습니다.