Столкнулся с элементарной проблемой, которую не могу решить никак.
Поставил на балконе маленький сервер для торрентов и склада фильмов.
С Мака хожу на него через nfs без проблем.
Появилась необходимость подключить еще и win компНа федоре имею такой конфиг самбы:
[global]
workgroup = workgroup
netbios name = fs
server string = %h
security = share
null passwords = Yes
guest ok = Yes
.
[pub]
path = /home/sambik/pub/
force user = sambik
read only = no
guest ok = yes
writeable = yes
browseable = yes
public = yes
create mask = 0777пользователь sambik есть и в самбе и в системе.
подключиться к компьютеру удается, но содержимое папки не видно и прав на запись туда тоже нет.
как дать доступ гостю на компьютер?
Попробуй сократить до:[pub]
path = /home/sambik/pub
read only = yes
guest only = yes
guest ok = yesЧто говорит smbclient -L //<host>?
Если тебе надо и запись делать, то нужно указать кому можно и создать этого пользователя.
[root@localhost samba]# smbclient -L //192.168.1.100
Enter dgdeeper's password:
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.5.6-71.fc14]
Server requested LANMAN password (share-level security) but 'client lanman auth' is disabled
tree connect failed: NT_STATUS_ACCESS_DENIEDdgdeeper - пользователь в системе
новые настройки не пускают
> dgdeeper - пользователь в системеА он был добавлен в samba? smbpasswd -a dgpeeper
> новые настройки не пускают
И не должны пускать. Из твоего запроса следует, что тебе нужен доступ к ресурсу только для чтения и для гостя.
У тебя security=share (как для Win9x клиента) и client lanman auth = no. Тебе надо сказать какому пользователю можно смотреть этот ресурс в настройках и client lanman auth = yes. А ты запрашиваешь доступ от имени другого пользователя. Не вводи пароль для гостевого доступа.
добавил юзера dgdeeper в самбу (не пойму только, зачем) с нулевым паролем[root@localhost samba]# smbclient -L //192.168.1.100
Enter dgdeeper's password:
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.5.6-71.fc14]Sharename Type Comment
--------- ---- -------
pub Disk
IPC$ IPC IPC Service (localhost)
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.5.6-71.fc14]Server Comment
--------- -------
FREEBSD FreeBSD server on my networkWorkgroup Master
--------- -------
WORKGROUP FREEBSDно по сети по-прежнему не могу войти
> но по сети по-прежнему не могу войтиЧто выдаёт smbclient //192.168.1.100/pub?
>> но по сети по-прежнему не могу войти
> Что выдаёт smbclient //192.168.1.100/pub?[root@localhost dgdeeper]# smbclient //192.168.1.100/pub
Enter dgdeeper's password:
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.5.6-71.fc14]
Server not using user level security and no password supplied.
tree connect failed: NT_STATUS_BAD_NETWORK_NAMEчто нужно по минимуму написать в smb.conf, чтобы просто расшарить папку?
сейчас я и вовсе не могу попасть на сервер
вернулся на конфиг, поменял папку и юзера
[global]
workgroup = workgroup1
netbios name = fs
server string = %h
security = user
null passwords = Yes
guest ok = Yes
[pub]
path = /home/dgdeeper
read only = no
guest only = no
guest ok = yes
writable = yes
browseable = yesлистинг теперь такой:
[root@localhost /]# smbclient //192.168.1.100/pub
Enter dgdeeper's password:
Domain=[WORKGROUP1] OS=[Unix] Server=[Samba 3.5.6-71.fc14]
smb: \> ls -l
NT_STATUS_ACCESS_DENIED listing \-l33381 blocks of size 262144. 5057 blocks available
smb: \>
> smb: \> ls -lНет такой команды у smbclient. Есть ls.
Полезно ознакомиться с man smbclient.> NT_STATUS_ACCESS_DENIED
Это говорит о том, что аутентификацию прошёл успешно, но доступ не авторизован. Т.е. права доступа не позволяют прочитать содержимое.
Несколько непонятно что тебе надо получить: то ли обший ресурс, то ли доступ к домашней директории под другим пользователем. Попробуй вот этот.
[global]
workgroup = workgroup1
netbios name = fs
null passwords = Yes
guest ok = Yes
guest account = nobody
encrypt passwords = Yes
[homes]
browseable = yes
writable = yes
create mask = 640
case sensitive = yes
[pub]
path = /home/pub
public = yes
read only = yes
write list = dgdeeper
case sensitive = yesУбедись, что dgdeeper - владелец /home/dgdeeper и имеет права чтение-запись на /home/pub.
спасибо огромное, все работает!еще один вопрос.
у меня в fstab монтируется еще один раздел таким образом:/dev/sdb1 /mnt/fileserver ext4 rw,noexec,user 0 0
как дать права на доступ гостю и к нему?
> /dev/sdb1 /mnt/fileserver ext4 rw,noexec,user 0 0
> как дать права на доступ гостю и к нему?Вопрос не ясен. Речь идёт только о Samba или о локальном доступе?
Как общая рекомендация man chmod.
>> /dev/sdb1 /mnt/fileserver ext4 rw,noexec,user 0 0
>> как дать права на доступ гостю и к нему?
> Вопрос не ясен. Речь идёт только о Samba или о локальном доступе?
> Как общая рекомендация man chmod.локально доступ есть
а через самбу раздел не расшаривается[global]
workgroup = workgroup1
netbios name = fs
null passwords = Yes
guest ok = Yes
security = share
encrypt passwords = Yes
[pub]
path = /home/pub
public = yes
read only = no
write list = sambik
case sensitive = yes
force user = sambik
writable = yes
[fileserver]
path = /mnt/fileserver
public = yes
read only = no
write list = sambik
case sensitive = yes
force user = sambik[root@localhost sambik]# smbclient //192.168.1.100/pub
Enter sambik's password:
Domain=[WORKGROUP1] OS=[Unix] Server=[Samba 3.5.6-71.fc14]
Server not using user level security and no password supplied.
smb: \>[root@localhost sambik]# smbclient //192.168.1.100/fileserver
Enter sambik's password:
Domain=[WORKGROUP1] OS=[Unix] Server=[Samba 3.5.6-71.fc14]
Server not using user level security and no password supplied.
tree connect failed: NT_STATUS_BAD_NETWORK_NAME
[root@localhost sambik]#
> Server not using user level security and no password supplied.Это и есть ответ. Ты поставил security = share. А зачем?
Чтобы увидеть кем будет сервер и что он будет показывать можно воспользоваться testparm.
>> Server not using user level security and no password supplied.
> Это и есть ответ. Ты поставил security = share. А зачем?
> Чтобы увидеть кем будет сервер и что он будет показывать можно воспользоваться
> testparm.ну, секьюрити = user тоже не работает
>>> Server not using user level security and no password supplied.
>> Это и есть ответ. Ты поставил security = share. А зачем?
>> Чтобы увидеть кем будет сервер и что он будет показывать можно воспользоваться
>> testparm.
> ну, секьюрити = user тоже не работаетА какие права стоят на самой файловой системе, может там 770...
>>>> Server not using user level security and no password supplied.
>>> Это и есть ответ. Ты поставил security = share. А зачем?
>>> Чтобы увидеть кем будет сервер и что он будет показывать можно воспользоваться
>>> testparm.
>> ну, секьюрити = user тоже не работает
> А какие права стоят на самой файловой системе, может там
> 770...chmod 777 mnt ?
подозреваю, что нужно что-то поменять в fstab. раздел сейчас монтируется так:
/dev/sdb1 /mnt/fileserver ext4 rw,noexec,user 0 0
> ну, секьюрити = user тоже не работаетКакую ошибку выдает при security = user?
>> ну, секьюрити = user тоже не работает
> Какую ошибку выдает при security = user?[root@localhost samba]# smbclient //192.168.1.100/fileserver
Enter dgdeeper's password:
Domain=[WORKGROUP1] OS=[Unix] Server=[Samba 3.5.6-71.fc14]
tree connect failed: NT_STATUS_BAD_NETWORK_NAME
[root@localhost samba]# smbclient //192.168.1.100/pub
Enter dgdeeper's password:
Domain=[WORKGROUP1] OS=[Unix] Server=[Samba 3.5.6-71.fc14]
smb: \> ^Cпри этом странно, юзер dgdeeper в конфигах самбы сейчас не фигурирует вовсе. все на юзера sambik забито.
[global]
workgroup = workgroup1
netbios name = fs
null passwords = Yes
guest ok = Yes
security = user
encrypt passwords = Yes
[pub]
path = /home/pub
public = yes
read only = no
write list = sambik
case sensitive = yes
force user = sambik
writable = yes
[fileserver]
path = /mnt/fileserver
public = yes
read only = no
write list = sambik
case sensitive = yes
force user = sambik
> при этом странно, юзер dgdeeper в конфигах самбы сейчас не фигурирует вовсе.
> все на юзера sambik забито.Не совсем ясно что ты хочешь получить.
У тебя скорее всего проблема с правами доступа к /mnt/fileserver.
>> при этом странно, юзер dgdeeper в конфигах самбы сейчас не фигурирует вовсе.
>> все на юзера sambik забито.
> Не совсем ясно что ты хочешь получить.
> У тебя скорее всего проблема с правами доступа к /mnt/fileserver.мне нужно, чтобы /mnt/fileserver был доступен ВСЕМ. без авторизации, доступ на чтение и запись
Есть секция в man smb.conf. Называется "NOTE ABOUT USERNAME/PASSWORD VALIDATION"
Обязательна к прочтению.chmod 2777 /mnt/fileserver
chown -R nobody:nobody /mnt/fileserver
find /mnt/fileserver -type f -exec chmod 666 {} \;[global]
workgroup = WORKGROUP1
server string = file server
security = share
guest account = nobody
default service = fileserver
guest ok = yes[fileserver]
path = /mnt/fileserver
guest ok = yes
writable = yes
force user = nobody
force group = nobody
read only = No
force create mode = 0666
force directory mode = 0777
case sensitive = Yes
Прошу прощения, что влез в тему, но проблема очень близка.Мне точно так же как и автору необходимо было разрешить доступ всем и вся без пароля. Я немного подогнал под себя конфиг, который приведен выше. Все заработало кроме удаления. Не получается удалять файлы сидя с Win7. Подскажите как это исправить?
[global]workgroup = WORKGROUP
server string = files server
security = share
netbios name = SambaSERV
guest account = nobody
guest ok = yes
log file = /var/log/samba/log.%m
max log size = 50
[MUSIC]
comment = music
path = /data/share/music
guest ok = yes
writable = yes
force user = nobody
force group = nobody
read only = no
force create mode = 0666
force directory mode = 0777
case sensitive = yes
[MOVIE]
comment = movie
path = /data/share/movie
guest ok = yes
writable = yes
force user = nobody
force group = nobody
read only = no
force create mode = 0666
force directory mode = 0777
case sensitive = yes
[OTHER]
comment = other
path = /data/share/other
guest ok = yes
writable = yes
force user = nobody
force group = nobody
read only = no
force create mode = 0666
force directory mode = 0777
case sensitive = yes
> приведен выше. Все заработало кроме удаления. Не получается удалять файлы сидя
> с Win7. Подскажите как это исправить?Я сомневаюсь, что проблема в Win7. Проверить не могу ибо не использую.
Скорее всего локальные файлы не принадлежат пользователю nobody или пользователь nobody не имеет права удалять эти файлы. Вместо nobody можно использовать любого другого пользователя.
Исправить права и пользователя можно с помощью команды find. В примере она есть.
find /data/share/movie -type f -exec chown nobody:nobody {} \;
find /data/share/movie -type f -exec chmod 666 {} \;
спасибо большое, сделал все, как и подсказали, но:[root@localhost samba]# smbclient //192.168.1.100/fileserver
Enter dgdeeper's password:
Domain=[WORKGROUP1] OS=[Unix] Server=[Samba 3.5.6-71.fc14]
Server not using user level security and no password supplied.
tree connect failed: NT_STATUS_BAD_NETWORK_NAMEпользователя и группу nobody создавать нужно? в самбу добавлять нужно?
> tree connect failed: NT_STATUS_BAD_NETWORK_NAMEНе знаю почему. Надо в лог глядеть. Ты говорил, что у тебя федора на сервере. А SELinux выключен?
> пользователя и группу nobody создавать нужно? в самбу добавлять нужно?
Это может быть любой пользователь, главное - права должны быть выставлены правильно. В самбу добавлять не нужно.
>> tree connect failed: NT_STATUS_BAD_NETWORK_NAME
> Не знаю почему. Надо в лог глядеть. Ты говорил, что у тебя
> федора на сервере. А SELinux выключен?
>> пользователя и группу nobody создавать нужно? в самбу добавлять нужно?
> Это может быть любой пользователь, главное - права должны быть выставлены правильно.
> В самбу добавлять не нужно.эврика!)))) SELinux, будь он неладен!