Ошибка «только root может монтировать» - но я root


9

Вчера мне удалось смонтировать общий ресурс smb с помощью следующей команды:

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

Я не знаю, почему это больше не работает. (Возможно из системного обновления).

Я получил следующую ошибку:

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

Я не знаю, как решить эту проблему ..

Я также попытался смонтировать его с помощью su -, и Smbclient работает.

Я запускаю ArchLinux.


1
Какой выход echo "$EUID"?
Крис Даун

1
@ChrisDown echo $ EUID = 1000
Бен Д

6
@BenD - в этом случае вы не работаете как root. (Очевидно, что это должно выполняться в той же среде, в которой вы пытаетесь подключиться, поэтому вы должны убедиться, что расширяется корневая оболочка $EUID.)
Крис Даун

2
Почему путь между сообщением об ошибке и командой монтирования отличается? Один есть, /media/shareа другой есть /home/ben/share. Кроме того, я рекомендую использовать /mntдля ручного или статического крепления. /mediaбыл создан для демонов HAL / udev для монтирования динамически создаваемых дисков, таких как USB-накопитель.
penguin359

1
Как уже упоминалось @ 9000, посмотрите, что говорит подробный режим, добавив -v к команде mount. Также проверьте системные журналы, если вы еще этого не сделали, и dmesg, и, возможно, выполните команду strace для более глубокого устранения неполадок.
Banjer

Ответы:


1

Если вы не знаете, что происходит, попробуйте 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

Тогда попробуйте поискать файл mount.straceснизу для некоторых ошибок, вы, очевидно, найдете причину ... Это сложный метод, я знаю ...


0

Поскольку я не вижу надлежащей причины вашей ошибки, я бы предложил немного другой синтаксис.

Сначала я создам новый каталог как root (чтобы убедиться, что root может его создать), а затем смонтирую общий ресурс с немного другими параметрами. Вот команды (все они должны быть успешными):

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)

Команда mount должна запросить ваш пароль пользователя Samba Ben. Я удалил параметры uid и gid только для того, чтобы убрать «шум». С помощью этой команды вы сможете проверить, можете ли вы смонтировать общий ресурс. Конечно, вам нужно заменить:

  • (имя хоста) по имени хоста общего сервера. Если это не работает с именем хоста, попробуйте еще раз, но вместо этого используйте IP-адрес;
  • (WORKGROUP) по вашей рабочей группе или домену.

Если это работает. Попробуйте размонтировать общий ресурс и перемонтировать его только с помощью uid:

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

Если это работает, добавьте gid, затем добавьте rw и, наконец, добавьте опцию пароля (шаг за шагом). Таким образом, вы можете определить, какой из вариантов не понят.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.