So ändern Sie den Besitzer eines Einhängepunkts

So ändern Sie den Besitzer eines Einhängepunkts

Wir haben das MySQL-Datenverzeichnis auf eine andere Festplatte verschoben, sodass es jetzt /var/lib/mysqlnur noch ein Einhängepunkt für eine andere Partition ist. Wir haben den Besitzer des /var/lib/mysqlVerzeichnisses auf festgelegt mysql.mysql.

Aber jedes Mal, wenn wir die Partition mounten, ändert sich der Besitz zu root.root. Aus diesem Grund konnten wir keine zusätzliche MySQL-Datenbank erstellen.

Unser fstab-Eintrag:

/dev/mapper/db-db   /var/lib/mysql    ext3    relatime        0       2

Wie ändere ich den Besitzer eines Einhängepunkts in einen anderen Benutzer als Root?

Antwort1

Sie müssen die Berechtigungen des gemounteten Dateisystems ändern, nicht die des Mount-Punkts, wenn das Dateisystem nicht gemountet ist. Dann mount /var/lib/mysqlalso chown mysql.mysql /var/lib/mysql… Dadurch werden die Berechtigungen des Stammverzeichnisses des MySQL DB-Dateisystems geändert.

Die Grundidee besteht darin, dass das Dateisystem, das die Datenbank enthält, geändert werden muss, nicht der Einhängepunkt, es sei denn, der Pfad weist Probleme auf, z. B. libkann er nur von Root gelesen werden.

Antwort2

Auch

mount device mount-point -o uid=foo -o gid=foo

wenn die Gruppe auch geändert werden muss

Antwort3

Wichtiger Haftungsausschluss (aus Kommentaren erfahren):

UID- und GID-Flags funktionieren nur auf Dateisystemen, die das Linux-Berechtigungsschema nicht unterstützen - z. B. FAT und NTFS.

Daher ist dies KEINE korrekte Antwort auf den OP, aber hilfreich für andere


Fügen Sie uid und gid wie folgt hinzu:

/dev/mapper/db-db  /var/lib/mysql ext3  relatime,rw,exec,uid=frank,gid=www-group        0       2

Sie können tatsächliche Benutzer-/Gruppennamen (Achtung, Leerzeichen) oder numerische UID- und GID-Werte verwenden. Ich habe rw und exec hinzugefügt, was Ihnen weiter dabei helfen kann, Zugriffsprobleme zu vermeiden (vorausgesetzt, Sie verwenden ein Entwicklungssystem und keinen Produktionsserver).

PS: Für noch mehr Zugriff (falls gewünscht), fügen Sie ",dir_mode=0777,file_mode=0777" hinzu.

Antwort4

Normalerweise mache ich das in einem leeren, nicht gemounteten Verzeichnis.

chmod 777 <directory>

Dann mach

chown -R mysql.mysql <directory>

Führen Sie dann in /etc/fstab Folgendes aus

<device>    <directory>  ext3   user,defaults 0 2

Dann benutze

mount -a

um alle in /etc/fstab aufgeführten Dateisysteme zu mounten.

Das funktioniert bei mir. Probieren Sie es aus

verwandte Informationen