Рейтинг:0

Как сделать внешние диски доступными для чтения и записи для всех пользователей при подключении?

флаг et

Я привык к macOS, где внешние диски монтируются в /Volumes и доступны для всех пользователей. Я хотел бы имитировать это поведение в Ubuntu, чтобы я мог настроить общий ресурс samba для другого пользователя и предоставить Plex доступ ко всем внешним носителям. Как это сделать?

Morbius1 avatar
флаг es
Это все просто случайные USB HDD?
interoception avatar
флаг et
Два, которые почти всегда будут подключены, но я хотел бы, чтобы решение распространялось на любой USB-носитель.
Рейтинг:1
флаг es

Примечание. Я ничего не знаю о Plex. Единственное, что я продолжаю видеть в сообщениях, это то, что он работает как пользовательский комплекс, но это мои знания.

В моем тестовом блоке, когда я ( пользователь = тестер ) подключаю жесткий диск USB, он монтируется в /media/tester/$UUID - доступен тестировщику, но никому другому.

Один из способов получить универсальный доступ к любому USB-носителю — использовать bindfs для создания «представления», которое позволяет это сделать.

[1] Установите привязки:

sudo apt установить bindfs

[2] Создайте точку монтирования для этого "представления":

судо mkdir/MyMedia

[3] Временно перемонтируйте /media/tester в /MyMedia с помощью bindfs:

sudo bindfs /media/tester /MyMedia -o force-user=tester,force-group=tester,perms=666:+X

Если я подключу жесткий диск USB к системе, он теперь будет отображаться дважды:

** Один раз, когда Linux хочет его смонтировать:

$ ls -al /носитель/тестер ... drwxr-xr-x 3 тестер тестер 4096 31 декабря 1969 03E9-7C8D

** И снова где bindfs монтирует "представление" с новым набором разрешений:

$ ls -al /MyMedia ... drwxrwxrwx 3 тестер тестер 4096 31 декабря 1969 г. 03E9-7C8D

Когда я создаю общий ресурс samba, я указываю его на /MyMedia

Чтобы отменить монтирование bindfs:

sudo размонтировать /MyMedia

Если он делает то, что вы хотите, вы можете создать это «представление» bindfs при каждой загрузке, добавив строку в конце /etc/fstab - с изменением синтаксиса:

/media/tester /MyMedia fuse.bindfs force-user=tester,force-group=tester,perms=666:+X,непусто 0 0

Затем размонтируйте его, если он все еще смонтирован:

sudo размонтировать /MyMedia

Затем осчастливьте systemd:

sudo systemctl демон-перезагрузка

Затем смонтируйте его:

судо монтирование /MyMedia

Теперь он должен монтировать этот «представление» при каждой загрузке.

Как я уже сказал в начале этого поста, я ничего не знаю о Plex, но он хочет, чтобы все файлы принадлежали пользователю «plex», замените «force-user = tester» на «force-user = plex» в монтировании bindfs.

interoception avatar
флаг et
Спасибо за это решение. Однако меня бы удивило, если бы в Ubuntu не было встроенного способа сделать это. Вы знаете, есть ли?
Morbius1 avatar
флаг es
Проблема в папке /media/$USER. Он создается по умолчанию в Linux со специальной настройкой разрешений, которая позволяет только пользователю, подключившему устройство, получить к нему доступ. Это считалось функцией безопасности/конфиденциальности, когда она была представлена ​​десять лет назад или около того. Вам нужно будет найти способ переопределить этот механизм по умолчанию, или, если это был внутренний или всегда известный жесткий диск, смонтировать его где-нибудь еще в fstab, или в случае с Plex, чтобы он работал как вы вместо «plex», или использовать что-то как биндфс.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.