Почему mount.cifs не использует мой файл учетных данных?

У меня есть сценарий, который должен подключить общий ресурс Windows к компьютеру с Linux, запустить сценарий и размонтировать его. Несмотря на то, что вы следуете справочной странице для mount.cifs, команда не может распознать файл учетных данных.

Я убедился, что пакеты для обмена файлами присутствуют:

sudo yum install samba-client samba-common cifs-utils

Создан диск, к которому будет подключена сетевая папка

sudo mkdir /share/

Создал файл учетных данных

sudo vim /root/.cifs

содержимое файла .cifs

username=uname
password=pword

Создал мой файл .sh

sudo vim /usr/bin/scritp.sh

содержимое script.sh

#!bin/bash
mount.cifs //ipaddress/share /share/ -o credentials=/root/.cifs
<script which makes use of the share>
umount /share/

Сделал скрипт исполняемым

sudo chmod u+x /usr/bin/script.sh

Протестированный скрипт

cd /usr/bin
sudo ./script.sh

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

Password for root@//ipaddress/share:

Кто-нибудь может понять, что я сделал не так? Кажется, это согласуется со всей документацией, которую я прочитал.


person Aaron Martin    schedule 30.04.2019    source источник


Ответы (1)


По какой-то причине изменение сценария на следующее сработало:

mount -t cifs -o credentials=/root/.cifs //ipaddress/share /share/
cd /share/
./script.sh
umount /share/

Не знаю, почему, так как mount -t cifs просто вызывает mount.cifs, но если у вас возникла та же проблема, вот как я наконец-то ее обошёл.

person Aaron Martin    schedule 30.04.2019