Erreur "Seul root peut monter" - mais je suis root

9

Hier, j'ai pu monter mon partage smb avec la commande suivante:

sudo mount -t cifs //XXXX/share /media/share -o user=Ben,password=XXX,workgroup=WORKGROUP,ip=XXX.XX.XX,uid=ben,gid=ben,rw

Je ne sais pas pourquoi ça ne marche plus. (Peut-être de la mise à jour du système).

J'ai eu l'erreur suivante:

mount: only root can mount //XXX.XXX.XXX/share on /home/ben/share

Je ne sais pas comment résoudre ce problème ..

J'ai également essayé de le monter avec su -, et Smbclient fonctionne.

J'exécute ArchLinux.

Pliez
la source
1
Quelle est la sortie de echo "$EUID"?
Chris Down
1
@ChrisDown echo $ EUID = 1000
Ben D
6
@BenD - Dans ce cas, vous n'exécutez pas efficacement en tant que root. (Évidemment, cela devrait être exécuté dans le même environnement que celui que vous essayez de monter, vous devez donc vous assurer que c'est le shell racine qui se développe $EUID.)
Chris Down
2
Pourquoi le chemin d'accès est-il différent entre le message d'erreur et la commande de montage? L'un est /media/shareet l'autre l'est /home/ben/share. Aussi, je recommande d'utiliser /mntdes montages manuels ou statiques. /mediaa été créé pour les démons HAL / udev pour monter des disques créés dynamiquement comme une clé USB.
penguin359
1
Comme mentionné @ 9000, voyez ce que le mode verbeux dit en ajoutant un -v à votre commande de montage. Vérifiez également vos journaux système si vous ne l'avez pas déjà fait, et dmesg, et exécutez peut-être une commande sur la commande pour un dépannage plus approfondi.
Banjer

Réponses:

1

Si vous ne savez pas ce qui se passe, essayez strace:

sudo strace -f -F -o mount.strace mount -t cifs //XXXX/share /media/share -o user=Ben,password=XXX,workgroup=WORKGROUP,ip=XXX.XX.XX,uid=ben,gid=ben,rw

Ensuite, essayez de rechercher le fichier mount.stracepar le bas pour certaines erreurs, vous trouverez évidemment la raison ... C'est une méthode difficile, je sais ...

Jan Marek
la source
0

Comme je ne vois aucune raison valable pour votre erreur, je proposerais une syntaxe légèrement différente.

Je vais d'abord créer un nouveau répertoire en tant que root (pour être sûr que root peut le créer), puis monter le partage avec des options légèrement différentes. Voici les commandes (elles devraient toutes réussir):

sudo mkdir /mnt/smb_share
sudo touch /mnt/smb_share/test && sudo rm -f /mnt/smb_share/test && echo "Permissions are OK"
sudo mount -t cifs //(hostname)/share /mnt/smb_share -o user=Ben,domain=(WORKGROUP)

La commande mount devrait vous demander votre mot de passe utilisateur Samba Ben. J'ai supprimé les options uid et gid pour supprimer un peu de "bruit". Avec cette commande, vous devriez pouvoir vérifier que vous pouvez monter le partage. Bien sûr, vous devez remplacer:

  • (nom d'hôte) par le nom d'hôte du serveur de partage. Si cela ne fonctionne pas avec le nom d'hôte, réessayez mais utilisez plutôt l'adresse IP;
  • (WORKGROUP) par votre groupe de travail ou domaine.

Si cela fonctionne. Essayez de démonter le partage et de le remonter avec uid uniquement:

sudo umount /mnt/smb_share
sudo mount -t cifs //(hostname)/share /mnt/smb_share -o user=Ben,domain=(WORKGROUP),uid=ben

Si cela fonctionne, ajoutez le gid, puis ajoutez le rw et enfin ajoutez l'option de mot de passe (étape par étape). Vous pouvez donc identifier laquelle des options n'est pas comprise.

Huygens
la source