UID von Linux-Client und Diskstation anpassen

Status
Für weitere Antworten geschlossen.

gerega

Benutzer
Mitglied seit
06. Aug 2014
Beiträge
21
Punkte für Reaktionen
0
Punkte
0
Ich besitze eine über NFS eingebundene Diskstation. Im Wiki wird erwähnt, dass es sinnvoll sei, die UIDs der jeweiligen Nutzernamen mit denen der Diskstation anzugleichen, siehe http://www.synology-wiki.de/index.php/NFS-Konfiguration#NFS_Client_Konfiguration_bei_Benutzung_Linux

Hier sind die UIDs von mir:

Diskstation:
Code:
# id synoman
# uid=1030(synoman) gid=100(users) groups=100(users)

Linux-Client:
Code:
# id synoman
# uid=1000(synoman) gid=1000(synoman) Gruppen=1000(synoman) ...

Ich habe bislang noch keine Nachteile erfahren, weil die UIDs nicht angeglichen sind, möchte das aber jetzt nachholen.

Könnte mir bitte jemand rückmelden, ob die drei unten stehenden Schritte ausreichen, um die UID auf dem Linux-Client sicher zu ändern? Müsste nicht auch die GID angepasst werden?

Ich fange mal an - alles root selbstverständlich:

1) UID auf dem Linux-Client anpassen:
Rich (BBCode):
# usermod -u 1030 synoman
# id synoman # (nur zum Nachprüfen)

2) GroupID (GID) anpassen:
Rich (BBCode):
# groupmod -g 100 1000

3) Alle Dateien auf dem Linux-Client anpassen:
Rich (BBCode):
# find / -user 1000 -exec chown -h 1030 {} \;
# find / -group 1000 -exec chgrp -h 100 {} \;

Reicht das? Habe ich etwas vergessen? Oder irgendwo einen Denkfehler gemacht?

Ich bin für eure Hilfe sehr dankbar!

gerega
 

dil88

Benutzer
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.709
Punkte für Reaktionen
2.118
Punkte
829
Das reicht und sollte vollständig sein, falls alle Kommandos Teil des DSM sind. Auf meiner DS fehlen beispielsweise usermod und groupmod. Stattdessen sollte es aber genügen, wenn Du die /etc/passwd direkt z.B. mit dem vi bearbeitest.
 

gerega

Benutzer
Mitglied seit
06. Aug 2014
Beiträge
21
Punkte für Reaktionen
0
Punkte
0
Die Befehle müssen auf dem Linux-Client ausgeführt werden und nicht auf der Diskstation. Die Kommandos sind deshalb natürlich auf dem LinuxClient vorhanden.

Wenn ich /etc/passwd bearbeiten würde, dürfte sich das nur auf neu angelegte Dateien und Ordner auswirken.
 

dil88

Benutzer
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.709
Punkte für Reaktionen
2.118
Punkte
829
Pardon, Du hast es in #1 ja genau betitelt.
 

fbartels

Benutzer
Mitglied seit
19. Mrz 2013
Beiträge
284
Punkte für Reaktionen
2
Punkte
24
Beim Ausführen der Kommandos solltest du darauf achten, dass du diese nicht unbedingt über eine grafische Shell, oder den Benutzer den du änderst ausführst, da dies sonst zu konflikten und Fehlermeldungen führen kann.

Ich habe mir für diesen Einsatzzweck mal ein Skript geschrieben, welches du unter folgendem Link herunterladen kannst: https://github.com/fbartels/scripts/blob/master/change-uid.sh
 

dil88

Benutzer
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.709
Punkte für Reaktionen
2.118
Punkte
829
Feine Sache. Läuft Dein Skript nur mit der im Shebang referenzierten bash oder auch mit der Standard-ash?
 

gerega

Benutzer
Mitglied seit
06. Aug 2014
Beiträge
21
Punkte für Reaktionen
0
Punkte
0
Beim Ausführen der Kommandos solltest du darauf achten, dass du diese nicht unbedingt über eine grafische Shell, oder den Benutzer den du änderst ausführst, da dies sonst zu konflikten und Fehlermeldungen führen kann.

Ich habe mir für diesen Einsatzzweck mal ein Skript geschrieben, welches du unter folgendem Link herunterladen kannst: https://github.com/fbartels/scripts/blob/master/change-uid.sh

Vielen Dank!

Ich würde die Änderungen (Nr. 3) von einem Linux-LIVE System aus durchführen.
 
Zuletzt bearbeitet:

gerega

Benutzer
Mitglied seit
06. Aug 2014
Beiträge
21
Punkte für Reaktionen
0
Punkte
0
Wenn ich mir dein Skript anschaue, merke ich, was ich schon seit Jahren lernen wollte: Bash Script Programmierung! :eek: Ich verstehe dein Skript zwar, würde es aber nicht selbst programmiert bekommen!
 

gerega

Benutzer
Mitglied seit
06. Aug 2014
Beiträge
21
Punkte für Reaktionen
0
Punkte
0
Korrektur zu meinem ersten Beitrag:

Nr. 2 ist falsch! Mit groupmod wird die Gruppe als solches geändert und nicht die Zuordnung von synoman!

Es ist daher folgender Befehl nötig - am besten, wenn man selbst nicht als der zu ändernde User angemeldet ist. Alternativ kann man sich im Login-Fenster eurer Distribution mittels STRG+ALT+F2 auch mal als root anmelden, falls ihr nur einen User habt. Dann aber Vorsicht!

Code:
usermod -u 1030 -g 100 synoman

Anschließend kann man entweder von einem Live-System oder aber man wählt sich mit einem anderen User an und ändert die Dateirechte, siehe Schritt 3 im ersten Posting.

Zu guter letzt sollten auch auf der Diskstation alle nötigen Zuordnungen mit den Befehlen aus Schritt 3 gesetzt werden! Bei mir herrschte da doch ein ganz schönes Durcheinander! :-/ Dazu einfach wieder als User am System anmelden (hier: synoman) und auf der Konsole die Befehle mit sudo ausführen.
 
Zuletzt bearbeitet:

fbartels

Benutzer
Mitglied seit
19. Mrz 2013
Beiträge
284
Punkte für Reaktionen
2
Punkte
24
Hallo dil88,

das Skript ist ebenfalls für die Ausführung auf dem Client gedacht.
 

dil88

Benutzer
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.709
Punkte für Reaktionen
2.118
Punkte
829
Alles klar, so langsam habe ich das sortiert, aber der Thread ist ja auch durch. :)
 

dil88

Benutzer
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.709
Punkte für Reaktionen
2.118
Punkte
829
Sehr schön gemacht, danke dafür.
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat