Поделитесь папкой НЕ в домашнем каталоге

Вопрос или проблема

Этот пост уже шесть дней без ответа. Очевидно, что такая совместная работа возможна, и я понимаю, что пропускаю что-то очевидное, но что?

Настраиваю ли я общую папку только в Samba и не использую графический интерфейс Nautilus? Я пробовал оба способа безрезультатно.

Я легко могу создать общую папку в своем домашнем каталоге, используя графический интерфейс Nautilus. Могу читать и записывать с Windows.

Разрешения на общей папке были установлены как 775, так и 777 без успеха.

Я проверил, и пользователи samba соответствуют пользователям Ubuntu – пользователи были перенесены в samba.

Я хочу настроить защищенную паролем папку, но на данный момент я просто пытаюсь заставить общую папку работать.

Я потратил часы на это, что сделало меня более знакомым с Ubuntu, но не приблизило к решению этой проблемы.


Я пытаюсь поделиться папкой вне домашнего каталога.

Сервер работает на Ubuntu 16, клиент = Win7

Я легко могу делиться папками в своем домашнем каталоге.

Я добавлял и удалял Samba, а затем снова добавлял его через экран Nautilus

Владелец папки – это я, группа – sambashare. Разрешения – drwxrwxr-x

Папка должна быть общей для всех в соответствии с настройками локальной сети. Я создал пользователей Samba и пароли без успеха. Папка была создана как root на втором жестком диске (названном M1), а затем была воссоздана папка под названием Data. Папка Data была поделена, как указано выше.

Windows машина сейчас говорит “нет разрешения” для доступа к папке.

Обмен папками Расположенными Вне домашней папки

Чтобы поделиться папкой внутри папки “home”, вам просто нужно использовать опцию меню общего доступа в файловом менеджере системы, но если папка находится вне папки “home” (и, возможно, на другом разделе), вам нужно настроить общий доступ с помощью скрипта.

Пример. Если вы хотите создать общий доступ со следующими свойствами:

ShareNAME: "myShareName"
 PathNAME: "/media/myUserName/myPartitionName/mySharedFolder"
     User: "myUserName"

Для общего доступа с включенным Гостевым доступом (пароль не требуется):

  • 1.- Откройте smb.conf:

    ~$ sudo gedit /etc/samba/smb.conf
    
  • 2.- Добавьте в конце (и сохраните) следующее:

    [myShareName]
    path = /media/myUserName/myPartitionName/mySharedFolder
    read only = no
    force user = myUserName
    guest ok = yes
    
  • 3.- Перезапустите smb демон:

    ~$ sudo service smbd restart
    
  • 4.- Проверьте myShareName в smb.conf на внутреннюю корректность:

    ~$ testparm --section-name "myShareName" -s
    

Ссылки:

Форумы Linuxmint

Wiki Samba

Ответ или решение

Чтобы поделиться папкой, которая находится за пределами вашей домашней директории в Samba на Ubuntu, выполните следующие шаги. Вы можете использовать smb.conf для настройки общего доступа к этой папке. Это более надежный метод, чем использование графического интерфейса Nautilus для папок, находящихся вне домашней директории.

Шаги для настроек Samba

  1. Откройте файл конфигурации Samba:

    Выполните команду в терминале, чтобы открыть файл /etc/samba/smb.conf с правами суперпользователя:

    sudo gedit /etc/samba/smb.conf
  2. Добавьте новую секцию для вашего общего доступа:

    В конце файла добавьте следующую конфигурацию для вашей папки:

    [myShareName]
    path = /media/myUserName/myPartitionName/mySharedFolder
    read only = no
    force user = myUserName
    guest ok = yes

    Замените myShareName на ваше имя общего доступа, myUserName на ваше имя пользователя и myPartitionName/mySharedFolder на путь к папке, которую вы хотите поделиться.

  3. Настройка разрешений:

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

    sudo chmod 775 /media/myUserName/myPartitionName/mySharedFolder
    sudo chown myUserName:sambashare /media/myUserName/myPartitionName/mySharedFolder

    Здесь myUserName – это ваше имя пользователя, а sambashare – это группа, к которой вы хотите предоставить доступ.

  4. Перезапустите службу Samba:

    После внесения изменений в конфигурацию проверьте и перезапустите службу Samba:

    sudo service smbd restart
  5. Проверьте конфигурацию:

    После того, как вы перезапустите службу, проверьте правильность добавленной секции:

    testparm --section-name "myShareName" -s

    Это подтвердит, что конфигурация корректна.

Примечания

  • Для доступа к общей папке с Windows убедитесь, что соответствующие порты (например, 445 и 139) открыты в брандмауэре.
  • На стороне Windows введите \\IP-адрес-сервера\myShareName в строке адреса проводника, чтобы получить доступ к общей папке.
  • Если все равно возникает ошибка доступа "no permission", попробуйте сначала проверить права доступа к папке и убедитесь, что Samba-учетные записи пользователей синхронизированы. Возможно, имеет смысл создать отдельного пользователя Samba с соответствующими правами.

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

Оцените материал
Добавить комментарий

Капча загружается...