Edito
Voila voila, je refais mon infra…
Et j'ai donc envie de participer a une oeuvre commune :
Antoine.
Pub
Désolé de vous incommoder avec cela, c'est un mal aujourd'hui nécessaire. Je le souhaite juste utile, on verra.
Ceci est une ancienne révision du document !
Parmit les differentes methodes d'auth, j'ai porté mon choix sur une excessivement simple…
ln -s /usr/local/etc/passwd /var/lib/extrausers/ ln -s /usr/local/etc/group /var/lib/extrausers/ ln -s /usr/local/etc/shadow /var/lib/extrausers/
passwd: compat extrausers group: compat extrausers shadow: compat extrausers
Ceci est mon script qui me permet de mettre a jour les fichiers extras
Ils ne dupplique dans les fichiers en question que les users du groupe adlp-netuser, et pose les fichier dans /usr/local/etc/
: ce script doit etre refait en plus propre (NB ne pas travailler la tete dans le …)
#!/usr/bin/perl -w use strict; use Data::Dumper; my $group="adlp-netuser"; my $rep="/usr/local/etc/"; my $users; my $user; my $ligne; my $null; my ($gid,$grname); my %bigtab; my $fichier; my $idtab; open(FD,"getent group | grep \"^".$group.":\" |"); $ligne=<FD>; close(FD); chomp($ligne); ($null,$null,$null,$users)=split(/:/,$ligne); foreach $user (split(/,/,$users)) { # Recuperation du home'n Co open(FD,"getent passwd | grep \"^".$user.":\" |"); $ligne=<FD>; close(FD); chomp($ligne); $bigtab{passwd}{$ligne}=""; # Recuperation du pass open(FD,"getent shadow | grep \"^".$user.":\" |"); $ligne=<FD>; close(FD); if(defined($ligne)) { chomp($ligne); $bigtab{shadow}{$ligne}=""; } # Recuperation duid pr les groupes open(FD,"id $user | cut -f4 -d'=' | "); $ligne=<FD>; close(FD); chomp($ligne); foreach (split(/,/,$ligne)) { tr/\(\)/ /s; ($gid,$grname)=split(/ /); $idtab=$grname.":x:".$gid.":"; if(defined($bigtab{group}{$idtab})) { $bigtab{group}{$idtab}.=",".$user; } else { $bigtab{group}{$idtab}=$user; } } } foreach $fichier (keys(%bigtab)) { open(FD,">",$rep.$fichier); foreach(keys(%{$bigtab{$fichier}})) { if($bigtab{$fichier}{$_} eq "") { print FD $_."\n"; } else { print FD $_.$bigtab{$fichier}{$_}."\n"; } } }