Saya ingin membuat folder Publik yang memiliki akses RW penuh. Masalah dengan konfigurasi saya adalah bahwa pengguna Windows tidak memiliki masalah sebagai tamu (mereka dapat RW dan Hapus), klien Ubuntu saya tidak dapat melakukan hal yang sama. Kami hanya bisa menulis dan membaca, tetapi tidak membuat atau menghapus.
Ini adalah smb.conf saya dari server saya:
[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
Entri FSTAB berikut tidak menghasilkan akses R / W penuh ke share.
//192.168.0.5/storage /media/myname/TK-Public/ cifs rw 0 0
Ini juga tidak berhasil
//192.168.0.5/storage /media/myname/TK-Public/ cifs rw,guest,iocharset=utf8,file_mode=0777,dir_mode=0777,noperm 0 0
Menggunakan lokasi berikut di Nemo / Nautilus tanpa Berbagi yang dipasang tidak berfungsi:
smb://192.168.0.5/storage/
Informasi tambahan. Saya hanya memperhatikan bahwa jika saya menyalin file ke share setelah pemasangan, klien Ubuntu saya segera menjadikan "tidak ada" menjadi pemilik, dan grup "tidak ada grup" telah membaca dan menulis, dan semua orang hanya sebagai baca-saja.
Apa yang saya lakukan salah?
Jawaban:
Ternyata saya perlu menambahkan UID (klien) lokal ke jalur mount di FSTAB untuk membuatnya bekerja. Saya tiba di ini melalui kekuatan kasar:
sumber
cifs-utils
sudah diinstal (bagi saya itu tidak diinstal di bawah 16,04 setelah menginstal samba pkg "utama"). Jika Anda belum menginstalnya, Anda akan mendapatkan kesalahan 'bad fs / bad option'.//10.20.30.40/share/mysharedir /mnt/mymountpoint cifs guest,uid=nobody,iocharset=utf8,noperm 0 0
untuk/etc/fstab
kemudiansudo mount -a
. Tampaknya untuk me-mount / menulis baik-baik saja sekarang.//server_name/share_name /media/local_mountpoint cifs guest,iocharset=utf8,file_mode=0777,dir_mode=0777,noperm 0 0
CIFS pada umumnya tidak memiliki konsep pengguna dan grup, jadi pemasangan share cif akan secara default menampilkan pengguna dan grup sebagai 'tidak ada':
Karena Anda bukan 'bukan siapa-siapa', Linux tidak akan membiarkan Anda menulis apa pun yang tidak memiliki izin 0777 kecuali jika Anda menggunakan sudo. Untuk memperbaikinya, tambahkan uid = mylogin, gid = mygroup ke fstab dan itu akan membuat share tampak seolah-olah itu adalah direktori Anda sendiri:
Anda sekarang memiliki kontrol penuh tanpa perlu sudo.
Ini tidak benar-benar mengubah apa pun di server, karena server tidak menegakkan apa pun. Ia memberi tahu Linux untuk berpura-pura bahwa Anda adalah pemilik dan memberi Anda akses tidak terbatas.
sumber
Anda hampir sampai. Buka FSTAB dengan menggunakan:
Di baris terakhir (atau di baris terakhir) tempat:
*** (ini semua satu garis panjang)
Ctrl- Xuntuk menutup, Yuntuk menyimpan dan Enter untuk menyegel kesepakatan.
Sekarang reboot dengan:
Dan Anda harus memiliki kontrol penuh atas pembagian jaringan di perangkat Linux Anda!
sumber
fstab
entri. Hanyamount <DEVICE>
ataumount <MOUNTPOINT>
atau bahkanmount -a
melakukan pekerjaan dengan baik.Saya punya masalah ini dan itu karena pengguna share tidak memilikinya. Saya memperbaikinya dengan "sudo chown {username}: {username} / {share} / {path}" setelah itu saya bisa memindahkan dan menghapus file.
sumber