Warum verlangt Linux, dass ein Benutzer root / using sudo / spezifisch autorisiert ist, um etwas zu mounten? Es scheint, als ob die Entscheidung, ob ein Benutzer etwas bereitstellen darf, auf seinen Zugriffsrechten auf das Quellvolume / die Netzwerkfreigabe und auf den Bereitstellungspunkt basieren sollte. Einige Verwendungszwecke für das Mounten ohne Rootberechtigung sind das Mounten von Dateisystem-Images in eine benutzereigene Richtung und das Mounten einer Netzwerkfreigabe in ein benutzereigenes Verzeichnis. Wenn der Benutzer die Kontrolle über beide Seiten der Mount-Gleichung hat, sollte alles cool sein.
Erläuterung der Zugangsbeschränkung:
Ich bin der Meinung, dass ich in der Lage sein sollte, alles zu mounten, was der Benutzer ansonsten Zugriff auf einen Mount-Punkt hätte, dessen Eigentümer der Benutzer ist.
Beispielsweise gehört / dev / sda1 auf meinem Computer dem Benutzer root und der Gruppe disk mit Berechtigungen brw-rw----
. Nicht-Root-Benutzer können sich daher nicht mit / dev / sda1 anlegen, und mount sollte es ihnen eindeutig nicht erlauben, es anzulegen. Wenn der Benutzer jedoch /home/my_user/my_imagefile.img und mount point / home / my_user / my_image / besitzt, warum sollte er dann nicht in der Lage sein, diese Image-Datei an diesem Mount-Punkt einzuhängen mit:
mount /home/my_user/my_imagefile.img /home/my_user/my_image/ -o loop
Wie Kormac betonte, gibt es ein schwerwiegendes Problem. Daher müssten einige Einschränkungen hinzugefügt werden, um zu verhindern, dass Suid ein Problem darstellt, sowie möglicherweise einige andere Probleme. Möglicherweise besteht eine Möglichkeit darin, dass das Betriebssystem alle Dateien als zu dem Benutzer gehörend behandelt, der das Mounten durchgeführt hat. Beim einfachen Lesen / Schreiben / Ausführen verstehe ich jedoch nicht, warum dies ein Problem wäre.
Anwendungsfall:
Ich habe ein Konto in einem Labor, in dem mein Speicherplatz zu Hause auf 8 GB beschränkt ist. Das ist winzig und sehr sehr nervig. Ich möchte ein nfs-Volume von meinem persönlichen Server laden, um den verfügbaren Speicherplatz wesentlich zu vergrößern. Da Linux solche Dinge jedoch nicht zulässt, muss ich beim Hin- und Herwechseln von Dateien die 8-GB-Grenze einhalten.
sshfs
? Es wird ein Remote-Verzeichnis ssh
wie von Ihnen selbst bereitgestellt, ohne dass Root-Zugriff erforderlich ist. Es muss nur FUSE (Dateisystem in UserSpacE) installiert werden.
sftp
ist die Verwendung ein wenig angenehmer als scp
.