J'ai accès à un lecteur réseau cifs. Lorsque je le monte sous ma machine OSX, je peux lire et écrire dessus.
Quand je monte le disque dans Ubuntu, en utilisant:
sudo mount -t cifs -o username=${USER},password=${PASSWORD} //server-address/folder /mount/path/on/ubuntu
Je ne parviens pas à écrire sur le lecteur réseau, mais je peux en lire un extrait. J'ai vérifié les autorisations et le propriétaire du dossier de montage, ils ressemblent à:
4.0K drwxr-xr-x 4 root root 0 Nov 12 2010 Mounted_folder
Je ne peux pas changer le propriétaire, car j'ai l'erreur:
chown: changing ownership of `/Volumes/Mounted_folder': Not a directory
Lorsque je descends plus profondément dans le lecteur réseau et que je change de propriétaire, j'obtiens l'erreur de ne pas être autorisé à changer le propriétaire du dossier.
Que dois-je faire pour activer mon autorisation en écriture?
noperm
option de montage indiquée de la même manière dans ma réponse à cette question: unix.stackexchange.com/a/375523/16287 . Cela donnera à tous les utilisateurs un accès en lecture et en écriture au montage CIFS.Réponses:
Vous montez le partage CIFS en tant que root (parce que vous avez utilisé
sudo
), vous ne pouvez donc pas écrire en tant qu'utilisateur normal. Si votre distribution Linux et son noyau sont suffisamment récents pour que vous puissiez monter le partage réseau en tant qu'utilisateur normal (mais dans un dossier que l'utilisateur possède), vous disposerez des informations d'identification appropriées pour écrire le fichier (par exemple, montez le dossier partagé quelque part sous votre dossier). répertoire de base, comme par exemple$HOME/netshare/
. Évidemment, vous devrez créer le dossier avant de le monter).Une autre solution consiste à spécifier l'identifiant de l'utilisateur et du groupe que le partage réseau monté doit utiliser, afin de permettre à cet utilisateur particulier et potentiellement à un groupe d'écrire sur le partage. Ajoutez les options suivantes à votre montage :
uid=<user>,gid=<group>
et remplacez<user>
et<group>
respectivement par votre propre utilisateur et votre groupe par défaut, que vous pouvez trouver automatiquement avec laid
commande.Si le serveur envoie des informations sur la propriété, vous devrez peut-être ajouter les options
forceuid
etforcegid
.la source
domain
. Quelque chose comme ceci:sudo mount -t cifs -o username=${USER},password=${PASSWORD},dom=${DOMAIN}, uid=<user>,gid=<group> //server-address/folder /mount/path/on/ubuntu
En fait, le domaine peut aller dans l'option "nom d'utilisateur", mais n'oubliez pas que vous devez utiliser à la/
place du`, like
nom d' utilisateur = DOMAIN / user.name`.//192.168.1.7/public /colmustang cifs username=<uname>,password=<upassword>,uid=<myUserID> 0 0
username
est le login distant à utiliser pour l'authentification. Leuid
est l'ID utilisateur local que vous voulez faire une sieste tous les fichiers / dossiers. Ainsi, le nom d'utilisateur est découplé de l'uid, le nom d'utilisateur est l'identifiant de l'utilisateur distant, tandis que l'uid est votre identifiant d'utilisateur local. Notez que cela pourrait être la même chose si votre serveur est Samba et que vous utilisez un compte LDAP ou un autre compte centralisé sur le client et le serveur :-).J'ai testé la commande suivante avec succès:
la source
man mount.cifs