Domanda

Sto scrivendo un servizio Windows in C #. Ho una condivisione samba su un server Linux che posso sfogliare / leggere / scrivere dal computer Windows e l'ho mappata su una lettera di unità. Il servizio Windows è in esecuzione come utente SYSTEM e non può scrivere nella condivisione.

Cosa devo cambiare?

È stato utile?

Soluzione

Ho usato una voce come questa nel mio file di configurazione di samba (smb.conf) per renderla scrivibile da qualsiasi utente.

[myshare]
   comment = My Share
   path = /home/myusername/myshare
   public = yes
   writable = yes
   #maps all users to the nobody user?
   only guest = yes

Altri suggerimenti

È necessario rendere visibile la condivisione all'utente del sistema. oppure installa il servizio come Utente diverso dall'account di sistema locale che dispone effettivamente delle autorizzazioni per sfogliare la condivisione.

È possibile modificare l'account di installazione in Project Installer impostando le seguenti 2 proprietà. (è nel file ProjectInstaller.Designer

this.serviceProcessInstaller1.Username = "DOMAIN\\UserName";
this.serviceProcessInstaller1.Password = "Password";
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top