Ho installato un server samba generalmente funzionante su una macchina Linux in questo modo:
useradd -g users netshareuser
passwd netshareuser
smbpasswd -a netshareuser
(le password sono le stesse)
mkdir /net/share
chown -R root:users /net/share
chmod -R g+rwxs /net/share
setfacl -R -m default:user::rwx,default:group::rwx,default:mask::rwx,default:other::--- /net/share
/etc/samba/smb.conf:
[global]
workgroup = workgroup
server string = server
security = user
hosts allow = 192.168. 127.
load printers = no
log file = /var/log/samba/%m.log
max log size = 50
dns proxy = no
printing = bsd
printcap name = /dev/null
disable spoolss = yes
unix extensions = no
follow symlinks = yes
wide links = yes
[share]
comment = Directory containing shared files
path = /net/share
valid users = netshareuser
read only = yes
rc.d restart samba
Da un computer Windows (7), "netshareuser" può accedere a questa condivisione, leggere file e directory. Tuttavia, se creo un collegamento simbolico ln -s /some/directory/ /net/share/nameOfSymlink
, lo stesso computer Windows non lo visualizzerebbe nemmeno.
Domande:
Cosa devo fare per ottenere i symlink Linux in quella condivisione per lavorare su macchine Windows ed è anche possibile? AGGIORNAMENTO: a ultrasawblade è stata data una risposta a questa domanda! Il problema erano le autorizzazioni errate su
/some/directory
Esiste un modo per condividere i file con samba, che non richiede di modificare le autorizzazioni dei file? Intendo un modo, in cui puoi condividere qualsiasi file sul tuo sistema linux con chiunque sulla tua rete ma senza cambiare le autorizzazioni di questo file. Quello che voglio è: contrassegnare un file come condiviso con "netshareuser", senza modificare le autorizzazioni di quel file.
Grazie in anticipo per eventuali suggerimenti!
mkdir /net/share/d; ln -s /net/share/d symlink
e ha funzionato. Quindi considero la risposta alla prima domanda!