Доступ к сетевому ресурсу Samba из Pi-клиента

13

Я использую свой компьютер для доступа к файлам на RPi, используя Samba Server на RPi.

Но есть ли способ открыть Samba Connections на Pi? Как просматривать Windows Samba файлы на RPi?

Snazzy Sanoj
источник
1
ftp будет намного быстрее
rav_kr
1
Да, я знаю, но устанавливать FTP-сервер на все мои ПК с Windows утомительно
Snazzy Sanoj
2
Вы хотите клиента Samba . Я уверен, что вы найдете много объяснений такого рода в Интернете, если будете искать « linux samba client», хотя, конечно, некоторые из них будут касаться использования клиента для доступа к общему ресурсу на linux box, а не наоборот. Я считаю, что утилита CLI для этого есть smbclient.
Златовласка
@goldilocks Спасибо, но есть ли обходной путь для файлового менеджера по умолчанию, чтобы открыть Samba? :)
Snazzy Sanoj
1
Файловый менеджер в LXDE (среда рабочего стола по умолчанию на Raspbian) - "pacmanfm", поэтому, если вы ищете "pacmanfm samba", вы должны найти кучу вещей, например, askubuntu.com/q/249678/239729 , которые я предлагаю для samba -он-линукс вещи обычно вы начинаете на U & L .
Златовласка

Ответы:

21

Сначала установите несколько пакетов:

apt-get install  samba-common smbclient samba-common-bin smbclient  cifs-utils

Затем создайте локальный каталог и смонтируйте удаленный общий ресурс:

mkdir /mnt/abc
mount -t cifs //server/share /mnt/abc

где serverваше имя компьютера под управлением Windows (DNS или NetBIOS) и shareваш общий каталог Windows.

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

mount -t cifs //server/share /mnt/abc -o user=user,pass=password,dom=domain

заменить вашими учетными данными.
Когда закончите, просто демонтируйте долю:

umount /mnt/abc
ТСМ
источник
+1 Это сработало для общего USB-накопителя, подключенного к USB-порту модема / маршрутизатора. Если вам нужна дополнительная отладка, добавьте «--verbose» перед «-o»
Denja
У меня есть эта ошибка с моими учетными данными: устройство или ресурс занят. См. Справочную страницу mount.cifs (8) (например, man mount.cifs)
Аксель Бриш
Я должен посмотреть, как это сделать каждый раз. Этот ответ очень четкий и лаконичный. Спасибо :)
Jobbo
4

если общий ресурс samba не требует каких-либо учетных данных для входа и вы хотите смонтировать общий ресурс при запуске raspberry pi, отредактируйте файл fstab как root

sudo nano /etc/fstab

и добавьте следующую строку

//server/share  /mnt/abc  cifs  guest  0  0

закройте и сохраните изменения в файле fstab

убедитесь, что все соединяется как надо с

sudo mount -a

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

//server/share  /mnt/abc cifs username=username,password=password  0  0

Не лучший способ использовать этот метод, если другие имеют доступ к вашему RPi или сети, так как fstab доступен для чтения всем и сможет прочитать ваш пароль.

Лучшее решение - использовать файл учетных данных.

nano ~/.smbcredentials

затем введите имя пользователя и пароль в файл

username=username
password=password

сохраните файл и измените его разрешения, чтобы другие не могли его прочитать.

chmod 600 ~/.smbcredentials

затем отредактируйте от имени root fstab, чтобы добавить свой общий ресурс samba

//server/share  /mnt/abc cifs credentials=/home/pi/.smbcredentials  0  0

снова, протестируйте с

sudo mount -a

и если нет никаких ошибок, то он автоматически подключит общий ресурс при перезагрузке.

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

Мартин Джонс
источник
4

Моя проблема была похожа. Моей целью была акция dd-wrt samba.

Моя проблема: не удалось установить его в любом случае (также fstabиз RPi3).

У меня были ошибки от «не удалось передать пароль для ссылки на mount.cifs» до «ошибка неверного аргумента 22».

Я сталкивался с этим сообщением, Не могу смонтировать общий ресурс samba: Ошибка монтирования (22) , и этот ответ предполагает, что решение состоит в том, чтобы добавить vers=1.0к опциям на mount.

Я надеюсь, что это поможет вам.

Cattivello
источник
Версия = 1.0 также решила проблему для меня. sudo mount -t cifs // [удаленный IP-адрес] / downloads / mnt / abc -o vers = 1.0, user = [user]
tridy
Использование vers = 1.0 для меня тоже работает, sudo mount -o vers = 1.0 // [NAS_IP] / nas / media / pi / nas
Electron1979
0

Если после попытки автоматического монтирования общего ресурса вы каким-то образом столкнетесь со сценарием, в котором Pi больше не будет загружаться, переведет вас в «аварийный режим» и / или сообщит, что корневая учетная запись заблокирована, вы можете преодолеть ее, выполнив следующие действия. Инструкция, расположенная здесь: Raspberry Pi Boot Issue - Root аккаунт заблокирован! ,

Резюме связанных шагов на будущее:

  1. Извлеките свою SD-карту из Pi и с помощью адаптера установите карту на свой ПК, Mac или Linux.
  2. Вы должны увидеть /bootраздел своей SD-карты.
  3. Найдите файл cmdline.txtи добавьте следующее в конце строки. init=/bin/sh Примечание. Не создавайте новую строку, просто добавьте приведенное выше в конец текущей строки.
  4. Загрузите SD-карту обратно в Pi и загрузитесь.
  5. Теперь вы должны получить приглашение root-оболочки. Отсюда вы можете отменить изменения /etc/fstabили что-то еще, что изначально сломало вашу систему.
  6. В некоторых случаях вы не сможете сохранить свои изменения, и система будет жаловаться на файловую систему только для чтения. Если вы получили это перейти к следующему шагу.

На SD-карте Raspberry Pi будет два основных раздела, поскольку мы не можем прочитать таблицу разделов напрямую, вам необходимо вручную найти устройство для корневого и загрузочного разделов. Вы можете сделать это, перейдя в /devкаталог, и вы должны увидеть что-то похожее на mmcblk0p1& mmcblk0p2. Второе устройство mmcblk0p2будет вашим корневым разделом. Вам необходимо перемонтировать это с правами на чтение и запись:

mount -o remount,rw /dev/mmcblk0p2 /

Этого проще всего добиться, подключив SD-карту к другому компьютеру (Mac / Linux / Windows) и отредактировав там cmdline.txtфайл.

Я запустил свою среду с неверной записью fstab, и следование этим инструкциям позволило мне устранить эту ошибку.

DaveL17
источник