Hallo,
das Problem stellt sich wie folgt dar: Zwei Rechner, beide mit debian stable und auf beiden Rechnern haben die Nutzer K und L Accounts. Auf Rechner Antwerpen gibt es Nutzer K mit der UID 1000 und Nutzer L mit der UID 1001. Auf Rechner Bremen hat Nutzer K die UID 1001 und Nutzer L die UID 1000.
Auf Rechner Bremen wird nun mit rdiff-backup durch Nutzer L ein Backup auf externer Platte erstellt. Wird diese Platte an Rechner Antwerpen angestöpselt (falls Rechner Bremen nicht verfügbar ist) und (auto)gemounted unter /media/L/labelname kann der Nutzer L nicht auf sein Backup zugreifen. Seine UID (1000) gehört ja auf Rechner Antwerpen zu einem anderen Nutzer. Folglich kann auf das eigene Backup nur zugegriffen werden wenn anderer Nutzer (oder root) mit ins Spiel kommt und das ist unpraktisch. Zusätzliche Hürde: Auf Rechner Bremen gibt es noch weitere Nutzer (Gast) Accounts, die zur Not aber auch weg könnten.
Ich sehe nun zwei Möglichkeiten, das Problem zu lösen: Auf beiden Rechner die UIDs gleich zu machen, also K hat dann immer die 1000 und L die 1001. Alternativ dazu könnte eine neue Gruppe "backuprestore" erstellt werden, die auf beiden Rechnern die identische GID hat (bspw. 1030) und K und L werden hinzugefügt und mit chmod -R werden die Dateien auf, die ins Backup wandern sollen mit entsprechenden Rechten versehen.
Meine Fragen an euch: Ist meine Einschätzung korrekt, dass der zweite Weg mit der zusätzlichen Gruppe der bessere Weg ist? Wie erreiche ich es, dass ich auf beiden Rechnern eine identische GID erreichen kann? Oder reicht es aus, die Gruppe anzulegen und mittels vim in /etc/group die GID auf den gewünschten Wert zu biegen? Oder hat jemand Erfahrung mit der ersten Alternative?
Vielen Dank im voraus!
spiralnebelverdreher
Externe Backupplatte an mehreren Rechnern, aber unterschiedliche UIDs
- spiralnebelverdreher
- Beiträge: 1298
- Registriert: 23.12.2005 22:29:03
- Lizenz eigener Beiträge: GNU Free Documentation License
- Wohnort: Frankfurt am Main
Re: Externe Backupplatte an mehreren Rechnern, aber unterschiedliche UIDs
Mir gefällt deine Lösung nicht. Zuerst würde ich die UID auf beiden Systemen anpassen.
Zudem würde ich durch verschlüsselte Petitionen vor Nutzerfehlern absichern: Sicherungspartition A auf der externen Festplatte kann nur von Nutzer A per User-Passwort entsperrt werden. Erst dann ist das Backup möglich. Sollte per LVM und Luks ganz einfach umsetzbar sein.
Zudem würde ich durch verschlüsselte Petitionen vor Nutzerfehlern absichern: Sicherungspartition A auf der externen Festplatte kann nur von Nutzer A per User-Passwort entsperrt werden. Erst dann ist das Backup möglich. Sollte per LVM und Luks ganz einfach umsetzbar sein.
- jph
- Beiträge: 1081
- Registriert: 06.12.2015 15:06:07
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Greven/Westf.
Re: Externe Backupplatte an mehreren Rechnern, aber unterschiedliche UIDs
Die numerischen UID und GID lassen sich mit usermod -u bzw. groupmod -g ändern. Dabei werden Dateien im Home-Verzeichnis des betreffenden Users bei usermod automatisch auf die neue UID angepasst; bei der GID wirst du dir mit einem find | xargs chgrp behelfen müssen.
Die Benutzer dürfen bei einer solchen Operation nicht angemeldet sein.
Die Benutzer dürfen bei einer solchen Operation nicht angemeldet sein.
- spiralnebelverdreher
- Beiträge: 1298
- Registriert: 23.12.2005 22:29:03
- Lizenz eigener Beiträge: GNU Free Documentation License
- Wohnort: Frankfurt am Main
Re: Externe Backupplatte an mehreren Rechnern, aber unterschiedliche UIDs
Danke für eure Antworten!
Den Satz
Da ich an einem Rechner die UID 1001 und 1000 tauschen will, aber die 1000 schon belegt ist muss ich dann erst temporär eine freie Nummer verwenden oder sind usermod und groupmod so komfortabel dass sie das für mich machen?
Den Satz
verstehe ich irgendwie nicht so ganz. Wofür soll das gut sein? Mit cat /etc/group bzw. cat /etc/passwd ( erweitert eventuell um | grep <Nutzername> ) finde ich doch die UID bzw. GID zuverlässig heraus.jph hat geschrieben:07.01.2021 12:53:03bei der GID wirst du dir mit einem find | xargs chgrp behelfen müssen.
Da ich an einem Rechner die UID 1001 und 1000 tauschen will, aber die 1000 schon belegt ist muss ich dann erst temporär eine freie Nummer verwenden oder sind usermod und groupmod so komfortabel dass sie das für mich machen?
- jph
- Beiträge: 1081
- Registriert: 06.12.2015 15:06:07
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Greven/Westf.
Re: Externe Backupplatte an mehreren Rechnern, aber unterschiedliche UIDs
Korrekt, über die /etc/group findest du die GID heraus, aber wenn du die GID einer Gruppe änderst, wird die GID der Dateien dieser Gruppe nicht geändert. Daher von Hand (ungetestet):
Analog für die UID für Dateien außerhalb von ~, Beispiel /var/tmp (gibt bestimmt noch ein paar Stellen mehr, bspw. /media):
Wenn du GID tauschen willst, wirst temporär auf eine andere Nummer ausweichen müssen, also a wird von 1000 zur 1002, dann wird b von 1001 zur 1000 und anschließend a von 1002 zu 1001. (Ich habe früher ein Synology-NAS besessen, das aus mir unbekannten Gründen UID ab 1024 beginnen ließ. Daher kenne ich den Spaß.)
Nachtrag: cat /etc/group | grep a ist „useless use of cat“, ein grep a /etc/group erfüllt den gleichen Zweck.
Code: Alles auswählen
# find /home/a -gid 1000 -print0 | xargs -0 chgrp 1001
Code: Alles auswählen
# find /var/tmp -uid 1000 -print0 | xargs -0 chown 1001
Nachtrag: cat /etc/group | grep a ist „useless use of cat“, ein grep a /etc/group erfüllt den gleichen Zweck.