GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Hinzufügen eines bestehenden Benutzers zu einer Gruppe mit Puppet

Lösung 1:

Die Verwendung virtueller Puppet-Ressourcen ist der richtige Weg, dies zu tun - aber wenn Sie die Benutzerdefinitionen nicht ändern können und in der Zwischenzeit einen Workaround-Fix benötigen, ist das Folgende schrecklich und hacky, wird aber funktionieren:

exec { 'foo somegroup membership':
  unless  => '/bin/grep -q "somegroup\\S*foo" /etc/group',
  command => '/sbin/usermod -aG somegroup foo',
  require => User['foo'],
}

Im Wesentlichen überprüfen wir nur, ob eine Gruppe den Benutzer foo enthält... wenn nicht, verwenden Sie die normalen usermod-Befehle, um ihn zusätzlich zu den bestehenden Gruppen hinzuzufügen, denen foo angehört.

Lösung 2:

Wenn Sie Benutzer als virtuelle Ressourcen deklarieren, können Sie dann 'realize' oder die Sammlungssyntax ( User <| ... |>) verwenden. Hier ist ein Beispiel:

@user { 'foo':
  groups     => ['somegroup'],
  membership => minimum,
}

Realisieren Sie dann diesen virtuellen Benutzer mit der Sammlungssyntax:

User <| title == foo |>

Und an anderer Stelle können Sie die Parameter für diese virtuelle Ressource mit Pluszeichen ergänzen:

User <| title == foo |> { groups +> "svn" }

Lösung 3:

Danke - hässlicher Hack mit Sicherheit, aber es erledigt die Arbeit. Hier ist ein gepfadetes Beispiel (das die obigen Kommentare kombiniert), um „nrpe“ zur Gruppe „nagios“ hinzuzufügen. Ich habe ein Paket require verwendet, da der Benutzer hier RPM erhält und nicht von Puppet.

  exec {"nrpe nagios membership":
    unless => "/bin/getent group nagios|/bin/cut -d: -f4|/bin/grep -q nrpe",
    command => "/usr/sbin/usermod -a -G nagios nrpe",
    require => Package['nrpe'],
  }

Linux
  1. So installieren Sie Nextcloud mit ISPConfig 3.1

  2. So fügen Sie Benutzer zu einer Gruppe in Linux hinzu

  3. Gruppen mit Awk oder Grep erfassen?

  4. Warum fügt Samba keinen neuen Benutzer mit „samba-tool“ hinzu?

  5. Benutzererstellung mit mehreren Befehlsoptionen?

Erste Schritte mit GIT unter Linux

Linux Chgrp-Befehl mit Beispielen

Linux-Befehl „runuser“ – Shell mit angegebener Benutzer-/Gruppen-ID ausführen

Hinzufügen neuer Benutzer in Linux mit dem Useradd-Befehl

So fügen Sie einen Benutzer zu einer Gruppe unter Linux hinzu

So fügen Sie einen Benutzer zu einer Linux-Gruppe hinzu