GNU/Linux >> Znalost Linux >  >> Linux

Přidání existujícího uživatele do skupiny s loutkou

Řešení 1:

Použití virtuálních prostředků Puppet je ten správný způsob, jak to udělat – ale pokud nemůžete změnit uživatelské definice a mezitím potřebujete opravu náhradního řešení, následující je hrozné a otřesné, ale bude fungovat:

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

V podstatě jen zkontrolujeme, zda nějaká skupina ještě obsahuje uživatele foo... pokud ne, použijte normální příkazy usermod a přidejte jej navíc ke stávajícím skupinám, do kterých foo patří.

Řešení 2:

Pokud deklarujete uživatele jako virtuální prostředky , můžete pak použít 'realize' nebo syntaxi kolekce ( User <| ... |>). Zde je příklad:

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

Pak si uvědomte, že virtuální uživatel se syntaxí kolekce potom:

User <| title == foo |>

A jinde můžete přidat parametry pro tento virtuální zdroj pomocí plusignment:

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

Řešení 3:

Díky - ošklivý hack určitě, ale dá to zabrat. Zde je ukázkový příklad (kombinující výše uvedené komentáře) pro přidání „nrpe“ do skupiny „nagios“. Použil jsem balíček vyžadovat, protože uživatel zde poskytuje RPM spíše než loutka.

  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. Jak přidat uživatele do skupiny v Linuxu

  2. Zachyťte skupiny pomocí Awk nebo Grep?

  3. Vytváření uživatelů s více možnostmi příkazů?

  1. Spravujte skupiny uživatelů Linuxu

  2. useradd uživatel se skupinou se stejným uid a gid

  3. Nahraďte uživatele gitolite3 za git

  1. Jak nainstalovat Nextcloud s ISPConfig 3.1

  2. Přidat uživatele do skupiny v Linuxu, jak na to (s příklady)

  3. Funkce kořene uživatelské skupiny??