
모든 사용자가 암호 없이 읽을 수 있는 Samba를 통한 경로를 호스팅하고 싶습니다.
내 호스트 PC의 smb.conf에서:
[global]
workgroup = WORKGROUP
server string = %h server (Samba, Ubuntu)
log file = /var/log/samba/log.%m
max log size = 1000
logging = file
panic action = /usr/share/samba/panic-action %d
server role = standalone server
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
usershare allow guests = yes
[mystuff]
path = /path/to/my/stuff
read only = yes
public = yes
guest ok = yes
guest only = yes
browseable = yes
내가 다른 컴퓨터에서
smbclient -L //myhostpc/mystuff
그것은 말한다
Enter WORKGROUP\myusername's password:
흥미롭게도 철자를 틀리면 계속 이렇게 표시됩니다 mystuff
. 호스트 PC가 다시 시작되었으며 nmblookup -S WORKGROUP
MYHOSTPC에 대한 항목이 나열됩니다.
나는 또한 시도했습니다 (우분투에서 cifs-utils가 설치된 상태에서)
sudo mount -t cifs //myhostpc/mystuff /tmp/mystuff
하지만 얻을
Password for root@//myhostpc/mystuff
그리고 내가 시도하면
sudo mount -t cifs //myhostpc/mystuff -o username=guest,password="" /tmp/mystuff
(어디서 본 것처럼)
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page)
나는 다음에서 주목한다 /var/log/samba/log.
:
[2022/02/12 14:57:23.569070, 0] ../../source3 /smbd/service.c:166(chdir_current_service)
chdir_current_service: vfs_ChDir(/path/to/my/stuff) failed: Permission denied. Current token: uid=65534, gid=65534, 1 groups: 65534
[mystuff]
비밀번호를 묻지 않고 다른 컴퓨터에서 모든 사용자가 볼 수 있도록 하려면 무엇이 필요합니까 ?
답변1
문서에는 smbclient
다음과 같은 특정 상황이 언급되어 있습니다.
password
[...] 기본 비밀번호는 없습니다. 명령줄에 암호가 제공되지 않고(이 매개변수를 사용하거나 옵션에 암호를 추가-U
(아래 참조))-N
옵션이 지정되지 않은 경우 원하는 서비스에 암호가 필요하지 않더라도 클라이언트는 암호를 묻는 메시지를 표시합니다. 하나. (비밀번호가 필요하지 않은 경우 Enter 키를 눌러 null 비밀번호를 입력하세요.)
나중에 -N
다음과 같이 언급했습니다.
-N
|--no-pass
지정된 경우 이 매개변수는 클라이언트에서 사용자에게 일반 비밀번호 프롬프트를 표시하지 않습니다. 비밀번호가 필요하지 않은 서비스에 접속할 때 유용합니다.
귀하의 경우 해결책은 무엇입니까?
smbclient -NL //myhostpc/mystuff
에도 동일한 효과를 사용할 수 있습니다 mount
. 여기에서 man mount.cifs
(에 대한 참조 검색 중 password
):
password=arg
|pass=arg
CIFS 비밀번호를 지정합니다. 이 옵션이 제공되지 않으면 환경 변수가PASSWD
사용됩니다. 비밀번호가 직접적으로 지정되지 않거나 마운트 인수를 통해 간접적으로 지정되지 않으면 옵션이 지정mount.cifs
되지 않은 한 비밀번호를 묻는 메시지가 표시됩니다 .guest
그러면 다음과 같은 옵션이 제공됩니다 guest
.
guest
비밀번호를 묻지 마세요
여기에 대한 해결책은 무엇입니까?
sudo mount -t cifs -o guest //myhostpc/mystuff /tmp/mystuff