Benutzererkennung UID macht Probleme

Hinweis: In dem Thema Benutzererkennung UID macht Probleme gibt es 10 Antworten auf 2 Seiten. Der letzte Beitrag () befindet sich auf der letzten Seite.
  • Hallo werte openSUSE Verwender,


    ich habe bemerkt, dass die UID für Benutzer 1 und für Benutzer 2 gleich sind (in meinem Fall 1000). Als ich Benutzer 2 angelegt hatte, muss es passiert sein, dass die UID nicht auf 1001 angelegt wurde.


    Ein ändern der UID über Yast ist unmöglich, da Leap 15.5 zwar mit Benutzer 1 bootet, aber in Wirklichkeit dann mit Benutzer 2 auftritt.


    Die Konsole startet mit Benutzer 2. Die Bildschirmsperre macht beim Entsperren auch Probleme; die Entsperrung mit Passwort geht nicht. Ich muss dann über Option (unter Anmeldung) "Benutzer wechseln" noch einmal speziell auf Benutzer 1 gehen und mich mit Passwort einloggen. Dann entsperrt der Bildschirm wieder.


    Unter -> Einstellungen -> Systemeinstellungen -> Benutzer ist 2 Mal Benutzer 2 angegeben. Ein Editieren eines der "Benutzernamen" von Benutzer 1 auf Benutzer 2 ist ebenfalls unmöglich. Das funktioniert weder, wenn ich als Benutzer 1 angemeldet bin, noch, wenn ich als Benutzer 2 angemeldet bin.


    Also was kann ich tun, um Benutzer 2 die UID=1001 zu verpassen. Ich verwende zum Arbeiten gewöhnlich Benutzer 1. Benutzer 2 ist nur ein Alternativ-Benutzer. Falls ich Benutzer 2 löschen würde, dann würde mit Sicherheit auch der angelegte Benutzer 2 unter /home gelöscht werden - nehme ich an ? Das wäre nicht so schlimm, da unter Benutzer 2 keine wichtigen Dokumente abgelegt sind.


    Da ich mich nicht besonders gut mit den gesamten Benutzer-Vorgängen auskenne, möchte ich damit vorsichtig umgehen, um die Sache nicht versehentlich schlimmer zu machen.


    Vielen Dank für eure Hilfen.


    Gruß, su_lin_user

  • Öffne die Konsole, werde root (su - oder sudo -i ) und öffne die Datei /etc/passwd (z.b. "vi /etc/passwd" oder "kate /etc/passwd" für graphischen Editor)


    Dort solltest du folgende Einträge (eher unten) sehen:


    user1:x:1000:100:user1:/home/user1:/bin/bash

    user2:x:1000:100:user2:/home/user2:/bin/bash


    Bei user2 setzt du jetzt statt 1000 z.b. 1001 ein, Achtung, die Zahl sollte über 1000 sein (Konvention) und in der /etc/passwd einzigartig sein. Wenn es 1001 schon gibt nimm also 1002 oder 1003.


    Danach die Datei speichern und schließen. Jetzt gehst du nach /home ("cd /home") und änderst dort für user2 die UID auf den Wert, den du in der /etc/passwd eingetragen hast, also z.b. 1001 mit chown -R 1001 user2. Mit ls -ln kannst du das nochmal überprüfen, die Ordner user1 und user2 sollten da jetzt unterschiedliche UIDs gelistet haben. Die Gruppe (zweite Zahl) ist gleich das soll so.


    Jetzt am besten nochmal neu starten.

    Für den Inhalt des Beitrages 308790 haftet ausdrücklich der jeweilige Autor: neoghb

  • Hallo neogh,


    vielen Dank für die gute Beschreibung.


    Ich habe vor Deinem post überlegt, ob ich aus dem Terminal tty1 vielleicht nur den user2 löschen könnte. Ich habe das dann ganz vorsichtig mit userdel >Benutzername< versucht. Es ist dabei eine Meldung gekommen "no crontab ... " . Deshalb war ich zuerst der Meinung der Befehl konnte nicht ausgeführt werden.

    Aber jetzt, als ich /etc/passwd geöffnet hatte, habe ich gesehen, dass nur user1 in der letzten Zeile vorhanden war. User2 fehlte. Also habe ich mich vergewissert, ob user2 noch vorhanden ist, und festgestellt, dass "userdel" doch ausgeführt wurde.


    Das Verzeichnis /home/user2 ist noch vorhanden. Also könnte ich user2 noch einmal neu anlegen und dabei das bestehende /home/user2 verwenden.

    Das müsste doch funktionieren?

    Ich habe dann auch keine Schwierigkeiten wegen der UID oder GID. Ist das richtig ?

    Bitte noch mal kurze Rückmeldung, danke.


    Gruß, su_lin_user

  • Wieso hast du jetzt den User gelöscht?

    Wenn du user2 dann wieder anlegst musst du eben gucken, ob unter /home/user2 und in der /etc/passwd die UIDs zusammenpassen. Die Befehle dafür sind ja im ersten Post von mir. Wenn in /home/user2 nichts wichtiges an Daten/Configs ist, kannst du auch /home/user2 direkt löschen, dann wird es neu angelegt.

    Für den Inhalt des Beitrages 308794 haftet ausdrücklich der jeweilige Autor: neoghb

  • Hallo neoghb,


    ich habe versucht nur den user2 neu anzulegen und das /home/user2 zu übernehmen. Ich habe das sonst immer nur bei einer Neuinstallation gemacht. Jetzt werden mir die Zusammenhänge etwas klarer.

    Code
    kate /etc/passwd
    Code
    ...
    user1:x:1000:100::/home/user1:/bin/bash
    user2:x:1001:100::/home/user2:/bin/bash

    Ich glaube das ist wieder in Ordnung. Danke für die Hilfe.

  • Poste zur Vorsicht noch ls -ln /home/  aber ja, sieht gut aus!

    Für den Inhalt des Beitrages 308796 haftet ausdrücklich der jeweilige Autor: neoghb

  • Hallo neoghb,


    Code
    suse_user1@Tuxedo2020:~> ls -ln /home/
    insgesamt 36
    drwx------  2    0   0 16384 12. Aug 2020  lost+found
    drwxr-xr-x 23 1000 100  4096  8. Okt 12:36 suse_tumb1
    drwxr-xr-x 73 1000 100 12288 12. Okt 17:36 suse_user1
    drwxr-xr-x 18 1001 100  4096 12. Okt 17:31 suse_user2

    Wenn ich innerhalb der Gruppe "user" lesen und schreiben möchte; ist es dann richtig das mit "chmod -v g+rw" zu machen? Und das gleiche für user2. Dann müsste ich von jedem der beiden user aus auch im /home des anderen users lesen und schreiben können.


    Gruß, su_lin_user

  • Ja, das geht aber wirklich nur auf den Homeordner, ohne Unterordner. Ein -R brauchst du noch damit es auch für die Datein und Unterordner übernommen wird. Ebenso brauchst du ein X, also rwX damit das Execute Recht auf Ordner gesetzt wird - das brauchst du um in Ordner überhaupt erst rein zu kommen (könnte aber auch schon gesetzt sein)


    Du könntest da aber eventuell Probleme bekommen - z.b. ssh streikt, wenn der .ssh Ordner im Userverzeichnis von mehr als dem User selbst schreibbar ist. Ebenso macht gpg2 da Probleme.


    Am besten du machst also das chmod -R g+rwX  wirklich nur auf die Ordner, die von allen beschreibbar sein sollen. Ein Beispiel wäre:


    chmod  g+rwX /home/user1 

    chmod -R g+rwX /home/user1/Dokumente 

    chmod -R g+rwX /home/user1/GeteilterOrdner 


    Und so weiter. Also einmal nur das Homeverzeichnis ohne Unterordner und dann einzeln die Unterordner rekursiv die du willst.


    Wenn du ssh oder gpg sowieso nicht verwendest, könntest du auch direkt chmod -R  g+rwX /home/user1  machen. Aber das erstere ist der sicherere Weg.



    tumb1 und user1 haben immer noch die gleiche UID da passt also noch was nicht, oder ist tumb1 sowieso nur ein testuser oder backup oder sonstwas? user1 und user2 passen aber soweit.

    Für den Inhalt des Beitrages 308799 haftet ausdrücklich der jeweilige Autor: neoghb

  • Normalerweise ändert man das über Yast > Benutzer und Gruppenverwaltung ... Dort kann man den jeweiligen Nutzern eine UID zuweisen oder bei bestehenden diese ohne Weiteres ändern, Nutzer löschen und hinzufügen.


    Über die Systemeinstellungen kann das nicht funktionieren.

    Für den Inhalt des Beitrages 308800 haftet ausdrücklich der jeweilige Autor: matbhm

  • Hallo neogbh,


    danke super erklärt. Mir hat's bisher immer vor Benutzerrechten gegraut. Jetzt bin ich der Sache doch noch etwas näher gekommen.

    Aber das erstere ist der sicherere Weg.

    Ich gehe lieber immer den sicheren Weg ;) .

    tumb1 und user1 haben immer noch die gleiche UID da passt also noch was nicht, oder ist tumb1 sowieso nur ein testuser oder backup oder sonstwas? user1 und user2 passen aber soweit.

    Nein, das würde schon richtig so sein. Ich verwende noch openSUSE Tumbleweed parallel. Und dafür ist das der user.

    Also hab herzlich Dank, war eine gelungene Sache.


    Gruß, su_lin_user