나만 접근할 수 있는 컴퓨터에 삼바 공유를 설정하려고 합니다. 내 Windows 컴퓨터에서 이 컴퓨터에 대한 전체 액세스 권한이 필요합니다. 나는 두 컴퓨터를 모두 사용하는 유일한 사람이고 공유에 대한 전체 읽기/쓰기 액세스 권한이 필요합니다.
지금까지 시도한 결과 Windows 컴퓨터에서 폴더/파일을 볼 수 있지만 파일을 편집할 수는 없습니다.
내 코드는 Linux 시스템에 있을 것이며 Windows 랩탑을 사용하여 코딩할 것입니다.
- 내 Windows 사용자 이름은 내 이메일입니다. 그렇게 부르겠습니다.[이메일 보호됨]
- 작업 그룹이 없습니다(단지 WORKGROUP일 뿐입니다).
- 내 Linux 설치 사용자는 "전문가"입니다(아이러니하게도 알아요).
- 저는 Debian 9(확장판)을 사용하고 있습니다. 오늘 debian-9.4.0-amd64-netinst.iso에서 설치했습니다. KDE를 사용했습니다.
여기 내 smb.conf가 있습니다(주석 제거, 인쇄 부분 제거).
[global]
; wins server = w.x.y.z
; interfaces = 127.0.0.0/8 eth0
; bind interfaces only = yes
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d
server role = standalone server
passdb backend = tdbsam
obey pam restrictions = yes
unix password sync = yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
pam password change = yes
map to guest = bad user
########## Domains ###########
; logon path = \\%N\profiles\%U
; logon drive = H:
; logon script = logon.cmd
; add user script = /usr/sbin/adduser --quiet --disabled-password --gecos "" %u
; add machine script = /usr/sbin/useradd -g machines -c "%u machine account" -d /var/lib/samba -s /bin/false %u
; add group script = /usr/sbin/addgroup --force-badname %g
############ Misc ############
; include = /home/samba/etc/smb.conf.%m
; idmap uid = 10000-20000
; idmap gid = 10000-20000
; template shell = /bin/bash
; usershare max shares = 100
usershare allow guests = yes
#======================= Share Definitions =======================
[homes]
comment = Home Directories
browseable = no
read only = yes
create mask = 0700
directory mask = 0700
valid users = %S
[Share]
comment = Full Access Share
path = /home/expert/Projects/expert
browseable = yes
writable = yes
public = yes
guest ok = yes
read only = no
create mask = 0777
directory mask = 0777
write list = 0777
valid users = nobody, admin, expert, anonymous, [email protected]
ls -ld .
전체 액세스 권한을 원하는 폴더에 대해 작업을 수행 하면 다음과 같은 결과가 나타납니다.
drwxrwxrwx 3 expert expert 4096 <date time> .
생성, 디렉토리 마스크, 쓰기 목록을 0777로 지정하면 Samba를 완전히 제어할 수 있을 것이라고 생각했습니다.
마지막 줄(유효한 사용자)은 어둠 속에서 찍은 사진입니다(작동하지 않음).
답변1
귀하의 질문에 답변하는 데 도움이 될 수 있는 몇 가지 사항이 있습니다.
삼바는 어떻게 설치하셨나요? 레포에서? 어떤 버전인가요?samba --version
어떤 Windows를 사용하시나요? 리눅스에서 접속할 수 있나요?
한 번에 여러 가지 문제를 해결해야 할 수도 있습니다. 최소한의 구성 항목으로 Samba를 설정하십시오. 삼바 버전의 기본값을 참고하세요. 작동하는 설치를 기반으로 구축하세요.
SMB 공유에 연결할 때 Windows는 로그인 사용자 이름, guest, 사용자 이름 없음 또는 기타 사용자 이름을 보낼 수 있습니다.
Windows에서 Linux Samba로 어떤 정보가 전달되는지 확인합니다.
smbclient //host/share -U username
Windows가 보내는 내용을 자세히 알아보기 전에 Linux 명령줄에서 Samba 사용자 설정을 확인할 수 있습니다.
이 사용자가 비밀번호 백엔드에 있습니까?
valid users = nobody, admin, expert, anonymous, [email protected]
passdb backend = tdbsam
변경 후 삼바 서버 비트를 다시 시작하는 것을 잊지 마십시오 smb.conf
.
sudo service smbd restart
sudo service nmbd restart
널리 공개된 공유 설정으로 시작한 다음 거기에서 구축할 수 있습니다.
[global]
server string = This is: %h. Welcome.
workgroup = workgroup
netbios name = hostname
encrypt passwords = yes
## permissions
server role = standalone
security = user
null passwords = yes
map to guest = Bad Password
guest ok = yes
guest account = nobody
# debug Adjust for trouble shooting
log level = 2
# the IPC$ connection that lists the shares is done as guest and so you must have a valid guest account.
[IPC$]
path = /tmp
[lookie]
comment = open share on %h
path = /samba/share/lookie
# all files copied to this share have full r/w to all
create mask = 0777
delete readonly = yes
## This user must have read/write to the share directory
## May require R/W for the full path up to the share. Check.
force user = expert
read only = No
browseable = yes