Почему Linux требует, чтобы пользователь был root / использовал sudo / был специально авторизован на монтирование для монтирования чего-либо? Похоже, решение о том, разрешать ли пользователю монтировать что-либо, должно основываться на его правах доступа к исходному тому / сетевому ресурсу и точке монтирования. Пара применений для монтирования без полномочий root - это монтирование образов файловой системы в направлении, принадлежащем пользователю, и подключение сетевого ресурса в каталог, принадлежащий пользователю. Кажется, что если пользователь контролирует обе стороны уравнения монтирования, все должно быть круто.
Разъяснение ограничения доступа:
Я чувствую, что должен иметь возможность монтировать все, что в противном случае пользователь имел бы доступ к точке монтирования, владельцем которой является пользователь.
Например, на моем компьютере / dev / sda1 принадлежит пользователю root и групповой диск с разрешениями brw-rw----
. Поэтому пользователи без полномочий root не могут связываться с / dev / sda1 и, очевидно, что mount не должен позволять монтировать его. Однако, если пользователь владеет /home/my_user/my_imagefile.img и точкой монтирования / home / my_user / my_image /, почему он не может смонтировать этот файл образа в этой точке монтирования с помощью:
mount /home/my_user/my_imagefile.img /home/my_user/my_image/ -o loop
Как отметил Кормак, существует проблема suid. Поэтому необходимо добавить некоторые ограничения, чтобы suid не был проблемой, а также, возможно, некоторыми другими проблемами. Возможно, один из способов сделать это - заставить ОС обрабатывать все файлы как принадлежащие пользователю, который выполнял монтирование. Однако для простого чтения / записи / выполнения я не понимаю, почему это будет проблемой.
Случай использования:
У меня есть учетная запись в лаборатории, где мое домашнее пространство ограничено до 8 ГБ. Это крошечный и очень очень раздражающий. Я хотел бы смонтировать том nfs со своего персонального сервера, чтобы существенно увеличить количество места, которое у меня есть. Однако из-за того, что Linux не допускает подобных вещей, я застрял с файлами scp'а туда-сюда, чтобы остаться ниже предела 8 ГБ.
sshfs
? Он будет монтировать удаленный каталог, ssh
как вы сами, без необходимости рут-доступа. Это просто нужно FUSE (Файловая система в UserSpacE) для установки.
sftp
это немного приятнее в использовании, чем scp
.