01 |
Иногда возникает необходимость взаимодействия с файловой системой Малинки через рабочий компьютер на Windows. Для того, чтобы превратить Raspberry Pi 3 в файловый сервер с удаленным доступом к файлам по локальной сети, понадобится установить файловый сервер Samba. Он позволяет осуществлять кроссплатформенное файловое взаимодействие в сети. Работает по протоколу SMB/CIFS. |
|
02 |
В первую очередь необходимо обновить систему: |
|
03 |
1 2 sudo apt-get update
sudo apt-get dist-upgrade |
|
04 |
Процедура установки и настройки очень простая и быстрая, и вряд ли отнимет более 5 минут. |
|
05 |
Устанавливаем Samba: |
|
06 |
1 sudo apt-get install samba samba-common-bin |
|
08 |
Настройка доступа к новой папке После установки Samba необходимо создать папку на жестком диске Raspberry Pi (MicroSD с ОС), доступ к которой хотелось бы получить. В нашем случае это будет папка share в корневой директории: |
|
09 |
1 sudo mkdir -m 1777 /share |
|
10 |
Теперь Samba нужно настроить. Для этого открываем файл конфигурации: |
|
11 |
1 sudo leafpad /etc/samba/smb.conf |
|
12 |
И добавляем в конец файла следующие настройки: |
|
13 |
1 2 3 4 5 6 7 8 9 10 [share]
Comment = Pi shared folder
Path = /share
Browseable = yes
Writeable = yes
only guest = no
create mask = 0777
directory mask = 0777
Public = yes
Guest ok = yes |
|
15 |
Перезагружаем Samba, чтобы изменения вступили в силу: |
|
16 |
1 sudo /etc/init.d/samba restart |
|
17 |
Raspberry Pi 3 появится в локальной сети: |
|
19 |
Данные настройки позволят всем пользователям, в т. ч. и гостям вашей локальной сети, иметь полный доступ к папке /shared файловой системы Raspberry Pi 3. |
|
20 |
Настройка доступа к существующей папке Далее будет показано, как настроить общий сетевой доступ к существующей папке, на примере папки /home/pi. |
|
21 |
Открываем файл конфигурации: |
|
22 |
1 sudo leafpad /etc/samba/smb.conf |
|
23 |
И добавляем в конец файла следующие настройки, при чем параметру Path присваиваем путь к папке, которую хотим сделать доступной — /home/pi: |
|
24 |
1 2 3 4 5 6 7 8 9 10 [share]
Comment = Pi shared folder
Path = /home/pi
Browseable = yes
Writeable = yes
only guest = no
create mask = 0777
directory mask = 0777
Public = yes
Guest ok = yes |
|
25 |
После перезагрузки Samba: |
|
26 |
1 sudo /etc/init.d/samba restart |
|
27 |
Папка станет доступной всем пользователям сети, но только для чтения. Это связано с тем, что все папки и файлы были созданы ранее и для того, чтобы открыть полный доступ к ним, нужно переназначить права на все элементы расшаренной папки: |
|
28 |
1 sudo chmod -R 777 /home/pi |
|
29 | На заметку: |
Здесь необходимо иметь ввиду, что файлы, созданные непосредственно в Raspbian OS (например, скетчи Python) после открытия доступа, не будут иметь разрешения на изменения со стороны внешних компьютеров в сети. Для того, чтобы назначить права на изменение этих файлов, нужно вновь повторить процедуру изменения прав:
1 sudo chmod -R 777 /home/pi |
|
30 |
Доступ к корневой папке Если необходимо предоставить доступ к корневой папке (ко всем папкам), необходимо в файле настроек изменить строку Path = /any_path на Path = /. При этом придется повторить процедуру изменения прав на папку (атрибут -R указывает, что команду следует применить и ко всем вложенным элементам): |
|
31 | Внимание: |
В случае изменения прав на все папки:
1 sudo chmod -R 777 / автоматически будут переписаны права и вашего root-пользователя (папка usr/bin/sudo). После этой процедуры, исполнение любой команды под суперюзером sudo будет невозможно! Любая попытка использования команды sudo будет завершена ошибкой: 1 sudo: /usr/bin/sudo должен принадлежать пользователю с uid 0 и иметь бит setuid Поэтому, настоятельно рекомендуется точечно выбирать папки для изменения прав: 1 sudo chmod -R 777 /one_folder |
|
32 |
Создание пароля Samba В случаях, когда нужно ограничить доступ к ресурсам Raspberry Pi 3, необходимо во-первых, запретить доступ гостям — для этого из файла конфигурации нужно удалить строку Guest ok = yes. Во-вторых, нужно задать пароль Samba: |
|
33 |
1 sudo smbpasswd -a pi |
|
34 |
После перезагрузки: |
|
35 |
1 sudo /etc/init.d/samba restart |
|
36 |
Изменения вступят в силу. |
|
38 |
Похожие запросы:
|
|