Здравствуйте, возможно ли смонтировать общий ресурс samba без прав root?

В настоящее время у меня есть Java-программа, которая должна получить доступ к общему ресурсу. (он будет индексировать каждый файл на общем ресурсе smb и создаст несколько PDF-файлов)

Поскольку IP-адрес или DNS-имя ресурса может измениться (он должен изменяться на интерфейсе), я не могу поместить его в файл fstab.

Также я не хочу запускать свое приложение от имени пользователя root, так как это было бы очень плохо. Могу ли я сделать что-нибудь еще, чтобы ВСЕ пользователи в системе Linux могли монтировать общие ресурсы cifs, не добавляя точку монтирования в файл fstab?

1 ответ1

0

Вы не можете не быть пользователем root, если хотите смонтировать ресурс для всех пользователей: в конце концов, вы нарушаете конфигурацию системы других пользователей, и только root может это делать.

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

1) эта команда

   sudo nmap -sP 192.168.1.0/24

(при условии, что ваша ЛВС - 192.168.1.0, замените соответствующие номера для вашей ЛВС) вернет список всех активных ПК.

2) передать этот список этой команде, по одному,

   nmblookup -A 192.168.1.72

и он вернет NetBios имя рассматриваемого компьютера.

3) запросить наличие общих ресурсов Samba с помощью этой команды:

   smbclient -L net_bios_name_just-found -N

это даст вам список всех общих ресурсов в этой системе, используя только что найденное имя netBios. Среди этих результатов вы найдете нужную вам долю самбы.

На данный момент вы знаете IP-адрес и NetBios-имя хост-компьютера и, конечно, имя интересующего вас ресурса Samba. Теперь вы можете смонтировать общий ресурс как root, как вам нравится.

Если вы запишете эти команды, вы можете:

1) выполнить его по своему желанию как root, чтобы проверить его; 2) вставьте его в crontab (как root, crontab -e) следующей строкой:

   @boot /home/my_name/bin/my_special_script

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

Ура, мне пора.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .