Я хочу поделиться папкой для себя и другого пользователя с помощью samba. Я создал smb.conf следующим образом:
[global]
workgroup = WORKGROUP
server role = standalone server
map to guest = never
usershare allow guests = no
hosts allow = 192.168.0.0/16
hosts deny = 0.0.0.0/0
[movies-library-share]
comment = share of movies in local network
path = /media/user1/multimedia/video/movies-library
browseable = yes
writeable = yes
valid users = user1,user2
user1 — это я, и я могу получить доступ к этому ресурсу и видеть все, и я могу писать, так что все работает нормально, но user2 может только войти в систему, все остальное недоступно, даже чтение файлов. Мой вопрос в том, как сделать его доступным для чтения и записи для user2? Я предполагаю, что это может быть связано с разрешениями на доступ к папке movies-library для user2. Я не уверен, как мне назначить правильные разрешения или группу.
решение1
Ваши два пользователя по умолчанию находятся в своих собственных группах: user1:user1 и user2:user2.
Файлы, скорее всего, принадлежат пользователю user1:user1, и у «других» пользователей нет доступа к ним.
Решения варьируются от самых простых до самых надежных:
- Притворитесь, что все это делают,
user1
увеличиваяforce user = user1
долю.
user2
теперь имеет все права и разрешения, которыеuser1
есть.- Согласно комментарию @DeeJayh, вам также следует добавить,
valid users = user1 user2
чтобы пользователи user3, user4 и т. д. не могли просматривать общий доступ.
- Представьте, что все участники группы
user1
, добавив что-force group = user1
то к общему числу.
- То же предостережение, что и выше, но вы можете удалить групповой доступ на запись с помощью
chmod g-w ...
- Предоставьте ВСЕМ доступ на чтение/выполнение.
- Это включая
user2
- Каждый пользователь системы будет иметь доступ к файлам в том виде, в котором они существуют сейчас, хотя и не через Samba.
- Для будущих дополнений этот запуск потребуется выполнять каждый раз.
chmod -R o+rx /media/user1/multimedia/video/movies-library
- Поделиться группой
- Создайте группу, членами которой являются
user1
иuser2
, и назначьте этой группе право собственности на файлы. - Добавьте эту группу к обоим пользователям.
- Установите для этой группы право группового владения общим ресурсом.
- Убедитесь, что все в этом каталоге доступно для группы.
- Установите GID для каталога, чтобы будущие дополнения наследовали группу.
-
sudo usermod -a -G media-share пользователь1 sudo usermod -a -G media-share пользователь2 chown -R пользователь1:media-share /media/пользователь1/мультимедиа/видео/библиотека-фильмов chmod -R g+rx /media/пользователь1/мультимедиа/видео/библиотека-фильмов chmod -R g+s /media/пользователь1/мультимедиа/видео/библиотека-фильмов```
- Если вы добавляете файлы через Samba, то вы можете задать каталог и маску файла, чтобы обеспечить групповые разрешения, добавив
create mask = 0750
иdirectory mask = 0770
к общему ресурсу.