Совместное использование файлов с рабочего стола Linux не должно быть проблемой
Linux создан для работы в сети, поэтому он обеспечивает высокий уровень безопасности и гибкости. Если у вас есть несколько компьютеров в одной сети, вам может потребоваться общий доступ к папкам с вашего рабочего стола Linux. Благодаря присущей операционной системе Linux гибкости это легко сделать с помощью Samba.
Samba – это реализация в Linux протокола Server Message Block (SMB), который используется для обмена файлами по сети. В операционной системе Windows это просто называется SMB. Samba – это бесплатное программное обеспечение с открытым исходным кодом, которое легко доступно для установки в большинстве стандартных репозиториев. Первоначально разработанная Эндрю Триджеллом, Samba предоставляет сервисы файлов и печати и может (начиная с версии 4 Samba) интегрироваться с доменом Microsoft Windows Server (либо в качестве контроллера домена, либо в качестве члена домена).
Для некоторых дистрибутивов Linux для настольных ПК настройка Samba происходит в нескольких шагах от успеха. Прежде чем мы рассмотрим, как это легко установить, давайте пойдем другим путем. Мы продемонстрируем это, поделившись файлами между Элементарной ОС и Ubuntu Desktop 18.04 .
Следует отметить, что на итерации Linux для Ubuntu Desktop вам не придется проходить ручной процесс установки Samba. Поскольку это не так для каждого рабочего стола Linux, давайте установим.
Войдите в свой рабочий стол Linux и откройте окно терминала.
-
Обновите и обновите с помощью команды sudo apt-get update && sudo apt-get upgrade -y .
-
После завершения обновления перезагрузите рабочий стол (что необходимо только при обновлении ядра).
Установите Samba с помощью команды sudo apt-get install samba -y .
-
Запустите и включите Samba с помощью команд:
sudo systemctl start smbd sudo systemctl enable smbd
-
Самба теперь готова к настройке.
Самба не так сложна в настройке. При использовании GNOME в Ubuntu Desktop вам не придется беспокоиться о ручной настройке Samba через файл конфигурации. Однако в Elementary OS (и других дистрибутивах) требуется настроить Samba из текстового файла конфигурации. Вот как:
-
Откройте окно терминала на рабочем столе.
-
Введите команду sudo nano /etc/samba/smb.conf .
Найдите строку workgroup = WORKGROUP и измените ее на нечто уникальное (или, если у вас уже есть рабочая группа в сети, измените ее на эту).
-
Ниже строки рабочей группы добавьте строку netbios name = NAME (где NAME – это имя или имя хоста вашего настольного компьютера).
-
Допустим, вы хотите открыть общий доступ к папке «Документы» в своем домашнем каталоге (назовем ее /home/jack/Documents , чтобы те, кто использует общий ресурс, могли создавать новые папки и файлы. Внизу В файл smb.conf добавьте следующее:
comment = NAME Documents путь =/home/jack/Documents доступный для записи = да просматриваемый = да гость в порядке = да создать маску = 0775
Где NAME – это то же имя, которое вы использовали для опции netbios. Сохраните и закройте файл smb.conf.
-
Далее вам нужно добавить своего пользователя в Samba. Это делается с помощью следующих двух команд:
sudo smbpasswd -a $ USERNAME sudo smbpasswd -e $ USERNAME
Сначала вам будет предложено ввести пароль sudo, а затем ввести и подтвердить новый пароль SMB для пользователя.
В приведенных выше командах опция -a добавляет пользователя, а опция -e включает пользователя.
-
Наконец, перезапустите Samba с помощью команды sudo systemctl restart smbd .
Добавление дополнительных акций
Если вы хотите добавить более одного общего ресурса, создайте новый под общим ресурсом , используя ту же модель конфигурации.
Теперь вы сможете подключаться к вновь созданному общему ресурсу Samba из любого файлового менеджера Desktop в вашей сети, который поддерживает протокол SMB (а это большинство из них). Как это сделать, будет зависеть от операционной системы, подключающейся к общему ресурсу Samba, и от используемого файлового менеджера.
Если вы выбираете Ubuntu Desktop, создать общий ресурс Samba гораздо проще. Мы будем использовать один и тот же каталог (/ home/jack/Documents). Для этого выполните следующие действия:
-
Откройте файловый менеджер.
Нажмите правой кнопкой мыши папку Документы и выберите в меню Общий ресурс локальной сети .
В появившемся окне установите флажок Открыть доступ к этой папке , а затем установите флажки для Разрешить другим создавать и удалять файлы в этой папке и Гостевой доступ. .
-
Введите описательный комментарий в разделе Комментарий (необязательно).
-
Нажмите Создать общий доступ .
При появлении запроса нажмите Добавить разрешения автоматически .
-
Теперь вы сможете получить доступ к/home/jack/Documents из любого настольного файлового менеджера в вашей сети.
Предоставление анонимного доступа к общему сетевому принтеру
Чтобы разрешить анонимный доступ к сетевому принтеру на вашем компьютере, нужно открыть свойства общего принтера в Панели управления (Панель управленияОборудование и звукУстройства и принтеры). На вкладке доступа отметьте опцию “Прорисовка задания печати на клиентских компьютерах
” (Render print jobs on client computers).
Затем на вкладке безопасность для группы “Все” отметить все галки.
После выполнения этих действий вы сможете подключаться к общей папке (\servernameshare) и принтеру на доменном компьютере с компьютеров рабочей группы без ввода имени пользователя и пароля, т.е. анонимно.
Подготовка
# cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
Сначала укажем в конфиге то, что мы планируем сделать, а потом уже создадим нужных пользователей, зададим права доступа на директории и пр. Почти все в этом файле как и в примере ниже, выдумывать или менять мало что нужно:
# nano /etc/samba/smb.conf workgroup = WORKGROUP server string = My Samba Server %v netbios name = centos security = user map to guest = bad user passdb backend = tdbsam guest account = samba_guest min protocol = SMB2 ntlm auth = ntlmv2-only dns proxy = no log file = /var/log/samba/log.%m max log size = 50 ; а вот это мы добавляем в конец конфига: comment = Common share path = /samba/share browsable =yes writable = yes guest ok = yes read only = no
WORKGROUP должно совпадать с названием рабочей группы компьютеров у вас дома;
— имя вашего сервера в сети. У меня это имя прописано в dns на роутере mikrotik, вы же при желании можете прописать centos в файл hosts на рабочих станциях в вашей сети. Главное, чтобы ваш сервер был доступен по имени centos (в этом примере). Если вы еще не заблокировали icmp, выполните команду `ping centos` с рабочей станции. Если разрешение имени не работает, у вас будет вариант использовать такую запись <ip-вашего-сервера> вместо centos.
— определяем имя пользователя (должен быть добавлен в систему), от имени которого будет осуществляться доступ к общим папкам. Этого пользователя мы создадим чуть позже.
— означает, что если был указан логин/пароль и такого логина не существует, то будет произведена попытка войти под учеткой гостя.
— не разрешать NTLMv1, использовать NTLMv2. С версии Samba 4.5 это дефолт.
Если вы сомневаетесь в значении любого параметра из тех, которые я привел выше, лучше ознакомьтесь с их смыслом на этом этапе, т.к. если что-то пойдет не так, лучше вам заранее понимать, что вы сделали. Тем более, что не так и много сделали. И вообще, я могу опечататься, вы можете что-то не скопировать и др.
Да, и еще, я сразу удалил в этом файле дефолтные группы , , , и . Особенно я не хотел бы расшаривать домашние директории пользователей системы.
Несмотря на то, что файл настройки samba один, сами шары могут быть раскиданы по дискам и директориям, при просмотре сетевые пользователи не смогут понять, что шара upload указывает в /var/www/htdocs/upload, а шара docs — на /samba/common_docs. Т.е. ваша фантазия в этом плане вам на руку. Вы можете настроить все так, что файлы, которые вы загрузили по локальной сети, будут доступны посетителям вашего сайта. Ну или что угодно еще можете придумать
Главное, обращайте внимание на права доступа к файлам и директориям, которые вы создаете!
Проверяем, все ли правильно отредактировали:
# testparm
Монтирование папки
Установление соединения к определенной папке, описанное в подразделах Соединение с сетевой папкой на стороне STB и Принудительное установление соединения к сетевой папке, сопровождается автоматическим монтированием папки на STB. Если определенная папка «примонтирована» на STB, ее ярлык появляется на верхнем уровне меню Home media.
Пользователь также может монтировать необходимую папку вручную (это также ведет к соединению с папкой ), для этой цели используется команда Подключить ресурс (англ. Mount share).
Для «размонтирования» папки в STB (это также ведет к разъединению папки от STB) используется команда Отключить ресурс (англ. Unmount share) .
Установите общие папки в Centos7 в VirtualBox
http-equiv=»Content-Type» content=»text/html;charset=UTF-8″>style=»clear:both;»>
Поскольку моя виртуальная машина не может добиться вставки в виртуальную машину с машины, я должен постучать в некоторые онлайн или книги, я должен иметь свою руку, я очень потратил, поэтому я свяжусь с виртуальной машиной Centos7 в VM VirtualBox. Общие папки, теперь запишите процесс настройки. (Последнее не только устанавливает общую папку, но и много новых функций)
Прежде всего, я получил путь в Интернете. Этот метод очень прост в использовании, согласно его шагам, я наконец-то установил успех (метод URL: https://blog.csdn.net/a962804835/article/details/72820355), но средний маленький эпизод.
При загрузке vboxguestadditions.iso, щелкните правой кнопкой мыши разгрузка, но выберите, чтобы загрузить на оптичельный диск (я чувствую то же самое).
Выполнить последнюю команду (mount -t vboxsf VMshare /mnt/myshareПроизошла ошибка во время. Следующим образом:
Решение:
Тогда общая папка установлена. В боковой стороне Windows моя общая папка G: / Share; в Linux, моя общая папка / mnt / myshare
И я обнаружил, что после VBBoxadditions.iso виртуальный оптический привод загружен в Linux, как показано ниже:
Я могу скопировать непосредственно с стороны Windows напрямую, и вставьте Ctrl + V в текстовом редакторе Linux! ! !
И мое окно Linux может изменить размер по желанию. Независимо от того, как вы настраиваете размер окна VirtualBox, окно CentOS фиксируется. Теперь размер окна CentOS может измениться с размером окна VirtualBox, он более удобным, это должно быть, это все пытается для Этот виртуальный диск.
Интеллектуальная рекомендация
1: Что такое среда Python? Для запуска программы на Python в системе, вам необходимо установить интерпретатор Python, чтобы объяснить программу Python, все мы знаем, что Python используется для создан…
Strange fuction Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 11746 Accepted Submission(s): 7841 Problem Description Now, here is a fuction: F(x…
1, установить CentOS 7 скачать монтаж Изменить статическое, переходное или гибкое имя хоста в Node1 Изменить / etc / sysconfig / network следующим образом: Изменение / etc / sysconfig / сетевые сценар…
Установить артефакт: https://www.lfd.uci.edu/~gohlke/pythonlibs/ Например, установка mysql-python напрямую через pip install mysql-python часто приводит к ошибкам. Найдите «mysql-python&qu…
Использование строк и классических примеров PAT Уровень B 1033 1. Найдите целевую строку в известной строке, найдите строку в строковой операции имеет в строковом классеstring.find()Метод предоставляе…
Вам также может понравиться
1. Установите svn на сервер Если он установлен, проверьте версию командой 2. Создайте склад Здесь мы создадим репозиторий с именем svn (здесь я назван в честь проекта компании) в / home. Все будущие к…
Вход Анализ с точки зрения использования, начиная с LivePagedListBuilder Пример кода создания LivePagedListBuilder: -> Введите метод build () Создать и вернуть вызов .getLiveData () в ComputableLiv…
Фон спроса При смене пароля пользователя некоторые должны ввести исходный пароль для проверки один раз, но обнаруживается, что шифрование пароля с использованием широ немного сложнее, и не так просто …
Node.js Версия: 12.15.0. Плагин установки и перезагрузить его. Конфигурация пользователя второй добавки и выводит результаты выполнения в терминале. Настройки -> Настрой…
Рисование мини-программы эффект js рисовать плакат…
Установка и запуск Samba
Установка выполняется из репозитория одной командой:
dnf install samba
Разрешаем автостарт сервиса и запускаем его:
systemctl enable smb –now
И проверим, что сервис запустился:
systemctl status smb
Проверяем, что сервер самба позволяет к себе подключиться. Для этого можно с компьютера обратиться к серверу по SMB, например, на компьютере с Windows это можно сделать из проводника, прописав путь к серверу с двух слэшей:
* в данном примере мы подключаемся к серверу Samba с IP-адресом 192.168.1.15.
Если мы настроили сервер правильно, система должна запросить пароль на подключение к Samba. Отказываемся его вводить. На данном этапе проверка закончена.
Как поделиться папками на компьютере с Ubuntu Linux
После запуска Samba вы можете легко обмениваться папками. Для этого сначала откройте Files.
Затем перейдите в папку, к которой вы хотите предоставить общий доступ в сети, и щелкните ее правой кнопкой мыши, чтобы открыть контекстное меню. В меню выберите Свойства.
В окне «Свойства» выберите общий сетевой ресурс и установите флажок «Поделиться этой папкой».
Измените имя общего доступа и добавьте комментарий, если хотите. Затем также установите или снимите флажок «Разрешить другим пользователям создавать и удалять файлы в этой папке» и «Гостевой доступ (для людей без учетной записи») в соответствии с тем, как вы хотите предоставить другим пользователям сети доступ к вашей общей папке.
Когда закончите, нажмите кнопку Create Share, чтобы начать общий доступ к этой папке в вашей сети, включая все компьютеры и устройства Windows, подключенные к ней.
Тестируем результаты
Как же это выглядит из Windows?
Войдем на наш компьютер с Ubuntu:
Вуаля! Папка music как на ладони.
Если вы не отмечали в настройках Ubuntu пункт «Гостевой доступ (для пользователей без локальной учетной записи)» для входа в нашу папку понадобится имя и пароль (у меня пользователь/пароль в Ubuntu admin/111):
Вы можете увидеть и такое сообщение, по умолчанию Windows XP считает что всюду доступ в качестве гостя, никакой безопасности, но не в нашем случае. Дополнительных настроек не понадобится, просто попробуйте войти в папку несколько раз подряд, и система все же предложит вам ввести ваши имя и пароль. С Vista и Seven таких проблем уже нет.
Если вы не открывали доступ на изменение файлов, помещать файлы в данный сетевой ресурс будет нельзя, на ваш вкус.
Можно пользоваться.
Права пользователя на папку Linux
Как я уже сказал, права делятся на три категории для владельца, для группы и для всех остальных. Таким образом, мы можем дать пользователю доступ к папке несколькими способами:
- Изменить права для всех — тогда все пользователи получат доступ к нашей папке, в том числе и нужный пользователь. Но, обычно, так никто не делает, потому что это небезопасно и в производственных системах важные данные могут попасть в чужие руки;
- Изменить владельца папки на нашего пользователя — по умолчанию владелец имеет полные права на папку, то есть запись и чтение. Если мы сделаем владельцем нашего пользователя, то он автоматически получит все права, а другие пользователи по-прежнему не смогут получить доступ к папке. Но такой вариант тоже не совсем правильный, потому что, обычно, у папки уже есть владелец и изменив владельца мы уберем у него доступ;
- Добавить к папке группу и добавить в нее пользователя — самый верный путь. Файл или папка может принадлежать определенной группе пользователей, но только одной, и мы можем установить для этой группы отличающиеся от владельца права. Но в группу можно добавить несколько пользователей, поэтому мы никого не оставляем без доступа. По умолчанию, для всех файлов устанавливается группа владельца, но это можно очень просто изменить.
Теперь давайте разберем как это реализуется на практике. Допустим, у нас есть папка /storage, владельцем которой является пользователь /root:
ls -l / | grep storage
У папки такие права, что записывать в нее данные может только root, а другие пользователи могут их только смотреть. Нам надо предоставить к ней доступ на запись и чтение пользователю sergiy. Сейчас у него такого доступа нет:
Давайте создадим группу storage и добавим в нее пользователя sergiy:
sudo groupadd storage sudo usermod -aG storage sergiy
Смотрим список групп нашего пользователя:
После добавления пользователя в группу нужно перелогиниться, чтобы система увидела это изменение. Затем меняем группу нашей папки на storage:
sudo chgrp storage /storage
Если нужно дать права на папку в Linux еще какому-нибудь пользователю, то достаточно добавить его в эту группу. Посмотрим список пользователей группы:
Теперь наша папка выглядит вот так:
ls -l / | grep storage
Осталось подправить права для группы, нужно дать разрешение на чтение и запись:
chmod g+rw /storage
Затем пользователь sergiy сможет записывать и читать файлы из этой папки, а все остальные пользователи только читать.
Пользователи и группы
ОС UNIX предлагает базовые средства защиты и совместного использования файлов на основе отслеживания пользователя и группы, владеющих файлом, трех уровней доступа (для
пользователя-владельца, для пользователей группы-владельца, и для всех остальных пользователей) и трех базовых прав доступа к файлам (на чтение, на запись и на выполнение).
Базовые средства защиты процессов основаны на отслеживании принадлежности процессов пользователям.
Для отслеживания владельцев процессов и файлов используются числовые идентификаторы. Идентификатор пользователя и группы — целое число (обычно) в диапазоне от 0 до 65535.
Присвоение уникального идентификатора пользователя выполняется при заведении системным администратором нового регистрационного имени. Среди пользователей системы выделяется один пользователь —
системный администратор или суперпользователь, обладающий всей полнотой прав на использование и конфигурирование системы. Это пользователь с
идентификатором 0 и регистрационным именем root.
Учетные записи пользователей, как и большинство другой информации о конфигурации системы UNIX, по традиции, представлена в виде текстовых файлов: /etc/passwd, /etc/group и /etc/shadow (в системах с
теневым хранением паролей).
Основные команды для работы с пользователями и группами (часть команд указанных ниже будет требовать sudo для выполнения):
В современных дистрибутивах Linux вместо root аккаунта для администрирования как правило используется утилита sudo (substitute user and do), позволяющая выполнить команду от лица пользователя
root.
Все настройки sudo находятся в файле /etc/sudoers. Здесь можно настроить очень много параметров, начиная от кому будет позволено выполнять команды от имени суперпользователя и
заканчивая ограничением набора доступных команд. Неправильный синтаксис, добавленный в этот файл, может полностью нарушить распределение прав между пользователями. Потому для работы с этим файлом
используется утилита visudo, которая открывает файл в обычном текстовом редакторе, но во время сохранения файла проверяет его синтаксис. Это позволяет избежать
ошибок в конфигурации.