У меня есть ubuntu 16.04.2 server на моем virtualbox и хочу поделиться папками с убунта моих windows 10 хостовой ОС. обмен работает нормально, но вот моя проблема.

У меня есть один пользователь в Ubuntu, давайте назовем его "John" который является моим логином в Ubuntu. У меня также есть пользователь John на моей Windows 10, который является моим основным логином и администратором.

когда я делюсь, например, /var/www/html в Ubuntu, я могу получить к нему доступ из окон, набрав ibu ubuntu как \\192.168.56.1 в проводнике Windows, и могу посетить файлы и папки в этом каталоге.

Проблема в том, что я не могу создать файл в этом каталоге.

поэтому я изменил владельца каталога на пользователя John и принудительно установил для этого пользователя общую папку samba, добавив force user = John в smb.conf на samba.

на этом этапе я могу добавлять файлы и папки в общую папку из Windows, НО, если я создаю другую папку в этом каталоге (например, mkdir /var/www/html/NewFolder) от пользователя Ubuntu John , я не могу написать или создать файл в этом каталоге. NewFolder из Windows, но я могу сделать это в его родительском (/var/www/html) каталоге, чтобы пользователь был его владельцем.

Итак, короткая версия Моего вопроса:Как добавить полное разрешение для общей папки samba для ее текущих и будущих файлов и папок для пользователя или группы пользователей или всех пользователей, которые обращаются к нему в сети. В этой Ubuntu есть сервер Apache, который должен иметь доступ к файлам и папкам с полными разрешениями, такими как 777 или 755. поэтому я не могу сделать это только для одного пользователя, я должен быть в состоянии сделать это для любого пользователя, которого я хочу.

Итак, это все! пожалуйста помоги. Я совершенно новый пользователь Ubuntu и хочу изучать такие вещи.

Любые полезные советы или решения будут высоко оценены.

1 ответ1

0

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

  1. Создайте группу, которую Джон и ваш пользователь службы (wwwdata?) принадлежать.

  2. Измените группу владельцев в общей папке и всех подпрограммах на новую группу

  3. Установите свои права доступа 277X для папки и всех подпрограмм, где X - текущее значение разрешения "Другое".

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .