Als Neuling in der Linux-Administration bin ich etwas verwirrt über die folgenden Befehle:
useradd
usermod
groupadd
groupmod
Ich habe gerade das Handbuch zur Benutzerverwaltung im Linux / Unix-Administratorhandbuch gelesen, aber einige Dinge sind immer noch ein wenig verschwommen.
Scheint im Grunde useradd
direkt genug:
useradd -c "David Hilbert" -d /home/math/hilbert -g faculty -G famous -m -s /bin/sh hilbert
Ich kann "David Hilbert" mit Benutzernamen hinzufügen hilbert
und sein Standardverzeichnis, seine Shell und seine Gruppen festlegen. Und ich denke, das -g
ist seine primäre / Standardgruppe und -G
sind seine anderen Gruppen.
Das sind also meine nächsten Fragen:
- Würde dieser Befehl immer noch funktionieren, wenn die Gruppen
faculty
undfamous
nicht vorhanden wären ? Würde es sie nur erschaffen? - Wenn nicht, welchen Befehl verwende ich, um neue Gruppen zu erstellen?
- Wenn ich den Benutzer entferne
hilbert
und keine anderen Benutzer in diesen Gruppen sind, sind sie dann noch vorhanden? Soll ich sie entfernen? useradd
Wie entferne ich David aus derfamous
Gruppe und ordne seine primäre Gruppe zu,hilbert
die noch nicht vorhanden ist, nachdem ich den obigen Befehl ausgeführt habe ?
usermod -g hilbert hilbert
wird das Hilberts andere Gruppen entfernen? Wenn ja, wie würde ich diese anderen Gruppen behalten? Wenn nicht, wow würde ich ihn aus seinen anderen Gruppen entfernen?Sie müssen das lesen,
man usermod
das erklärt, was mit den verschiedenen Optionen passiert:Ersetzt Ihre Anmeldegruppe von 'Fakultät' zu 'Hilder', solange die Gruppe 'Hilder' existiert. Wenn es nicht existiert, müssen Sie es zuerst mit groupadd erstellen.
Wenn Sie die
-G
Option verwenden, sollten Sie auch die-a
Option verwenden, um der aktuellen Liste der zusätzlichen Gruppen, zu denen der Benutzer 'hilder' gehört, neue Gruppen hinzuzufügen. Ohne die-a
Option ersetzen Sie aktuelle Ergänzungsgruppen durch einen neuen Gruppensatz. Gehen Sie daher vorsichtig damit um.quelle
So ändern Sie die primäre Gruppe eines Benutzers unter Linux:
usermod -g new_group user_name
Um Ihre Änderungen zu testen, führen Sie sie aus
id
und überprüfen Sie den Wert vongid=
Wenn der Befehl fehlerfrei ausgeführt wird, die GID sich jedoch nicht geändert hat, haben Sie den fett gedruckten Teil von Schritt 2 übersehen.
quelle
Antwort 1 ist gut. Sie können jedoch auch Folgendes eingeben, um eine neue Gruppe hinzuzufügen:
# nano /etc/group
Der Nachteil der
/etc/group
direkten Bearbeitung ist, dass Sie eine nicht verwendete GID (Gruppen-ID-Nummer) erstellen müssen.Im Folgenden können Sie die primäre Gruppe eines Benutzers ändern.
# nano /etc/passwd
Sie suchen die Zeile des Benutzers und ändern die GID (Gruppennummer, nachschlagen in
/etc/group
). Beachten Sie dabei, dass die Syntax wie folgt lautet:Es gibt keinen Nachteil ist , ich von diesem Ansatz denken kann (vorausgesetzt , Sie kennen die GID), ist es , was häufig ich für lokale Benutzer verwendet, vor allem , weil ich viele verschiedenen UNIX - Systeme mit unterschiedlichen verwenden
usermod
,adduser
unduseradd
Befehlsoptionen.Es ist etwas mehr manuell, erledigt jedoch die Arbeit. Beachten Sie, dass Sie
vi
ISO verwenden könnennano
, um die Dateien zu bearbeiten, wenn Sie wissenvi
.quelle
Um die primäre Gruppe des Benutzers dauerhaft zu ändern, führen Sie Folgendes aus:
Oder Sie könnten
newgrp
für kleine Umgebung und vorübergehende Situation verwenden.Erstellen Sie einen neuen Benutzer Bob und eine neue Gruppe
dodo
.In RedHat / Centos haben wir also UID = (ID_number) bob; GID = (ID_Nummer) Bob als primäre Gruppe standardmäßig
Fügen Sie den Benutzer bob der
dodo
Gruppe hinzu:Nächste Verwendung
newgrp
zum Ändern des Besitzers:Achten Sie auf Ihr Konto, um ein Passwort zu haben und Mitglied der zukünftigen primären Gruppe zu sein. Und der newgrp öffnet eine neue Shell; Solange der Benutzer in dieser Shell bleibt, ändert sich die primäre Gruppe nicht. Um die primäre Gruppe auf die ursprüngliche zurückzusetzen, können Sie die neue Shell mit dem Befehl exit verlassen.
quelle