
Есть ли способ создать систему на базе Linux, в которой у каждого пользователя будут разные точки монтирования?
Например, у вас может быть такая «реальная» файловая система, которую использует root:
/dev/sda1 mounted to /
/bin
/home/uuid1
/home/uuid2
/home/uuid3
Тогда пользователь user1 с uuid1 может увидеть что-то вроде этого:
/home/uuid1 mounted to /
/bin mounted to /bin
Тогда user2 может быть тем же самым, но с uuid2 и т. д.
Я думаю, что такую настройку системы можно использовать для управления зависимостями и полной изоляции пользовательских данных, не позволяя пользователям даже видеть, что существуют каталоги, к которым у них нет доступа.
решение1
Посмотри намонтировать пространства именнастройте систему таким образом, чтобы каждому пользователю при входе в систему предоставлялось определенное пространство имен монтирования.
Так что для этого вам не нужен полноценный контейнер (хотя если вы считаете, что контейнер проще в использовании, то обязательно используйте контейнер). Контейнер в основном будет использовать пространства имен монтирования и другие пространства имен.
решение2
Вам нужны контейнеры:
- управлять зависимостями
- данные песочницы (пользователя) полностью
Это можно сделать, создав контейнер для каждого пользователя (включая точки монтирования), а затем внутри этого контейнера создать пользователя.