аутентифицироваться в сетевом ресурсе (samba) без необходимости явного монтирования

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

В Windows я просто делаю «net use // server / share / user: username password» и вуаля! Я могу пойти в каталог, как если бы он был в моей локальной машине.

Как я могу сделать то же самое в Linux? Я знаю, что могу смонтировать общий ресурс в определенную папку на моей машине, но это подразумевало бы управление большим количеством папок, и я бы очень хотел этого избежать. Так же, как когда я делаю это в Windows.

Спасибо заранее!

1
задан 23 January 2014 в 04:15

1 ответ

Установите smbfs:

sudo apt-get install smbfs

ИЛИ альтернативно вы можете использовать cifs-utils:

sudo apt-get install cifs-utils

Либо будет работать, они две разные программы, которые реализуют общие ресурсы Windows. Я успешно использовал smbfs со следующими шагами, не проверял его на cifs.

Если вы хотите только временное монтирование, для smbfs команда будет (всего одна строка):

mount -t smbfs //server/share /mountdirectory -o username=share_user_name,password=share_password

Замените smbfs на cifs в этой команде, если вы выбрали использовать cifs-utils.

Если вы хотите, чтобы эти общие ресурсы автоматически монтировались при загрузке:

Создайте файл учетных данных в безопасном месте, назовите его .smbcredentials и присвойте ему следующее содержимое:

username=share_username
password=share_password

Для защиты этого файла:

sudo chown root .smbcredentials
sudo chmod 600 .smbcredentials

Добавить эту строку в /etc/fstab (все в одной строке):

//server/share /mountdirectory smbfs credentials=/path/to/.smbcredentials,uid=USERSID,gid=USERSGROUPID 0 0

ИЛИ, если используется CIFS (снова (все в одной строке):

//server/share /mnt/mountdirectory cifs iocharset=utf8,credentials=/home/whoever/.smbcredentials,dir_mode=0775,uid=USERID,gid=USERGROUPID 0 0

Здесь USERID - это идентификатор пользователя, которому вы хотите владеть подключенной папкой, а USERGROUPID - это идентификатор группы пользователей. Их можно найти в / etc / passwd и /etc/group.

Если вы добавили одну из этих строк в свой файл / etc / fstab, теперь вы можете смонтировать общий ресурс:

sudo mount -a

Теперь вы должны увидеть эти общие ресурсы, смонтированные под управлением локального пользователя и группы. Вы указали в USERID и USERGROUP.

0
ответ дан 23 January 2014 в 04:15

Другие вопросы по тегам:

Похожие вопросы: