
삼바 구성에 문제가 있습니다.
저는 우분투 시스템을 A라고 부르겠습니다. 최근까지 우분투 16.04가 있었고 지금은 우분투 20.04가 있습니다. 이 A 컴퓨터는 두 번째 컴퓨터에 연결되었습니다. 우분투 18.04를 사용하여 삼바(다른 방법 중에서)를 통해 해당 시스템 간에 파일을 복사합니다.
각 시스템에 여러 개의 폴더가 있었고 16.04에서는 모든 것이 잘 작동했습니다.
형식을 지정하고 우분투 20.04로 전환한 후에는 이제 연결이 단방향으로만 가능합니다. 보다 구체적으로 B는 더 이상 A의 폴더를 볼 수 없습니다. 폴더는 파일에서 공유된 것으로 나타납니다. 반면 A에서 B의 공유 폴더에 액세스하면 모든 것이 잘 작동합니다. 몇 가지 해결책을 시도했지만 아무것도 내 문제를 해결하지 못하는 것 같습니다(분명히 여기에 뭔가가 빠졌습니다).
예를 들어 내 Samba conf 파일( /etc/samba/smb.cfg
)에서 두 시스템 모두 내 [global] 섹션에 이 항목이 있습니다.
workgroup = WORKGROUP
client min protocol = NT1
server min protocol = NT1
이것은 질문에서 제안된 해결책이었습니다. B에서 내 공유 폴더에 액세스할 때 실제 오류가 발생하지 않도록 도와주었지만 실제로는 공유 폴더가 표시되지 않습니다(빈 폴더만 있음).
내 마지막 시도는 다음을 사용하는 지침이었습니다.대지:
익명 공유는 (이론적으로) 다음을 추가하여 공유되었습니다.
[Anonymous]
path = /samba/anonymous
browsable = yes
writable = yes
read only = no
force user = nobody
A 시스템 에서만 가능 #======================= Share Definitions =======================
합니다.
공유 폴더의 B에서 볼 때 라는 폴더가 생성되었지만 Anonymous
실제로 액세스할 수는 없습니다. 비밀번호가 필요하지만 아무 것도 필요하지 않습니다. 삼바도 사용자 비밀번호도 아닙니다. 어쨌든, 이는 내 시스템에 존재하지 않는 폴더를 가리키지만(기존 폴더로 시도했지만 아무것도 변경되지 않음) 모든 공유 폴더에 이것을 적용해야 한다면 그리 편리해 보이지 않습니다.
그렇다면 두 우분투 시스템 간에 일부 폴더를 올바르게 공유하는 방법을 아는 사람이 있습니까? 내가 아는 한 Samba와 Samba 클라이언트는 두 시스템 모두에 설치되어 있습니다.
편집(@Morbious1의 댓글 요청 후):
$testparm -s
Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Server role: ROLE_STANDALONE
# Global parameters
[global]
client min protocol = NT1
log file = /var/log/samba/log.%m
logging = file
map to guest = Bad User
max log size = 1000
obey pam restrictions = Yes
pam password change = Yes
panic action = /usr/share/samba/panic-action %d
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
passwd program = /usr/bin/passwd %u
server min protocol = NT1
server role = standalone server
server string = %h server (Samba, Ubuntu)
unix password sync = Yes
usershare allow guests = Yes
usershare owner only = No
idmap config * : backend = tdb
[Anonymous]
force user = nobody
path = /home/gorfanidis/share_testing
read only = No
[printers]
browseable = No
comment = All Printers
create mask = 0700
path = /var/spool/samba
printable = Yes
[print$]
comment = Printer Drivers
path = /var/lib/samba/printers
그리고
$net usershare info --long
[python_projects]
path=/home/xxxx/python_projects
comment=
usershare_acl=Everyone:F,
guest_ok=y
[misc_cerberus]
path=/home/xxxx/misc
comment=
usershare_acl=Everyone:F,
guest_ok=y
[EfficientDet]
path=/home/xxxx/python_projects/EfficientDet
comment=
usershare_acl=Everyone:F,
guest_ok=n
[surveillance object detection]
path=/home/xxxx/Datasets/surveillance object detection
comment=
usershare_acl=Everyone:F,
guest_ok=n
답변1
당신이 따라온 HowTo에서는 이 공유 정의가 게스트 액세스를 허용한다고 나와 있습니다.
[Anonymous] force user = nobody path = /home/gorfanidis/share_testing read only = No
그 반대입니다.
게스트가 액세스할 수 있도록 하고 Linux 권한 문제가 없는지 확인하려면 다음 변경 사항을 제안합니다.
[Anonymous]
force user = gorfanidis
path = /home/gorfanidis/share_testing
read only = No
guest ok = yes
알았어 이게 효과가 있는 것 같아. 하지만 Files(nautilus)에서 자동으로 작동하도록 만드는 것보다 한 단계 뒤로 물러났습니다. 이것을 달성하는 방법이 있습니까?
force user = gorfanidis
이것이 단일 사용자 시스템인 경우 smb.conf의 [global] 섹션에 추가하면 됩니다 . 바로 아래에 있습니다.작업그룹 = 작업그룹내가 놓을 곳은 바로 여기야. 그런 다음 생성 방법에 관계없이 생성하는 모든 공유에 적용됩니다.