Локальная сеть между виндовс и линукс. Настройка локальной сети в Linux

процесс настройки соединения по сетевому кабелю двух компьютеров на линукс можно разделить на две условные части: вначале мы установим связь между ПК, чтобы они могли пинговать друг друга, а потом уже непосредственно настраиваем програмное обеспечение для обмена данными. В данном случае NFS сервер будем делать. Чтобы подружить компьтеры на ubuntu необходимо присвоить одному ip 192.168.0.1, а второму пк ip 192.168.0.2. Соответственно сетевую маску для обеих машин 255.0.0.0 В терминале можно написать: sudo eth0 192.168.0.1 netmask 255.0.0.0 up или же, если у вас есть Network Manager - то в его настройках это легко сделать. Стоит отметить, что когда я прописывал айпи и маску через консоль,а потом подключение устанавливал через network manager - то ничего не работало. Нужно или отключить его, или же присваивать ручками айпишник и маску. Итак, прописав всё на обеих машинах, подсоединив их по сетевому кабелю в терминале пробуем пропинговать другой пк. для этого пишем ping 192.168.0.2 Если идёт обмен пакетами, значит всё хорошо и переходим к другому этапу. Тут следует определиться какая машина будет в роли сервера, а какая в роли клиента. Я ПК с 192.168.0.1 решил сделать сервером. Устанавливаем на серверный ПК необходимые пакеты: sudo apt-get install -y nfs-kernel-server nfs-common portmap Запускаем переконфигурирование portmap и перезапускаем процесс sudo dpkg-reconfigure portmap sudo /etc/init.d/portmap restart Теперь пришло время создать папку с шарой (share folder) на NFS сервере Открываем любиым текстовым редактором, я использую nano файл /etc/exports sudo nano /etc/exports и туда добавить строчку, примерно такого содержания /home/user/music 192.168.0.2 (rw,sync,no_subtree_check) где вначале мы задаём адрес к шаровой папке, а потом указываем сразу IP клиента. Ну и сохраняем конфиг после манипуляций Пишем на последок: sudo exportfs -a Настройка Клиентской ubuntu Все проделанные нами действия осуществлялись на Серверной машине, теперь переходим на клиентскую Ubuntu. И начинаем с установки новеньких пакетов: sudo apt-get install portmap nfs-common Теперь осталось только примонтировать серверную папку у себя. Создадим в домашнем каталоге простого пользователя пустую директорию: mkdir share монтируем sudo mount 192.168.0.1:/home/user/music /home/user/share Объяснять тут нечего, указываем что и куда монтировать. Можно сделать монтирование папки при запуске системы, для этого будем использовать fstab sudo nano /etc/fstab и вставим туда: 192.168.0.1:/home/user/music /home/user/share nfs rsize=8192,wsize=8192,timeo=14,intr Теперь, чтобы примонтировать папку всего навсего нужно написать mount /home/user/share Вот так легко и просто при помощи сетевого кабеля я соединил в локальную сеть две машины под управлением ubuntu для нехитрого перекидывания важных файлов

В этой статье будет рассмотрен простейший случай локальной сети - одноранговая полностью доверенная сеть. Или, если проще выражаться, соединены несколько равноценных компьютеров и доступ разрешен всем ко всем. Именно такие простые сети наиболее актуальны. В наибольшей степени такие гетерогенные (Windows - Linux) сети интересны для маленьких и небольших компаний, которые все более активно переходят на использование ОС GNU/Linux.

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

Первое, что нужно сделать это выбрать каким образом компьютерам в сети будут присваиваться IP-адреса. Есть два способа, у каждого из которых есть достоинства и недостатки.

Динамическое присвоение адресов

Достоинства:

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

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

Статическое присвоение адресов

В этом случае IP-адреса на каждом компьютере указываются вручную. Достоинства:

  • Сеть будет работать в любом из своих сегментов. То есть если из четырех сетевых компьютеров включены лишь два, то сеть между ними будет работать.
  • Не нужно роутера или DHCP сервера на каком-либо из компьютеров.

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

Лично я сторонник статических адресов в тех сетях где состав сети небольшой (до 7-8 компьютеров) и при этом если в эту сеть не добавляются постоянно новые компьютеры (например ноутбуки). Далее в этой статье будет подразумеваться именно статический способ присвоения IP-адресов.

Настройка сетевых интерфейсов

Windows

В операционных системах Windows эти настройки делаются через апплет свойств сетевого подключения, а доступные сетевые подключения перечислены в "Панель управления - Сетевые подключения". Вот так этот апплет выглядит в Windows XP:

Примечание . В Windows 7, 8 и 10 апплет "Сетевые подключения" расположен в "Центр управления сетями - Изменение параметров адаптера". Или есть более короткий путь - через диалоговое окно "Выполнить ", в нем нужно написать имя файла ncpa.cpl .

  • "Протокол Интернета (TCP/IP)" должен быть включен в любом случае, даже если по сети будет только один Интернет "раздаваться".
  • "Клиент для сетей Microsoft" и "Служба доступа к файлам и принтерам сетей Microsoft" должны быть включены в том, случае если по сети нужно передавать файлы или печатать на общем принтере.

Кроме этого сетевому интерфейсу нужно присвоить IP-адрес. Это делается через свойства "Протокол Интернета (TCP/IP)", в следующем апплете:

Общепринято использовать для локальных сетей диапазон адресов 192.168.x.x. Поле "Основной шлюз" нужно заполнять только если этот компьютер получает Интернет с другого компьютера или с модема-роутера и в этом случае там должен быть адрес "раздатчика" Интернет.

Кроме этого, для того, чтобы сеть между компьютерами Windows работала, необходимо включить учетную запись "Гость" на каждом из компьютеров и убедиться в том, что на каждом компьютере:

Имя рабочей группы и компьютера можно узнать, а также изменить через апплет "Система":

Если используется брандмауэр Windows, то нужно разрешить сетевые соединения для доступа к файлам и папкам:

Аналогичное правило должно быть создано в том случае если используется другой файерволл.

Ubuntu Linux

В Ubuntu Linux параметры сетевых интерфейсов можно определить через через апплет "Сеть":

И затем в свойствах сетевого интерфейса:

Настройка доступа к файлам

Windows

В отдельных статьях этот вопрос раскрывается более подробно:

Примечание . В Windows 7, 8 и 10 настройка доступа к файлам выполняется немного иначе чем на Windows XP. Для этих версий Windows есть отдельные статьи, ссылки указаны выше.

Если нужно, чтобы на компьютере с установленной ОС Windows были доступны через сеть какие-то файлы или принтер, необходимо эти файлы или принтер "расшарить" то есть разрешить доступ к ним других пользователей. Это делается через апплет свойств папки или принтера. Вот так этот апплет выглядит в Windows XP:

На вкладке "Безопасность" нужно добавить группу "Все" и дать ей полный доступ к папке. Это нужно для того, чтобы по сети в этой папке можно было создавать и редактировать файлы. Простейший полный и анонимный доступ к папке.

Кроме этого, на вкладке "Доступ" нужно разрешить сетевой доступ к этой папке и указать сетевое имя папки. При указании сетевого имени папки не рекомендую использовать русские буквы, а также пробелы - имя лучше писать латинскими буквами без пробелов:

Ubuntu Linux

Общий доступ к папке

Для того, чтобы сделать файлы и папки Ubuntu доступными через сеть на компьютерах с ОС Windows нужно установить полный пакет Samba. Потому что по умолчанию устанавливается только часть этого пакета - SMB Client, которая позволяет только получать доступ к сетевым ресурсам на компьютерах с ОС Windows. Установить этот пакет можно через менеджер пакетов Синаптик, либо этот пакет будет установлен автоматически при попытке "расшарить" первую папку на компьютере с ОС Ubuntu Linux. Но для установки этого пакета потребуется либо установочный DVD диск Ubuntu Linux, либо соединение с Интернет.

Для того, чтобы сделать файлы и папки Ubuntu доступными через сеть нужно в Наутилусе найти нужную папку, затем нажать правую кнопку мыши и затем открыть апплет "Свойства", а на нем вкладку "Общий доступ":

Важно! На эту локальную папку необходимо дать права 777, то есть полный доступ для всех. Сделать это можно либо через файловый менеджер (через свойства папки - вкладка Доступ), либо при помощи консольной программы chmod .

Теперь эта локальная (для Линукс) папка будет доступна по сети.

Дополнительные настройки Самба (Samba)

Samba это программа, которая предоставляет доступ к файловым ресурсам Linux для компьютеров Windows. Таким образом что компьютер Linux в локальной сети выглядит так же как и компьютер Windows. На Ubuntu Samba устанавливается и запускается автоматически, если вы включили общий доступ к какой-либо папке через Наутилус (как это описано выше).

Для того, чтобы обеспечить более удобный доступ к сетевой папке Линукс со стороны Windows, без запросов паролей и проблем доступа, нужно еще дополнительно настроить Самбу. Для этого редактируется файл /etc/samba/smb.conf.

Гостевой полный доступ к сетевой папке на Линукс

Секция

  1. security = user
  2. map to guest = Bad Password

Примечание : параметр map to guest определяет поведение самбы в случае неправильного логина или пароля. В этом случае самба подключит сетевого пользователя под эккаунтом Гость. В этом параметре можно указывать и другое значение - bad user.

Секция

  • read only = no
  • guest ok = yes
  • directory mask = 0777
  • create mask = 0777

Примечание : параметры directory mask и create mask "заставляют" самбу давать полные права для всех на те файлы, которые будут созданы в этой папке через сеть. Это необходимо для тог, чтобы обеспечить доступность файлов и папок для всех пользователей локальной сети.

Такие параметры позволят "спокойно" работать с расшаренными на Linux файлами через сеть не мучаясь с авторизацией.

Можно здесь добавить еще два параметра: "force user = username " и "force group = usergroup ". В этом случае, для всех созданных по сети файлов и папок будет установлен владелец username и группа владельца usergroup. Значения username и usergroup должны совпадать с именем и группой локального пользователя Линукс.

После расшаривании папки через Наутилус, нужные параметры в секциях записываются автоматически. Но параметры directory mask и create mask нужно добавлять вручную.

Проблемы с доступом на локальной расшаренной папке Linux

После всех этих настроек тем не менее возможна проблема с доступом к некоторым файлам в этой папке через сеть. Такая проблема может возникнуть если локальный пользователь Линукс, локально откроет эту папку и создаст в ней новый файл. Этот файл другие пользователи сети не смогут редактировать. Поскольку права на него будут установлены не такие как все остальные файлы в папке (не 666).

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

Есть разные способы решения этой проблемы.

Самый технически простой заключается в том, что локальный пользователь Линукс открывал эту папку тоже через сеть. Дело в том, что графические файловые менеджеры (Проводники) позволяют через сетевое окружение открывать не только папки на других компьютерах сети, но и расшаренные папки на своем собственно компьютере!

Если локальный пользователь Линукс откроет свою расшаренную папку через сетевое окружение, то все его операции в папке будут "сетевыми", то есть при создании новых файлов эти файлы получат атрибуты доступа в соответствии с настройками Самба.

Рабочая группа Windows

Если название рабочей группы на компьютерах Windows отличается от "WORKGROUP", тогда нужно изменить значение параметра workgroup в файле /etc/samba/smb.conf. Вместо значения "WORKGROUP" там нужно записать то имя группы, которое используется на компьютерах Windows. По умолчанию для самбы значение параметра workgroup = WORKGROUP.

Как расшарить папку и задать разрешения и права доступа в Linux

Еще одна статья в которой подробно рассмотрен вопрос о том как в Linux настроить разрешения и права доступа для того чтобы расшарить папку для анонимного доступа по локальной сети (доступ без пароля).

Доступ к сетевым принтерам

Windows

Если принтер подключен к компьютеру с ОС Windows, нужно разрешить сетевой доступ к нему. Это делается точно так же как и в случае с файлами, через апплет "Свойства".

Ubuntu Linux

Для того, чтобы получить доступ к сетевому принтеру Windows, нужно воспользоваться апплетом "Печать", который доступен через меню "Система - Администрирование". В этом апплете нужно добавить новый принтер и затем выбрать поиск сетевого принтера Windows:

Поиск такого принтера выполняется нажатием кнопки "Browse".

Иван Сухов, 2011, 2015, 2017 г .

Если вам оказалась полезна или просто понравилась эта статья, тогда не стесняйтесь - поддержите материально автора. Это легко сделать закинув денежек на Яндекс Кошелек № 410011416229354 . Или на телефон +7 918-16-26-331 .

Даже небольшая сумма может помочь написанию новых статей:)

Задача вроде бы и простая, но, тем не менее, некоторые моменты лучше знать.

Наверное, можно и как то проще и правильней, но я сделал так.

Итак, задача такая – есть десяток пользователей anna, andy, olya, nataly.. и т.д. У каждого в качестве операционки Ubuntu 10.04. Нужно организовать файловый сервер на отдельной машине Ubuntu 10.04 с папками для данных каждого пользователя с доступом только для этого пользователя и для админа, и папки для обмена файлами для каждой пары пользователей типа anna-andy, anna-olya, andy-olya.. с доступом только для двух пользователей из названия папки и админа. Организуем описанный примитивный файловый сервер!

Захожу на компьютер файлового сервера под учеткой администратора, создаю каталог, скажем «111» и внутри него создаю нужные каталоги:

Чтобы разрешения Samba на запись работали нужно разрешить запись пользователям в каждом нужном ему каталоге. Я не стал долго заморачиваться – все равно через samba будут видны для каждого пользователя с разрешениями необходимыми только те каталоги, которые я в samba открою, поэтому я в терминале выполнил команду

Sudo chmod -R 777 /home/alex/111

дав тем самым всем все права на каталог «111» и все каталоги из него. А в нем у меня все каталоги для файлового сервера и лежат.

Потом зашел в «Система» — «Администрирование» — «Пользователи и группы», создал пользователей. Имена, пароли и ID пользователей должны совпадать на файловом сервере и на компах самих пользователей. О том, что ID должен совпадать, я узнал уже после того, как создал пользователей, поэтому пришлось на компьютерах пользователей его менять для соответствия ID этих пользователей на файловом сервере. Имя и пароль через графическую утилиту задавать понятно как, чтоб задать ID нужно выбрать пользователя, зайти в «Дополнительные параметры» на вкладку «Дополнительно». При этом пользователь, ID которого я меняю должен полностью выйти из системы – если завершение сеанса этого пользователя не помогло – лучше перезагрузиться. У меня почему то не получалось из графического интерфейса поменять ID – он вроде как бы менялся, но при повторном заходе пользователя оказывался старым, поэтому я менял его из терминала. Чтобы посмотреть ID пользователя заходим в файл /etc/passwd и ищем строку с его именем:

vi /etc/passwd
...
andy:x:1008:1009:andy,:/home/andy:/bin/bash
...

В этой сроке первая цифра, в моем случае 1008 и есть ID пользователя andy, если он не совпадает с ID на сервере, то чтоб поменять ID ввожу в терминале компьютера пользователя:

Sudo usermod --uid 1005 andy

Всех этих манипуляций можно избежать, если создавать пользователя командой useradd с параметрами -u (тот самый uid) и — p (пароль), например:

sudo useradd -u 1005 -p userpassword username

Так, каталоги и пользователей я создал, теперь организую общий доступ, для этого мне понадобятся из «Центра приложений Ubuntu» два приложения, которые можно найти, задав для поиска «samba» — это «Samba» и «SMB/CIFS file,print, and login server of Unix»

Установив их, набираю в терминале

Sudo system-config-samba

или иду в «Система» «Администрирование» «Samba».
Потом «Настройка» «Пользователи Samba» «Добавить пользователя»

Выбираю первого пользователя, которому нужен файловый сервер из выпадающего меню «Имя пользователя Unix», ввожу точно такое же имя в графе «Имя пользователя Windows» затем пароль, «ok», «ok». И таким образом добавляю всех пользователей файлового сервера, созданных ранее в «Пользователи и группы». Эти же действия можно выполнить в терминале, к примеру добавление системного пользователя andy в список пользователей samba выглядит так:

smbpasswd -a andy

Smbpasswd -e andy

После добавления пользователей нажимаю зеленый плюсик в окне system-config-samba, в открывшемся окне нажимаю кнопку «Обзор», в открывшемся обзоре нахожу необходимый каталог, скажем «Anna-Andy», выбираю его, ставлю галочки «Запись разрешена» и «Виден»,

на вкладке «Доступ» ставлю галочки напротив пользователей andy и anna. Повторяю эту операцию для всех каталогов. После этого необходимо перезапустить сервис samba, для чего в терминале выполнить

Sudo service smbd restart

Теперь если нажать в главном меню «Переход» «Соединиться с сервером», выбрать в выпадающем меню «Тип сервиса» пункт «Ресурс ОС Windows», ввести в поле «Сервер» его IP адрес, то открывается список каталогов файлового сервера. Далее клацаем по нужному каталогу, вводим имя пользователя и пароль, и если на сервере самба с такими учетными данными ранее я разрешил ходить в этот каталог – он откроется с правами для чтения и записи). Но мне ведь нужно чтобы файлы созданные одним пользователем были доступны для чтения и записи другому пользователю, с которым у первого пользователя этот каталог общий. В графической утилите этот пункт пропущен, поэтому поправим из терминала созданный ранее нами на сервере файл /etc/samba/smb.conf . Чтобы файлы и каталоги, создаваемые пользователем andy в расшаренной папке andy-anna были доступны для чтения и записи пользователю anna, нужно в файле /etc/samba/smb.conf найти пункт и вставить строки create mask = 0777 и directory mask = 0777 , получится так.

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

Общие сведения.

Для создания общих сетевых ресурсов в среде Windows, применяется протокол CIFS (ранее известный как SMB), поддержка которого в UNIX-подобных системах обеспечивается программным обеспечением Samba . Samba работает по протоколам TCP и UDP , соединение шифруется. С помощью Samba возможно обеспечить не только общий доступ к файлам и принтерам, но и, например, построить контроллер домена с поддержкой Active Directory (об этом в следующий раз). С помощью Samba можно открыть общий доступ не только между Windows и Linux, но и между Linux и Linux. Однако есть некоторые ограничения. Во первых, SMB - это "виндовый" протокол, со всеми вытекающими. Он не слишком хорошо интегрируется с UNIX-системами. Не вдаваясь в сложные технические описания, скажу лишь что скорость передачи данных по Samba медленнее, зачастую значительно, она нестабильна, как и загрузка сетевого канала, а также даёт весьма ощутимую нагрузку на процессор. Поэтому если в вашей домашней сети нет Windows-машин, то предпочтительнее использовать протокол сетевой файловой системы - NFS .

Суть работы NFS весьма проста. Удалённый ресурс встраивается в общее дерево файловой системы, и в результате каталог, который находится на файловом сервере или другом компьютере, отображается в вашей системе как локальный, будто находится на диске. NFS работает по протоколу TCP . NFS весьма полезна при создании так называемых тонких клиентов (бездисковые рабочие станции, в которых система загружается по сети). Скорость передачи данных по NFS в 2 раза выше , чем через Samba, загрузка сети равномерная, а нагрузка на центральный процессор минимальная. Однако у NFS есть два недостатка. Первый - довольно фиговая поддержка в Windows (реализуется через подсистему UNIX и отдельное приложение). Второй - отсутствие шифрования (c версии NFSv4 , для шифрования может использоваться протокол Kerberos). Тем не менее, для Линуксовой сети, NFS - идеальный вариант.

Внимание : на обеих системах должны быть настроены статические IP адреса.В Windows кликнете правой кнопкой на значке сетевых подключений и выберите "Центр управления сетями и общим доступом" , далее "Изменение параметров адаптера" , выберите нужный адаптер (вашу сетевую карту) и зайдите в её свойства. Перейдите в пункт "Протокол Интернета версии 4" и выберите "Использовать следующий IP адрес" :

Если ваши компьютеры соединены напрямую, поле "Основной шлюз" можете оставить пустым. Если через роутер - укажите IP адрес роутера (тот, через который осуществляется доступ к его вэб-интерфейсу, обычно 192.168.0.1). В Linux аналогичную операцию можно провести в Network Manager (настройка сетевых подключений, вкладка IPv4):

Если вы используете фаерволл (брандмауэр Windows либо другое аналогичное ПО, а также iptables в Linux или фаерволл в вашем роутере), убедитесь что открыты нужные порты (Для SAMBA : 135, 139, 445/ TCP ; 137, 138 /UDP . Для NFS : 2049 /TCP ).

Linux => Windows

Представим ситуацию: у вас есть второй компьютер (или файловый сервер), под управлением Ubuntu 14.04 , на котором находится большая коллекция ваших видео, фото и так далее, расположенная на отдельном диске, который монтируется в /media/MyDATA . Этот диск нужно расшарить на компьютер под управлением Windows 8.1 . Первым делом, установим необходимые пакеты:

sudo apt install samba samba-common smbclient

Теперь необходимо сконфигурировать Самбу. У вас есть два пути: консольный и графический .

Консольный.

Открываем файл /etc/samba/smb.conf :

sudo nano /etc/samba/smb.conf

Полностью удаляем всё содержимое и вписываем такие настройки:


workgroup = WORKGROUP
netbios name = Ubuntu-PC
server string = Ubuntu PC
map to guest = bad user
guest account = nobody
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192 SO_SNDBUF=8192

#Следовать по симлинкам
unix extensions = no
wide links = yes
follow symlinks = yes

log level = 1

# UTF кодировка
unix charset = UTF-8
dos charset = cp1251
store dos attributes = yes

max log size = 10


path = /media/MyDATA
writeable = yes
available = yes
public = yes
guest ok = yes
force user = nobody
force group = nobody

В секции global описываются общие параметры: WORKGROUP - имя рабочей группы (должно быть одинаково для всех машин в локальной сети), Ubuntu-PC - имя компьютера, с которого расшариваются каталоги (укажите своё), вход без пароля, гостевой доступ и оптимизации для соединения. В секции MyDATA описывается доступ к диску, смонтированному в /media/MyDATA . При желании вы можете указать доступ к отдельным каталогам на этом диске, аналогичным способом. Сохраните файл и выполните команду:

testparm -s

Эта команда проверит конфиг на наличие ошибок и в случае их обнаружения, укажет где что исправить.

Теперь запустите сервер Samba:

sudo service start smbd

Графический.

Для настройки параметров Samba в графическом интерфейсе, существует 2 замечательные утилиты - system-config-samba (есть только в Ubuntu и производных) и gadmin-samba (есть везде). Эти утилиты представляют собой весь конфиг Самбы, выполненный в графическом режиме. Для Ubuntu установим первую утилиту:

sudo apt install syste-config-samba

Здесь всё предельно понятно и в настройках разберётся любой:)

Для других дистрибутивов (например Debian), установите пакет gadmin-samba:

sudo apt install gadmin-samba


После настройки, перезапустите демон Samba. Для Ubuntu:

sudo service restart smbd

sudo systemctl restart smbd.service

Также можно открыть доступ к нужному каталогу из файлового менеджера, открыв свойства каталога:


В Windows необходимо включить сетевое обнаружение. Для этого в центре управления сетями, зайдите в "Изменить дополнительные параметры общего доступа"


После этого, в сетевом окружении, должны появиться расшаренные каталоги.

Linux => Linux

А теперь представим, что у нас есть компьютер с Debian 8 (IP адрес 192.168.0.2 ), и ноутбук с Ubuntu 14.04 (IP адрес 192.168.0.3 ). С ноутбука нужно расшарить раздел диска, который смонтирован в /media/DATA (это раздел для торрентов и прочей файлопомойки). Для этого мы используем NFS :

sudo apt install nfs-kernel-server nfs-common rpcbind

Укажем что нужно расшаривать:

sudo nano /etc/exports

/media/DATA 192.168.0.0/255.255.255.0(rw,no_root_squash,no_subtree_check,crossmnt,fsid=0)


/media/DATA - то, что нужно расшарить.
192.168.0.0/255.255.255.0 - только компьютерам в этой подсети будет обеспечен доступ к общему ресурсу (можете указать конкретный IP адрес).
rw - поддержка чтения и записи.
no_root_squash - Позволяет пользователю root (на стороне клиента) иметь доверенный полный доступ к разделу.
no_subtree_check - Если монтируется только часть тома, то сервер будет выполнять проверку принадлежности файла запрошенного клиентом, именно к той части тома, которая примонтирована. Это замедляет передачу данных, по этому зачастую данная опция включена в список параметров.
crossmnt - Этот параметр похож на nohide он дает возможности видеть каталоги смонтированные на основной системе. Таким образом, когда дочерняя файловая система «B» установлена на основной «А», установив crossmnt на «А» имеет тот же эффект, что и установка «nohide» на B.
fsid=0 - NFS-сервер должен быть в состоянии идентифицировать каждую файловую систему, которую экспортирует. Для сервера NFSv4, существует выделенная файловая система, которая является корнем всей экспортируемой файловой системе. fsid = root или fsid = 0 означают одно и то же.

Применяем настройки:

sudo nano /etc/hosts.allow

Указываем доступ для всех машин, находящихся в подсети 192.168.0.0/255.255.255.0 :

nfsd: 192.168.0.0/255.255.255.0
rpcbind: 192.168.0.0/255.255.255.0
mountd: 192.168.0.0/255.255.255.0

Если вы указали в файле exports только IP адрес нужной машины, то соответственно, указывайте его.

Теперь запустите сервис:

sudo service nfs-kernel-server start

На компьютере установите следующие пакеты:

sudo apt install nfs-common rpcbind

Создайте директорию для монтирования общего ресурса:

sudo mkdir /media/Share

Монтирование вручную.

sudo mount -t nfs4 192.168.0.3:/ /media/Share

В результате всё содержимое диска /media/DATA (на ноутбуке) окажется доступным на компьютере в каталоге /media/Share , как если бы эти данные хранились на нём. Для того чтобы ресурс монтировался автоматически после загрузки системы, есть два способа.

Монтирование через fstab.

Файл /etc/fstab содержит в себе информацию о присутствующих файловых системах, точках монтирования и параметрах монтирования. Чтобы ресурс /media/DATA монтировался на ваш компьютер автоматически, добавьте в конец файла /etc/fstab следуюущую строку:

192.168.0.3:/ /media/Share nfs user,rw,noauto 0 0

Опция noauto запрещает автоматическое монтирование во время загрузки, так как сеть может быть недоступна в этот момент. Вместо этого, в файловом менеджере, в левой колонке появится пункт Share, кликнув на который, сетевой ресурс автоматически смонтируется. Однако при таком способе монтирования, есть пара существенных недостатков. Во первых, если в момент выключения компьютера, был открыт какой-либо файл, расположенный на сетевом ресурсе, компьютер откажется выключаться. Во-вторых, такая же ситуация произойдёт в случае пропажи связи между клиентом (компьютером) и сервером (ноутбуком). Для того, чтобы этих проблем не было, существует второй способ монтирования.

Монтирование с помощью AutoFS.

AutoFS - это пакет для обеспечения монтирования съёмных и сетевых накопителей, только при обращении к ним. При отсутствии обращения к сетевому ресурсу или съёмному устройству в течении определённого времени, он автоматически размонтируется, и мгновенно монтируется при первом же обращении к нему. Устанавливаем:

sudo apt install autofs

Настраиваем:

sudo nano /etc/auto.master

В конец файла добавляем строку:

/mnt /etc/auto.nfs --timeout=60

/mnt - каталог для монтирования сетевого ресурса.
/etc/auto.nfs - путь к файлу, в котором описаны параметры монтирования.
--timeout=60 - время в секундах, после которого произойдёт размонтирование ресурса (можете указать своё).

Сохраняем и переходим к следующему файлу:

sudo nano /etc/auto.nfs

Добавляем строку:

Share -fstype=nfs,rw,noatime,noexec,nosuid,tcp,async,rsize=32768,wsize=32768,intr,nolock,soft,noauto 192.168.0.3:/

Создадим директорию Share в каталоге /mnt , куда будет монтироваться ресурс:

sudo mkdir /mnt/Share

Вот и всё. Теперь в каталоге /mnt/Share , при первом же обращении к нему, будет появляться содержимое удалённого ресурса /media/DATA . Кнопка подключения сетевого диска появится в файловом менеджере.

Все манипуляции, по открытию общего доступа в локальной сети к папке, я проводил в Ubuntu 14.04 LTS.

  1. Для начала, щелкните правой кнопкой мыши на папке, которую вы хотите предоставить в сеть и выберите опцию «Общедоступная папка локальной сети». Если данная опция не доступна из контекстно меню по щелчку мышки, то Вам необходимо открыть Ubuntu Software Center — найти и устанавливать nautilus-share . После перезапустить Nautilus, командой:
    nautilus -q

    или просто выйти и зайти снова в систему.

  2. Когда откроется диалоговое окно «Общий доступ к папке», выберете «Опубликовать эту папку». Нажмите кнопку «Установить службу», если система этого попросит.
    После финиша процесса установки, придется снова выйти и зайти в систему.
  3. После всех инсталляций, по настройке папки для общего доступа, откроются дополнительные опции. В зависимости от ваших потребностей, Вы можете включить: «Разрешить другим пользователям изменять содержимое папки», «Гостевой доступ (для пользователей без локальной учетной записи)». На этом этапе можно применить все настройки. Данная папка будет доступна по локальной сети для всех пользователей .
  4. Но если вы хотите, чтобы клиентские машины, могли получать доступ к этой папке только по имени пользователя и паролю, то нужно выполнить следующие условия:
  • Открыть Ubuntu Software Center, найти и установить system-config-samba .
  • Запустить из меню, установленный графический инструмент настройки службы Samba.
  • Настройки -> Пользователи Samba.
  • Нажмите кнопку «Добавить пользователя».

Затем выберите имя пользователя, введите имя в «Имя пользователя Windows» и «Пароль Samba» -> OK.

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



 

Пожалуйста, поделитесь этим материалом в социальных сетях, если он оказался полезен!