특정 이름으로 삼바 공유에 쓸 수 없습니다

특정 이름으로 삼바 공유에 쓸 수 없습니다

간단히 말해서:read only = noSamba가 공유에 대한 쓰기 액세스를 허용하지 못하게 하는 것(파일 소유권/smb.conf 제외)이 있습니까 ? 공유 이름은 권한에 어떤 영향을 미치나요?

따라서 Ubuntu Server 16.04 LTS(Samba 버전은 4.3.9+dfsg-0ubuntu0.16.04.2)가 있고 USB 장치는 /mnt/storage에 마운트되어 있습니다. 출력 은 다음 mount과 같습니다

/dev/sdb1 on /mnt/storage type ext4 (rw,relatime,errors=remount-ro,data=ordered)

디렉토리의 모든 파일은 /mnt/storage사용자가 소유하고 쓸 수 있습니다 htpc.

htpc@htpc:~$ ls -l /mnt/

insgesamt 16
drwxrwxr-x 13 htpc htpc 4096 Sep  8 23:26 storage

htpc@htpc:~$ ls -l /mnt/storage/

insgesamt 108
drwxr-xr-x 21 htpc htpc  4096 Mär 16 20:55 somedirectory
-rw-r--r--  1 htpc htpc  3870 Sep 11 09:02 somefile.txt
drwxr-xr-x 24 htpc htpc  4096 Apr 10 00:25 ...

내 smb.conf 공유는 다음과 같습니다(다른 모든 설정은 기본값으로 남아 있음).

[Media]
path = /mnt/storage
comment = HTPC Media server
valid users = htpc
read only = no
browseable = yes

삼바 사용자를 만들었습니다 sudo smbpasswd -a htpc.

Windows 10을 사용하여 공유에 액세스할 수 있지만 쓰기 권한이 없습니다(파일 생성, 삭제 및 수정을 허용하지 않음). 이상한 점은다른 디렉토리를 공유할 때는 이 문제가 발생하지 않습니다./opt/testshare(예를 들어 위와 같은 방법으로 일반 디렉터리를 생성 하고 공유합니다.)

편집하다

정말 이상해요. 문제는 USB 장치에 있는 것이 아니라 공유 이름 "Media"에 있습니다.

어떤 이유로든 공유는 읽기 전용입니다.이름을 '미디어'로 지정하면. 내가 찾은이 스레드그리고이 스레드비슷한 질문이 있었지만 공유와 디렉터리는 같은 이름을 가질 수 없다는 결론을 내렸습니다. 처음에는 클라이언트 문제인 줄 알았는데(Windows는 이전 설치의 이전 uid를 기억함) 서버에 연결하는 데 이전에 사용한 적이 없는 휴대폰(ES 파일 탐색기)에도 동일한 문제가 있습니다. 연결을 사용하여 디렉터리를 생성하려고 해도 smbclient다음 오류가 발생합니다.

smb: \> mkdir test
NT_STATUS_MEDIA_WRITE_PROTECTED making remote directory \test

로그 수준을 10으로 높이고 다음을 발견했습니다.

[2016/09/17 09:15:35.902089, 10, pid=24086, effective(0, 0), real(0, 0), class=passdb] ../source3/passdb/pdb_get_set.c:495(pdb_set_user_sid)
  pdb_set_user_sid: setting user sid S-1-5-21-30211493-2420603996-3020390900-1003
[2016/09/17 09:15:35.902143, 10, pid=24086, effective(0, 0), real(0, 0), class=passdb] ../source3/passdb/pdb_compat.c:73(pdb_set_user_sid_from_rid)
  pdb_set_user_sid_from_rid:
    setting user sid S-1-5-21-30211493-2420603996-3020390900-1003 from rid 1003
[2016/09/17 09:15:35.902216, 10, pid=24086, effective(0, 0), real(0, 0), class=passdb] ../source3/passdb/pdb_get_set.c:557(pdb_set_group_sid)
  pdb_set_group_sid: setting group sid S-1-5-21-30211493-2420603996-3020390900-513
[2016/09/17 09:15:35.902291,  4, pid=24086, effective(0, 0), real(0, 0)] ../source3/smbd/sec_ctx.c:439(pop_sec_ctx)
  pop_sec_ctx (0, 0) - sec_ctx_stack_ndx = 0
[2016/09/17 09:15:35.902351, 10, pid=24086, effective(0, 0), real(0, 0)] ../source3/smbd/share_access.c:237(user_ok_token)
  user_ok_token: share Media is ok for unix user htpc
[2016/09/17 09:15:35.902405, 10, pid=24086, effective(0, 0), real(0, 0)] ../source3/smbd/share_access.c:284(is_share_read_only_for_token)
  is_share_read_only_for_user: share Media is read-write for unix user htpc
[2016/09/17 09:15:35.902508, 10, pid=24086, effective(0, 0), real(0, 0)] ../libcli/security/access_check.c:337(se_file_access_check)
  se_file_access_check: MAX desired = 0x2000000 mapped to 0x80120089
[2016/09/17 09:15:35.902558,  5, pid=24086, effective(0, 0), real(0, 0)] ../source3/smbd/uid.c:163(check_user_share_access)
  falling back to read-only access-evaluation due to security descriptor

관련 정보