Sto riscontrando un problema in cui il montaggio di un server CIFS remoto senza una voce fstab funziona, ma il montaggio tramite fstab non funziona .

Il seguente comando funziona:

$ sudo mount -t cifs //w.x.y.z/Home$ /mnt/dir -o domain=A,username=B,password="C",sec=ntlmssp,file_mode=0700,dir_mode=0700 

Tuttavia, se invece aggiungo la seguente riga a / etc / fstab e provo a montare dal comando mount (ad es. mount -a o mount /mnt/dir), ricevo lerrore elencato sotto:

$ tail -n 1 /etc/fstab //w.x.y.z/Home$ /mnt/dir cifs domain=A,username=B,password="C",sec=ntlmssp,file_mode=0700,dir_mode=0700 

errore:

$ sudo mount /mnt/csif mount error(13): Permission denied Refer to the mount.cifs(8) manual page (e.g. man mount.cifs) 

Impostazione esplicita di dump e ordine di passaggio fsck a 0 non aiuta. Entrambi i comandi sembrano fare la stessa cosa

Answer

Quando digiti il comando mount, la parte password="C" viene prima gestito dalla shell e diventa password=C prima di arrivare al comando mount. Questo non viene fatto con le voci fstab, quindi è necessario rimuovere le virgolette singole. Se la tua password contiene caratteri speciali puoi sostituirli con il loro codice ottale, in particolare \040 per lo spazio.

Commenti

  • Avevo bisogno di usare le virgolette per evitare linterpolazione della shell di caratteri speciali nella password. La rimozione delle virgolette insieme alla sostituzione dei valori ottali per i caratteri speciali della password ' ha risolto il mio problema. Grazie.

Risposta

È buona norma evitare di inserire le password direttamente in /etc/fstab (che normalmente è leggibile in tutto il mondo). Invece, inseriscili in un file e fai riferimento al file come:

//w.x.y.z/Home$ /mnt/dir cifs credentials=/home/username/cifs.creds,sec=ntlmssp,file_mode=0700,dir_mode=0700 

/home/username/cifs.creds è di proprietà di un utente idoneo (root o un utente che corrisponde allutente SMB proprietario della condivisione SMB) e chmod og-rwx Contiene le credenziali nel formato

domain=A username=B password=C 

A, B e C sopra devono essere letterali – non esiste unanalisi simile a una shell di virgolette o barre rovesciate.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *