
Windows PC에 Arch Linux를 실행하는 virtualbox 가상 머신이 있습니다(불행히도 업무용으로 사용해야 함). Cygwin 대신 Linux 환경의 Windows PC에서 작업하는 데 사용합니다.
C:\ 드라이브를 Linux VM과 공유하는 Virtualbox 공유 폴더를 설정했지만 폴더의 파일 권한을 변경할 수 없는 것 같습니다. 이제 git은 내 파일 권한이 모두 변경되었다고 생각하기 때문에 이것은 문제입니다.
» ll README.txt
-rwxrwx--- 1 root vboxsf 4.5K Oct 28 10:42 README.txt
» chmod 644 README.txt
» ll README.txt
-rwxrwx--- 1 root vboxsf 4.5K Oct 28 10:42 README.txt
» sudo chmod 644 README.txt
» ll README.txt
-rwxrwx--- 1 root vboxsf 4.5K Oct 28 10:42 README.txt
» git diff README.txt | cat
diff --git a/README.txt b/README.txt
old mode 100644
new mode 100755
어떻게 해결할 수 있나요?
이 폴더는 VirtualBox Manager의 자동 마운트를 사용하여 Windows에 마운트됩니다.
답변1
파일 시스템(예: Windows C: 드라이브, NTFS일 가능성이 높음)에서 매핑하는 호스트가 Linux git에서 기대하는 전체 범위의 권한 비트를 지원할 가능성이 낮기 때문에 이 방법은 작동하지 않습니다.
비슷한 상황에서 Samba를 통해 Linux 디렉토리를 내보내고 Windows 및 Linux에서 문제없이 사용했습니다. 하지만 이는 가상머신이 실행되지 않는 동안에는 데이터에 접근할 수 없다는 단점이 있습니다.
답변2
Linux의 경우 호스트에 마운트된 파일 시스템은 외부 시스템에 마운트되므로 시스템의 파일 권한을 제어할 수 없습니다. 컨트롤은 호스트에 속합니다. 따라서 드라이브에서 제어할 수 있는 부분에 대한 권한을 조정해야 합니다.
Virtual Box를 문서 폴더의 하위 디렉터리에 연결했습니다. 이렇게 하면 호스트 시스템 운영 체제 파일이 손상될 염려 없이 권한을 열 수 있습니다.