Как объединить рабочие папки и доступ к папке конфигурации для нескольких служб (передача, минидлна, самба и т. Д.)
Это немного сложное подробное описание ниже.
Я собираю ubuntu в качестве домашнего служебного ПК, включая следующие служебные компоненты:
- Transmission-daemon (как инструмент для загрузки торрентов PT/BT)
- minidlna (как DLNA-сервер, который можно найти на ТВ)
- самба (как сервер обмена файлами между Windows и Ubuntu)
- другие (возможно, в футуере нужна другая услуга)
При установке вышеуказанных приложений (sudo apt install) он также создаст собственного пользователя и группу.
Пользователь / группа:
- корень
- Роберт / Роберт [Это я]
- guestA / guestA [Обычный пользователь]
- guestB / guestB [Обычный пользователь]
- minidlna / minidlna [создается minidlna автоматически]
- debian-Transmission / debian-Transmission [автоматически создается демоном передачи]
Группа (список пользователей):
- судо (роберт)
- Роберт (Роберт)
- guestA (гость A)
- guestB (гость B)
- пользователи (robert,guestA,guestB)
- самбашаре (Роберт, гость A, гость B)
- minidlna (минидлна)
- дебиан-передача (дебиан-передача)
Мне нужно объединить рабочие папки этих приложений, чтобы файлы aviod копировали в разные рабочие папки для каждого приложения. Но трудно найти решение, чтобы предоставить права доступа к папке другому пользователю / группе... Подробности ниже.
Управление папками: решение (A)
Если вы используете разные папки для каждого приложения, по умолчанию он работает нормально, и нет необходимости менять доступ к папке. Но мне приходится вручную копировать файлы между этими папками, это недопустимо. И, кстати, "/" (/var/lib/) монтируется из драйвера SDD, который имеет только 128 ГБ, для загрузки / обмена / службы DLNA требуется драйвер большего размера 2 ТБ.
- / share / -> для samba share
- / var / lib / Transmission-daemon / download -> для передачи скачать
- / var / lib / minidlna -> для медиа-каталога minidla
Управление папками: решение (B) Требуется драйвер большего размера на 2 ТБ, смонтированный в "/WT2T". По возможности возьмите одну и ту же папку для каждого приложения (transmisson / minidlna / samba).
- /WT2T -> смонтировано из /dev/sdb1 (драйвер SATA 2 ТБ)
- / WT2T / media -> 1) загрузка передачи 2)minidlna media 3) sambashare dir
- / WT2T / media / 1_movie
- / WT2T / media / 2_music
- / WT2T / media / 3_photo
- / WT2T / samba / robert -> только для samba robert private
- / WT2T / samba / guestA -> только для samba guestA private
- / WT2T / samba / guestB -> только для samba guestB private
- / WT2T / samba / share -> r/w для самбы все
Вопрос в том, как управлять доступом пользователя / gourp и папки для этих папок в /WT2T ... Я пробовал добавлять пользователей в группы и давать доступ группам. но если пользователь принадлежит к нескольким группам, он не сможет получить доступ, если пользователь не изменит группу через "newgrp" .
Один из способов может сработать: я запускаю напрямую "chmod -R 777 /WT2T", и все приложения, кроме меня, довольны! Мне нужно скрыть некоторые папки в /WT2T/xx/xx для определенного пользователя guestABC.