msc001y 시스템에 Samba를 설치했습니다. msc001의 공유 폴더에 액세스하고 싶습니다.
두 시스템 모두 동일한 사용자를 갖습니다(Samba에서 미러링됨).
msc (5001), james (5002), rachel (5003).
두 시스템 모두 동일한 그룹을 갖습니다.
grp_public (2001), grp_personal (2002)
msc
, 모든 사람이 액세스할 수 james
있으며 액세스할 수 있습니다 .rachel
grp_public
james
rachel
grp_personal
나는 다음을 수행했습니다.
chgrp -R grp_public /mnt/local/int001/media/public/
chgrp -R grp_personal /mnt/local/int001/media/personal/
chmod 2775 /mnt/local/int001/media/public/
chmod 2770 /mnt/local/int001/media/personal/
msc001y의 smb.conf에 추가했습니다:
[글로벌] 내에서
# Inherit ownership of the parent directory for new files and directories
inherit owner = unix only
# Inherit permissions of the parent directory for new files and directories
inherit permissions = yes
create mask = 0775
directory mask = 2775
force create mode = 0775
force directory mode = 2775
그럼 안에
[public]
comment = Public Stuff
path = /mnt/local/int001/media/public
public = yes
writable = no
printable = no
write list = @grp_public, msc, james, rachel
inherit acls = yes
[공개] 마운트하기 전에 마운트 지점이 다음과 같이 나열됩니다(예: 소유자 및 그룹의 경우 RWX).
drwxrwxr-x 2 msc grp_public 0 Jul 25 23:07 public
설치하고 나면 다음과 같이 됩니다(예: 소유자의 경우 RWX, 그룹의 경우 RX 없음 W).
drwxr-xr-x 2 msc grp_public 0 Jul 25 23:07 public
다음과 함께 설치됩니다:
//msc001y/public /mnt/remote/msc001y/public cifs user,nofail,_netdev,vers=3.1.1,uid=msc,gid=grp_public,credentials=/mnt/local/data/.Credentials/james.cred 0 0
로그인하면 msc
소유자이므로 읽고 쓸 수 있지만, James나 Rachel이라면 읽기 전용 상태에 갇혀 있습니다.
이전에 RWX였던 폴더가 마운트 후 기본적으로 RX로 설정되는 이유는 무엇입니까?
참고: 공유 폴더의 모든 파일은 RWX|RWX|R_X입니다.
답변1
귀하는 그룹에 @grp_public, @msc, @james, @rachel
속해 write list
있지만 사용자 입니다 .grp_public
msc
james
rachel
올바른 쓰기 목록은 다음과 같아야 합니다.
write list = msc, james, rachel, @grp_public
또한보십시오 man 5 smb.conf
:
write list (S)
서비스에 대한 읽기 및 쓰기 액세스 권한이 부여된 사용자 목록입니다. 연결하는 사용자가 이 목록에 있으면 읽기 전용 옵션 설정에 관계없이 쓰기 액세스 권한이 부여됩니다. 목록에는 @group 구문을 사용하여 그룹 이름이 포함될 수 있습니다. 사용자가 읽기 목록과 쓰기 목록 모두에 있으면 쓰기 액세스 권한이 부여됩니다.
Default: write list =
Example: write list = admin, root, @staff