16 июня 2024 г.
Получается, что у 10-й платформы АльтЛинукса репозитарий один на все дистрибутивы, только набор программного обеспечения разный. Т.е. можно на текущий дистрибутив спокойно установить не устанавливаемое по умолчанию ПО. Только нужно точно знать, что требуется. И документация тоже подходит. Подходящий пример: установка на сервер виртуализации не типичной для него роли файлового сервера. И документация по серверу виртуализации в этом деле не поможет. Зато отлично подойдет документация по Альт Линукс Сервер 10. На текущий момент актуальной версией является версия 10.2.
Читаем и делаем: https://docs.altlinux.org/ru-RU/alt-server/10.2/html/alt-server/protocol.html
Ниже подробно разберем настройку доступности по сети для новой папки "NET", созданной по пути "/var" как для клиентов на ОС Линукс, так и для клиентов на ОС Виндовс.
Считаем, что сервер виртуализации уже установлен. Если нет, то можно воспользоваться пошаговой инструкцией по установке: АльтЛинукс Сервер виртуализации10.1 (Proxmox)
Для клиентов Линукс необходимо установить, настроить и запустить NFS-сервер
Для клиентов Виндовс необходимо установить, настроить и запустить Samba-сервер (SMB, если кратко)
Обычно Линукс умеет подключаться к серверу Samba, но, считаю, что лучше использовать родной протокол.
Создаем папку /var/NET
Первым делом нужно создать папку, которую планируется сделать доступной по сети. В нашем случае требуются права суперпользователя. Поэтому запускаем терминал, пишем "su - " вводим пароль root и набираем команду "mc" для запуска "Midnight Commander":
![Осталось нажать ENTER Осталось нажать ENTER](https://habrastorage.org/getpro/habr/upload_files/158/244/5e2/1582445e2f7141df5f2e96bc52ccc52e.png)
В открывшемся миднайт командере переходим в папку /var и нажимаем F7 в появившемся окне вводим "NET" и нажимаем ENTER два раза. См. скрин ниже:
![Осталось только согласиться с выбором Осталось только согласиться с выбором](https://habrastorage.org/getpro/habr/upload_files/0d6/b9a/9f5/0d6b9a9f549e420720255a8cc884f77a.png)
И тут же выдаем на эту папку права всем через меню MC. На меню можно переключиться мышью или с помощью клавиши F9. "Файл" - > "Права (расширенные)" в русском mc или "File" -> "Advanced chown" в английском. См. скрин ниже:
![Где через меню mc можно поменять права на папку. Русский и английский интерфейс Где через меню mc можно поменять права на папку. Русский и английский интерфейс](https://habrastorage.org/getpro/habr/upload_files/6b8/094/1d0/6b80941d00b740d752fb298281cdb223.png)
Выставляем в "другие" значение "rwx" и "установить" ("other" в "rwx", и "Set" для английского):
![Выдаем всем права на папку Выдаем всем права на папку](https://habrastorage.org/getpro/habr/upload_files/a3d/8fd/3e6/a3d8fd3e6d5fea2085250e19948bccf1.png)
Важно это не забыть.
Hidden text
Так, создав с правами суперпользователя папку и настроив сервисы сетевого доступа к файлам, я довольно долго не мог понять, почему из сети регистрируюсь, в папку захожу, а ничего записать в неё не получается. Получаю ошибку о недостаточности прав. Пытался и из Линукс и из Виндовс. Искал проблему в файлах конфигурации сервисов NFS и SMB. А, оказывается, нет прав на папку в локальной файловой системе.
Знатокам командной строки, конечно, создание папки и выдачу на неё прав сделать быстрее.
Нажав CTRL+o можно временно скрыть панели mc, повторное нажатие CTRL+o вернет панели. Клавиша F10 закроет командер совсем. Для его запуска надо будет набирать mc.
NFS
Переходим в терминал и под суперпользователем устанавливаем пакет nfs-server:
apt-get install nfs-server
После установки nfs-сервера следует отредактировать файл /etc/exports. В mc есть встроенный редактор, с помощью которого и можно внести изменения в файл. Для этого нужно переместить курсор на нужный файл и нажать клавишу F4. Для вставки можно использовать комбинацию клавишу SHIFT+Insert (Ctrl+C - в нем не работает)
Моё содержимое файла /etc/exports:
# See also /etc/sysconfig/rpcbind (control rpcbind).
/var/NET 192.168.1.0/24(rw,subtree_check)
Где первая строка - комментарий, т.к. начинается с символа "#". Во второй строке указано, что папка /var/NET для всех подключений из подсети 192.168.1. доступна для всего набора манипуляций с файлами (чтение, запись, выполнение)
Теперь дадим команду запустить NFS-сервер и включим его по умолчанию:
systemctl enable --now nfs
SMB
Переходим в терминал и под суперпользователем устанавливаем пакет samba:
apt-get install samba
После установки следует отредактировать файл /etc/samba/smb.conf. Я добавил в него раздел "NET" и предоставил доступ пользователю "vvk". В файле это выглядит следующим образом:
[NET]
comment = NET
path = /var/NET
public = yes
browseable = yes
read only = no
writable = yes
valid users = vvk
quest ok = no
Также есть тут заморочки с пользователями. Лучше официальной документации не скажешь: Samba использует отдельную от системной базу данных пользователей. Для возможности доступа пользователя к папке (если запрещен гостевой доступ) необходимо внести его в базу данных Samba и установить пароль для доступа к общим ресурсам (он может совпадать с основным паролем пользователя). Следует учитывать, что в базу данных Samba можно добавлять только тех пользователей, которые уже есть в системе. Добавить пользователя в базу данных Samba можно, выполнив команду (должен быть установлен пакет samba-common-client): "smbpasswd -a <имя_пользователя>"
Потому выполняю команду для пользователя "vvk" и дважды указываю пароль в точности такой же, как и при входе в систему.
smbpasswd -a vvk
Система должна ответить, что пользователь добавлен. См.скрин ниже:
![Пользователь в SMB добавлен Пользователь в SMB добавлен](https://habrastorage.org/getpro/habr/upload_files/86b/5b4/c85/86b5b4c85fe2dec2c7395f8c298b270d.png)
После чего дадим команду запустить SMB-сервер и включить его по умолчанию:
systemctl enable --now smb
Действия на госте с ОС "АльтЛинукс Рабочая станция К" 10-й платформы.
Затем на госте с ОС Альт линукс в консоле под правами root делаем для проверки что всё работает:
создать точку монтирования:
mkdir /mnt/NET
примонтировать файловую систему:
mount -t nfs 192.168.1.50:/var/NET /mnt/NET
проверить наличие файлов в каталоге /mnt/NET
ls -al /mnt/NET
Для автоматического монтирования к NFS-серверу при загрузке необходимо добавить следующую строку в файл /etc/fstab
:
192.168.1.50:/var/NET /mnt/NET nfs intr,soft,nolock,_netdev,x-systemd.automount 0 0
Теперь при регистрации пользователя в виртуальной машине "АльтЛинукс Рабочая станция К" сетевая папка будет примонтирована и будет выглядеть примерно следующим образом:
![Файловый менеджер с примонтированной сетевой папкой по протоколу NFS Файловый менеджер с примонтированной сетевой папкой по протоколу NFS](https://habrastorage.org/getpro/habr/upload_files/c45/eba/599/c45eba599c0113548f883daf476921cb.png)
Действия на госте с ОС "Windows 10 Pro"
Открываем проводник и в строке адреса вводим полный путь до вашей папке. В моем случае это \\192.168.1.60\NET\ и нажимаем ENTER. В появившемся окне вводим имя пользователя и пароль. При необходимости выставляем флажок "Запомнить учетные данные" и нажимаем кнопку "OK". См. скрин ниже:
![](https://habrastorage.org/getpro/habr/upload_files/3d6/fbb/b12/3d6fbbb12450371bae6778e8ad04bd33.png)
После успешной регистрации сетевая папка добавиться слева в группе "Сеть". Отсюда через меню по правой кнопке можно подключить её как сетевой диск:
![Подключаем как сетевой диск. Подключаем как сетевой диск.](https://habrastorage.org/getpro/habr/upload_files/fef/82a/b7b/fef82ab7bfd5599cae43a9438a29a527.png)
В появившемся окне выбираем букву диска и, при необходимости, выставляем флажок, чтобы этот диск всегда был:
![Подключаем как диск "Z" при каждом входе в Windows Подключаем как диск "Z" при каждом входе в Windows](https://habrastorage.org/getpro/habr/upload_files/ea6/36c/04b/ea636c04b75f16b40fc85ad0c7315c84.png)
Как-то так.