как создать локальную сеть в linux
Настройка сети в Linux
Перед тем, как приступать к настройке сетевого подключения в Линукс, надо начать с того, что посмотреть — какие настройки сети используются сейчас. Для этого надо воспользоваться командой ifconfig. В информационном режиме она доступна и без прав ROOT, хотя для её полноценного использования лучше получить привилегии суперпользователя, введя команду sudo ifconfig. Результатом её работы будет список имеющихся в системе сетевых подключений и их параметров.
В разных версиях Линукс имя сетевого интерфейса может быть сокращением от Ethernet — eth0, eth1, eth2 и т.п.
Информацию о текущих подключения узнали, теперь рассмотрим настройку локальной сети в Linux. Сделать это можно тремя способами:
1 — Через графическую оболочку
2 — через команду ifconfig или инструмент Network Manager
3 — через конфигурационные файлы сетевого сервиса Netork или Networking.
На мой взгляд, последний способ — самый удобный и надёжный, а значит — правильный. Чтобы настроить сеть в Линукс надо открыть файл, содержащий конфиг интерфейса. Тут всё зависит от того, какой дистрибутив Linux используется.
Вариант 1. В дистрибутивах, основанных на Debian (Ubuntu, Kubuntu и т.п.)
Файл с параметрами сетевого подключения:
Для того, чтобы изменить в linux настройки сети, файл его надо с правами root любым текстовым редактором. Например, через nano:
Для автоматического получения адресов от DHCP-сервера надо пописать следующее:
Если адрес надо прописать статически, то указываем следующее:
В этом конфиге рассмотрен пример обычной домашней сети, где адрес компьютера будет 192.168.1.2, адрес шлюза и DNS-сервера (их фукнции обычно выполняет wifi-роутер)- 192.168.1.1.
Вариант 2. RedHat-based дистрибутивы (Fedora, OpenSuse, CentOS)
Файл с настройками сети Linux:
Открываем его так же через nano или vim:
В случае автоматического получения настроек от DHCP-сервера:
IP-адреса DNS-серверов в этом случае прописываются в файле
вот пример для публичных DNS-серверов от Google:
Настройка сети в Линукс завершена. Остаётся только перезапустить сеть командой:
В качестве постскриптума расскажу как включить и выключить сеть в Linux. Делается это через всё ту же команду ifconfig. Выключить сетевую карту eth0:
Включить сетевую плату в Линуксе обратно:
Полностью остановить работу всех сетевых интерфейсов.
Включить всё назад:
Интересное по теме:
5 thoughts on “ Настройка сети в Linux ”
Не настраивается, Линукс минт 18.3 в чём засада?
enp2s0 Link encap:Ethernet HWaddr 00:16:d3:48:1d:91
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
lo Link encap:Локальная петля (Loopback)
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:886 errors:0 dropped:0 overruns:0 frame:0
TX packets:886 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:82987 (82.9 KB) TX bytes:82987 (82.9 KB)
wlp5s0 Link encap:Ethernet HWaddr 00:13:02:70:76:47
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
wlxf46d048b327f Link encap:Ethernet HWaddr f4:6d:04:8b:32:7f
inet addr:192.168.1.72 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::99f4:be38:665a:3b0d/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:39068 errors:0 dropped:2423 overruns:0 frame:0
TX packets:24703 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:48902729 (48.9 MB) TX bytes:3037797 (3.0 MB)
Какие настройки Вы делаете — опишите подробно!
Сергей, может вы мне ответите? В общем, настраивал подключение к сети через «Менеджер сети», встроенный по умолчанию в Linux mint 18.3 Cinnamon. Настройки ставил следующие: IPv6 совсем выключил (Method: ignore). IPv4 Method:manual; Address:192.168.1.250; Netmask:250.250.250.0; Gateway 192.168.1.1; DNS servers 8.8.8.8
(Не понял где программа сохраняет эти настройки. В файле interfaces, находящемуся по адресу Файловая система/etc/network/interfaces ничего не поменялось.) IP адрес роутера определил командой ip route show. В качестве роутера стоит Asus RTN-10U. Wi-fi свисток Asus N13. Вот данные lsusb (0b05:17ab ASUSTek Computer, Inc. USB-N13 802.11n Network Adapter (rev. B1) [Realtek RTL8192CU]).
Сеть распозналась корректно и работает, но через 5 минут пропадает. Т.е. Менеджер сетей утверждает, что сеть есть и подключение хорошее, но браузер Firefox не может найти соединение. Проверил соединение с роутером коммандой Ping 192.168.1.1. Соединение отсутствует. Выключил сеть и включил через Менеджер сетей и сразу запустил проверку соединения Ping 192.168.1.1. Лазил в Интернете минут 15. Сеть держится. Возникает предположение, что Linux в определённый момент считает, что устройство бездействует и отключает сеть, если я его не спамлю ping’ом. Как это можно отрегулировать или решения нет и придётся спамить ping?
Михаил — Здравствуйте. начните с того, что укажите правильно маску — 255.255.255.0. Та, что Вы указали — 250.250.250.0 — неверная.
Настройка локальной сети в Linux
Для систематизирования информации по настройке сети в ОС Linux было решено написать эту заметку. Здесь в доступной форме описан процесс настройки сетевого интерфейса на примере ОС Ubuntu. Также данное руководство поможет «поднять» локальную сеть и на любом другом дистрибутиве Linux.
Содержание
Для просмотра текущих параметров сети и состояния сетевых интерфейсов в ОС Линукс существует команда:
Для просмотра абсолютно всех сетевых интерфейсов запускаем команду с ключом -a:
Из приведенного примера видно, что на компьютере используется два сетевых интерфейса: eth0 и lo.
Интерфейс lo — это локальная петля, которая имеет IP-адрес 127.0.0.1 и предназначена для сетевого доступа к своему же компьютеру. Далее этот интерфейс рассматриваться не будет, так как для эффективной работы не требует дополнительной настройки.
Для просмотра типа соединения, скорости и поддерживаемых параметров сетевым интерфейсом eth0 набираем команду:
Из вывода видно, что сетевой интерфейс eth0 работает на скорости 100Мб/с с включенным полным дуплексом (Full Duplex). Полный дуплекс от полудуплекса (Half Duplex) отличается тем, что первый обеспечивает передачу данных в обе стороны одновременно, а второй осуществляет передачу входящих и исходящих данных поочередно.
Команду легко запомнить, так как после названия самой команды идет имя интерфейса и после действие, которое нужно произвести над ним (down или up).
Для возобновления работы сетевого интерфейса eth0:
Эта строка запускает bash-скрипт networking, перезапускающий сетевые интерфейсы системы.
Так же по аналогии производится остановка всех интерфейсов:
Настроить сеть можно одним из вышеприведенных способов. Эти два способа абсолютно взаимозаменяемые. Кому как привычнее.
Чтобы настроить сетевой интерфейс, не влезая в дебри конфигурационного файла, нужно воспользоваться специальными командами.
Чтобы задать основной IP-адрес и маску сети для интерфейса eth0:
Редактировать будем конфигурационный файл /etc/network/interfaces. Чтобы вывести на экран содержимое конфига, набираем команду:
Если локальная сеть, к которой подключаемся, подразумевает ручную настройку IP-адреса, то содержимое конфигурационного файла должно выглядеть примерно так:
Первые строки оставляем как есть, так как их дополнительная настройка не требуется.
Строка auto eth0 говорит, что сетевой интерфейс eth0 должен стартовать при загрузке ОС.
Вторая строка iface eth0 inet static говорит, что сетевому интерфейсу eth0 IP-адрес задается вручную.
Строка address 192.168.1.18 говорит, что сетевому интерфейсу eth0 назначен IP-адрес 192.168.1.18 (этот сетевой адрес взят для примера и на его месте может быть любой другой).
Строка netmask 255.255.0.0 говорит, что маска сети является 255.255.0.0.
Последняя строчка gateway 192.168.1.253 показывает, что сетевым шлюзом является компьютер с IP-адресом 192.168.1.253. Эта строка может отсутствовать, так как ее наличие в конфигурационном файле зависит от параметров локальной сети, к которой подключается настраиваемый компьютер.
Если в подключаемой локальной сети используется автоматическая раздача сетевых настроек DHCP-сервером, то конфигурационный файл /etc/network/interfaces должен быть приведен к виду:
Настройка DNS-сервера.
Так же во многих случаях для правильной работы локальной сети на настраиваемом компьютере потребуется ввести IP-адрес используемого DNS-сервера.
Для этого нужно открыть конфигурационный файл командой:
Строка nameserver 192.168.1.253 говорит, что в качестве DNS-сервера используется компьютер с IP-адресом 192.168.1.253.
Смена MAC-адреса сетевой карты.
Чтобы временно поменять MAC-адрес сетевой карты eth0 нужно воспользоваться командой:
Для смена MAC-адреса навсегда нужно в конфигурационном файле /etc/network/interfaces к настройкам сетевого интерфейса добавить строку с новым MAC-адресом:
Смены скорости сетевого интерфейса.
огромное спасибо за статью! в линукс недавно, оч помогло, не подскажете, если сетевых в компьютере две, у одной сетевой dns-server 192.168.0.9, а у другой например 192.168.1.9, корректно будет в одном файле resolv.conf написать
nameserver 192.168.0.9
nameserver 192.168.1.9
Поймут сетевухи кому какой dns?
И можно ли в линукс назначить сетевой карточке какое-то имя, например eth0 это loc, а eth1 это prov?
1. DNS можно указать оба, но сетевым следует указать маски сети 255.255.255.0. Тогда они будут ходить по своим DNS `ам.
2. Про названия сетевых не знаю. Думаю, что можно, это же Linux!!
Нужно будет добавить в статью, спасибо))
Думаю стоит попровить строку: sudo ifconfig eth0:0 10.10.0.1 netmask 255.255.255.0
у алиаса не может быть маски /24 (255.255.255.0), это не ошибка, т.к. в любом случае интерфейсу eth0:0 будет присвоена маска /32 (255.255.255.255)
В вашем случае будет: sudo ifconfig eth0:0 10.10.0.1/32
gpns: Думаю стоит попровить строку: sudo ifconfig eth0:0 10.10.0.1 netmask 255.255.255.0 у алиаса не может быть маски /24 (255.255.255.0), это не ошибка, т.к. в любом случае интерфейсу eth0:0 будет присвоена маска /32 (255.255.255.255) В вашем случае будет: sudo ifconfig eth0:0 10.10.0.1/32
Черт, Вы перевернули все мое сознание. Придется переделывать настройки сетевого интерфейса на компьютере, которые работали уже почти 2 года.
Почему тогда командой ifconfig показывается та маска, которую я установил?
Простым языком! Ясно и понятно! Огромное спасибо!
P.S. Только в листингах ввода команд хорошо бы шрифт сделать такой, где 0 от О визуально отличается.
GydruS: P.S. Только в листингах ввода команд хорошо бы шрифт сделать такой, где 0 от О визуально отличается.
Спасибо, приму к сведенью. Хотя вроде отличие есть, в точке )
спасибо за ваш сайт. мне нравится! все доходчиво и понятно
у меня к вам такой вопрос. если можно подскажите пожалуйста как настроить сеть чтобы работала локалка и DSL соединение одновременно.
не могу понять как это сделать.
andrey: спасибо за ваш сайт. мне нравится! все доходчиво и понятно у меня к вам такой вопрос. если можно подскажите пожалуйста как настроить сеть чтобы работала локалка и DSL соединение одновременно.
соединение самое обычное – городская сеть
компьютер подключен через сетевую карту
выход в интернет подключается через соединение DSL
andrey: соединение самое обычное – городская сеть компьютер подключен через сетевую карту выход в интернет подключается через соединение DSL
спасибо. буду искать!
К словам о DSL через локальную сеть: очень много парился, перерыл кучу манов (у меня Debian Lenny) и чтобы избавить других людей от тех же граблей скажу – pppoeconf помогает не всем, у меня например, инет появлялся на пару секунд и пропадал чудным образом. Конфиги, логи не помогли. Но спустя две недели и нару клочьев вырванных волос, наткнулся на простенькую команду ifconfig ppp0 mtu 1372. Надеюсь комуто это поможет. Выговорился, аж легче стало)))
помогите пожалуйста.
только начинаю осваивать Linux.
стоит на машине Ubuntu 10.10. подключено 2 сетевые карты. по одной виндовая сеть с доменом. во второй воткнут адсл модем с подключением PPPoE. как сделать так, чтоб и в сети работать можно было и в инете?! по отдельности все работает норм, а вместе только виндовая сеть.
виндовая сеть – eth0, модем – eth1
молодец автор!!огромный респект!
а я вот бьюсь…какой Lin выбрать для конторы которая ранее в глаза его не видела….а виндовую сеть суся 12.1 вскрыл за 5 мин))))))))
Я тоже написал подробную заметку про настройка сети, но она больше ориентированная на debian – based дистрибутивы http://www.artcom-ufa.ru/posts/2011/07/20/nastroika-seti-v-linux
Добрый день,у меня в папке etc нет ни папки network,ни папки net,стоит centos 5.7,что делать подскажите
Артем: 2 сетевые карты. по одной виндовая сеть с доменом. во второй воткнут адсл модем с подключением PPPoE. как сделать так, чтоб и в сети работать можно было и в инете?!
Вполне годная статья. Спасибо огромное
Настройка локальной сети в Linux
Для систематизирования информации по настройке сети в ОС Linux было решено написать эту заметку. Здесь в доступной форме описан процесс настройки сетевого интерфейса на примере ОС Ubuntu. Также данное руководство поможет «поднять» локальную сеть и на любом другом дистрибутиве Linux.
Содержание
Для просмотра текущих параметров сети и состояния сетевых интерфейсов в ОС Линукс существует команда:
Для просмотра абсолютно всех сетевых интерфейсов запускаем команду с ключом -a:
Из приведенного примера видно, что на компьютере используется два сетевых интерфейса: eth0 и lo.
Интерфейс lo — это локальная петля, которая имеет IP-адрес 127.0.0.1 и предназначена для сетевого доступа к своему же компьютеру. Далее этот интерфейс рассматриваться не будет, так как для эффективной работы не требует дополнительной настройки.
Для просмотра типа соединения, скорости и поддерживаемых параметров сетевым интерфейсом eth0 набираем команду:
Из вывода видно, что сетевой интерфейс eth0 работает на скорости 100Мб/с с включенным полным дуплексом (Full Duplex). Полный дуплекс от полудуплекса (Half Duplex) отличается тем, что первый обеспечивает передачу данных в обе стороны одновременно, а второй осуществляет передачу входящих и исходящих данных поочередно.
Команду легко запомнить, так как после названия самой команды идет имя интерфейса и после действие, которое нужно произвести над ним (down или up).
Для возобновления работы сетевого интерфейса eth0:
Эта строка запускает bash-скрипт networking, перезапускающий сетевые интерфейсы системы.
Так же по аналогии производится остановка всех интерфейсов:
Настроить сеть можно одним из вышеприведенных способов. Эти два способа абсолютно взаимозаменяемые. Кому как привычнее.
Чтобы настроить сетевой интерфейс, не влезая в дебри конфигурационного файла, нужно воспользоваться специальными командами.
Чтобы задать основной IP-адрес и маску сети для интерфейса eth0:
Редактировать будем конфигурационный файл /etc/network/interfaces. Чтобы вывести на экран содержимое конфига, набираем команду:
Если локальная сеть, к которой подключаемся, подразумевает ручную настройку IP-адреса, то содержимое конфигурационного файла должно выглядеть примерно так:
Первые строки оставляем как есть, так как их дополнительная настройка не требуется.
Строка auto eth0 говорит, что сетевой интерфейс eth0 должен стартовать при загрузке ОС.
Вторая строка iface eth0 inet static говорит, что сетевому интерфейсу eth0 IP-адрес задается вручную.
Строка address 192.168.1.18 говорит, что сетевому интерфейсу eth0 назначен IP-адрес 192.168.1.18 (этот сетевой адрес взят для примера и на его месте может быть любой другой).
Строка netmask 255.255.0.0 говорит, что маска сети является 255.255.0.0.
Последняя строчка gateway 192.168.1.253 показывает, что сетевым шлюзом является компьютер с IP-адресом 192.168.1.253. Эта строка может отсутствовать, так как ее наличие в конфигурационном файле зависит от параметров локальной сети, к которой подключается настраиваемый компьютер.
Если в подключаемой локальной сети используется автоматическая раздача сетевых настроек DHCP-сервером, то конфигурационный файл /etc/network/interfaces должен быть приведен к виду:
Настройка DNS-сервера.
Так же во многих случаях для правильной работы локальной сети на настраиваемом компьютере потребуется ввести IP-адрес используемого DNS-сервера.
Для этого нужно открыть конфигурационный файл командой:
Строка nameserver 192.168.1.253 говорит, что в качестве DNS-сервера используется компьютер с IP-адресом 192.168.1.253.
Смена MAC-адреса сетевой карты.
Чтобы временно поменять MAC-адрес сетевой карты eth0 нужно воспользоваться командой:
Для смена MAC-адреса навсегда нужно в конфигурационном файле /etc/network/interfaces к настройкам сетевого интерфейса добавить строку с новым MAC-адресом:
Смены скорости сетевого интерфейса.
огромное спасибо за статью! в линукс недавно, оч помогло, не подскажете, если сетевых в компьютере две, у одной сетевой dns-server 192.168.0.9, а у другой например 192.168.1.9, корректно будет в одном файле resolv.conf написать
nameserver 192.168.0.9
nameserver 192.168.1.9
Поймут сетевухи кому какой dns?
И можно ли в линукс назначить сетевой карточке какое-то имя, например eth0 это loc, а eth1 это prov?
1. DNS можно указать оба, но сетевым следует указать маски сети 255.255.255.0. Тогда они будут ходить по своим DNS `ам.
2. Про названия сетевых не знаю. Думаю, что можно, это же Linux!!
Нужно будет добавить в статью, спасибо))
Думаю стоит попровить строку: sudo ifconfig eth0:0 10.10.0.1 netmask 255.255.255.0
у алиаса не может быть маски /24 (255.255.255.0), это не ошибка, т.к. в любом случае интерфейсу eth0:0 будет присвоена маска /32 (255.255.255.255)
В вашем случае будет: sudo ifconfig eth0:0 10.10.0.1/32
gpns: Думаю стоит попровить строку: sudo ifconfig eth0:0 10.10.0.1 netmask 255.255.255.0 у алиаса не может быть маски /24 (255.255.255.0), это не ошибка, т.к. в любом случае интерфейсу eth0:0 будет присвоена маска /32 (255.255.255.255) В вашем случае будет: sudo ifconfig eth0:0 10.10.0.1/32
Черт, Вы перевернули все мое сознание. Придется переделывать настройки сетевого интерфейса на компьютере, которые работали уже почти 2 года.
Почему тогда командой ifconfig показывается та маска, которую я установил?
Простым языком! Ясно и понятно! Огромное спасибо!
P.S. Только в листингах ввода команд хорошо бы шрифт сделать такой, где 0 от О визуально отличается.
GydruS: P.S. Только в листингах ввода команд хорошо бы шрифт сделать такой, где 0 от О визуально отличается.
Спасибо, приму к сведенью. Хотя вроде отличие есть, в точке )
спасибо за ваш сайт. мне нравится! все доходчиво и понятно
у меня к вам такой вопрос. если можно подскажите пожалуйста как настроить сеть чтобы работала локалка и DSL соединение одновременно.
не могу понять как это сделать.
andrey: спасибо за ваш сайт. мне нравится! все доходчиво и понятно у меня к вам такой вопрос. если можно подскажите пожалуйста как настроить сеть чтобы работала локалка и DSL соединение одновременно.
соединение самое обычное – городская сеть
компьютер подключен через сетевую карту
выход в интернет подключается через соединение DSL
andrey: соединение самое обычное – городская сеть компьютер подключен через сетевую карту выход в интернет подключается через соединение DSL
спасибо. буду искать!
К словам о DSL через локальную сеть: очень много парился, перерыл кучу манов (у меня Debian Lenny) и чтобы избавить других людей от тех же граблей скажу – pppoeconf помогает не всем, у меня например, инет появлялся на пару секунд и пропадал чудным образом. Конфиги, логи не помогли. Но спустя две недели и нару клочьев вырванных волос, наткнулся на простенькую команду ifconfig ppp0 mtu 1372. Надеюсь комуто это поможет. Выговорился, аж легче стало)))
помогите пожалуйста.
только начинаю осваивать Linux.
стоит на машине Ubuntu 10.10. подключено 2 сетевые карты. по одной виндовая сеть с доменом. во второй воткнут адсл модем с подключением PPPoE. как сделать так, чтоб и в сети работать можно было и в инете?! по отдельности все работает норм, а вместе только виндовая сеть.
виндовая сеть – eth0, модем – eth1
молодец автор!!огромный респект!
а я вот бьюсь…какой Lin выбрать для конторы которая ранее в глаза его не видела….а виндовую сеть суся 12.1 вскрыл за 5 мин))))))))
Я тоже написал подробную заметку про настройка сети, но она больше ориентированная на debian – based дистрибутивы http://www.artcom-ufa.ru/posts/2011/07/20/nastroika-seti-v-linux
Добрый день,у меня в папке etc нет ни папки network,ни папки net,стоит centos 5.7,что делать подскажите
Артем: 2 сетевые карты. по одной виндовая сеть с доменом. во второй воткнут адсл модем с подключением PPPoE. как сделать так, чтоб и в сети работать можно было и в инете?!
Вполне годная статья. Спасибо огромное
Блог начинающего линуксоида.
советы, руководства, инструкции.
Страницы
воскресенье, 4 октября 2015 г.
Очень часто бывает так, что в доме находятся компьютеры с разными операционными системами. И нужно организовать между ними локальную сеть, обеспечить общий доступ к файлам. Сделать это очень просто.
Общие сведения.
Внимание: на обеих системах должны быть настроены статические IP адреса.В Windows кликнете правой кнопкой на значке сетевых подключений и выберите «Центр управления сетями и общим доступом», далее «Изменение параметров адаптера», выберите нужный адаптер (вашу сетевую карту) и зайдите в её свойства. Перейдите в пункт «Протокол Интернета версии 4» и выберите «Использовать следующий IP адрес»:
Если вы используете фаерволл (брандмауэр 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
Полностью удаляем всё содержимое и вписываем такие настройки:
[global]
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
[MyDATA]
path = /media/MyDATA
writeable = yes
available = yes
public = yes
guest ok = yes
force user = nobody
force group = nobody
Эта команда проверит конфиг на наличие ошибок и в случае их обнаружения, укажет где что исправить.
Теперь запустите сервер Samba:
sudo service start smbd
Графический.
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
Далее нужно указать, каким хостам в сети разрешено иметь доступ к серверу:
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
Монтирование вручную.
В результате всё содержимое диска /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.
sudo apt install autofs
sudo nano /etc/auto.master
В конец файла добавляем строку:
Сохраняем и переходим к следующему файлу:
sudo nano /etc/auto.nfs
Создадим директорию Share в каталоге /mnt, куда будет монтироваться ресурс:
sudo mkdir /mnt/Share
Вот и всё. Теперь в каталоге /mnt/Share, при первом же обращении к нему, будет появляться содержимое удалённого ресурса /media/DATA. Кнопка подключения сетевого диска появится в файловом менеджере.