Apache svn의 경우 fstab에 마운트된 CIFS 공유 사용

Apache svn의 경우 fstab에 마운트된 CIFS 공유 사용

svn 저장소(arch linux에서 실행)를 설정하려면 NAS를 사용하여 저장소를 저장하고 싶습니다. CIFS(smb)를 통해서만 마운트할 수 있습니다.

처음에는 httpd 사용자가 파일 시스템에 쓸 수 없는 문제가 있었는데, 옵션을 추가하여 이 문제를 해결했습니다 rm,file_mode=0777,dir_mode=777.

저장소에 무언가를 커밋하려고 할 때 나타나는 다음 오류 메시지는 Can't set permission on ...유닉스 파일 시스템이 아니기 때문에 권한을 설정할 수 없다는 것입니다. 이제 공유를 httpd가 소유하고 권한이 올바르게 설정되도록 마운트할 수 있는지 궁금합니다.

이제 내 질문은 svn이 이를 수락하려면 file_mode무엇 을 선택해야 합니까 ? dir_mode가능합니까? CIFS 공유를 특정 사용자로 어떻게 마운트합니까? 지금까지 이 주제에 대해 내가 찾은 모든 정보에는 umask 옵션이 포함되어 있는데, 내가 올바르게 이해 file_mode한다면 내 OS는 교체되었기 때문에 이 옵션을 받아들이고 싶지 않습니다 dir_mode.

물론 대체 옵션은 NAS를 사용하는 것이 아니라 일반 디스크를 사용하고 작업을 통해 NAS에 동기화하는 것입니다.

다른 어떤 옵션이 필요합니까? 최신 버전을 사용하고 있습니다.ARM 버전의 아치 리눅스설명대로 Apache svn을 설치했습니다.여기.

답변1

  1. selinux가 활성화되어 있습니까? 그렇다면 원격 디스크에서 httpd의 쓰기를 허용합니까?

  2. http 대신 SSH를 통해 Subversion 클라이언트를 실행하고 있습니까? 로컬 사용자로(ssh를 통해) 커밋을 실행하면 httpd 사용자가 쓸 수 없는 상태에서 비정기적으로 마운트된 디스크에 쓸 수 있는 경우가 있다는 것을 발견했습니다.

  3. 특정 사용자로 cifs 공유를 마운트하려면 비밀번호를 어딘가에 저장해야 합니다. fstab 옵션에서 직접 또는 설치 옵션에서 참조되는 자격 증명 파일에서. 이 Ubuntu 스레드가 도움이 될 수 있습니다.https://askubuntu.com/questions/157128/proper-fstab-entry-to-mount-a-samba-share-on-boot

답변2

내 솔루션은 다음 fstab 옵션을 사용하여 디스크를 마운트하는 것이었습니다.

//server/share /mnt cifs username=USER,password=PSWD,rw,file_mode=0755,dir_mode=0755,uid=http 0 0

선택 이 가장 중요한 것 같습니다 uid=http.

관련 정보