Я хочу создать общую папку с полным доступом к RW. Проблема с моей конфигурацией состоит в том, что пользователи Windows не имеют проблем в качестве гостей (они могут RW и Удалить), мой клиент Ubuntu не может сделать то же самое. Мы можем только писать и читать, но не создавать или удалять.
Вот мой smb.conf с моего сервера:
[global]
workgroup = WORKGROUP
netbios name = FILESERVER
server string = TurnKey FileServer
os level = 20
security = user
map to guest = Bad Password
passdb backend = tdbsam
null passwords = yes
admin users = root
encrypt passwords = true
obey pam restrictions = yes
pam password change = 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* .
add user script = /usr/sbin/useradd -m '%u' -g users -G users
delete user script = /usr/sbin/userdel -r '%u'
add group script = /usr/sbin/groupadd '%g'
delete group script = /usr/sbin/groupdel '%g'
add user to group script = /usr/sbin/usermod -G '%g' '%u'
guest account = nobody
syslog = 0
log file = /var/log/samba/samba.log
max log size = 1000
wins support = yes
dns proxy = no
socket options = TCP_NODELAY
panic action = /usr/share/samba/panic-action %d
[homes]
comment = Home Directory
browseable = no
read only = no
valid users = %S
[storage]
create mask = 0777
directory mask = 0777
browseable = yes
comment = Public Share
writeable = yes
public = yes
path = /srv/storage
Следующая запись FSTAB не дает полного доступа к общему ресурсу.
//192.168.0.5/storage /media/myname/TK-Public/ cifs rw 0 0
Это тоже не работает
//192.168.0.5/storage /media/myname/TK-Public/ cifs rw,guest,iocharset=utf8,file_mode=0777,dir_mode=0777,noperm 0 0
Использование следующего расположения в Nemo / Nautilus без монтируемого общего ресурса работает:
smb://192.168.0.5/storage/
Дополнительная информация Я только что заметил, что если я копирую файл в общий ресурс после монтирования, мой клиент Ubuntu сразу делает «никто» владельцем, а группа «нет группы» читает и пишет, а все остальные - только для чтения.
Что я делаю не так?
Ответы:
Оказывается, мне нужно добавить локальный (клиентский) UID к строке монтирования в FSTAB, чтобы это работало. Я пришел к этому с помощью грубой силы:
источник
cifs-utils
он установлен (для меня он не был установлен под 16.04 после установки «основного» samba pkg). Если он не установлен, вы получите ошибку «bad fs / bad option».//10.20.30.40/share/mysharedir /mnt/mymountpoint cifs guest,uid=nobody,iocharset=utf8,noperm 0 0
к/etc/fstab
тогдаsudo mount -a
. Кажется, теперь монтировать / писать нормально.//server_name/share_name /media/local_mountpoint cifs guest,iocharset=utf8,file_mode=0777,dir_mode=0777,noperm 0 0
CIFS обычно не имеет никакой концепции пользователя и группы, поэтому при монтировании общего ресурса cifs пользователь и группа по умолчанию будут отображаться как «nobody»:
Поскольку вы не «никто», Linux не позволит вам писать что-либо, у кого нет разрешения 0777, если вы не используете sudo. Чтобы это исправить, добавьте uid = mylogin, gid = mygroup в fstab, и общий ресурс будет выглядеть так, как если бы он был вашим собственным каталогом:
Теперь у вас есть полный контроль без необходимости sudo.
Это на самом деле ничего не меняет на сервере, так как сервер ничего не применяет. Linux говорит, что вы являетесь владельцем и предоставляете вам неограниченный доступ.
источник
Вы почти там. Откройте FSTAB, используя:
В последней строке (или в последней строке) место:
*** (это все одна длинная очередь)
Ctrl- Xзакрыть, Yсохранить и войти, чтобы закрыть сделку.
Теперь перезагрузитесь:
И вы должны иметь полный контроль над сетевым ресурсом на вашем устройстве Linux!
источник
fstab
записи. Простоmount <DEVICE>
илиmount <MOUNTPOINT>
дажеmount -a
хорошо справляйся с работой.У меня была эта проблема, и это было, потому что пользователь общего ресурса не имел это. Я исправил это с помощью "sudo chown {username}: {username} / {share} / {path}", после чего я мог перемещать и удалять файлы.
источник