Selon Olivier Thauvin <[EMAIL PROTECTED]>: [...] > > merci pour cette information. je vais poursuivre dans cette voie. je ne > > voudrais pas me planter puisqu'il s'agit de travailler sur /etc/passwd ! > > question subsidiaire : peut-on (en perl) avoir un accès direct à un > > enregistrement ? Dans le cas présent, une ligne terminée par un caractère de fin de ligne. exemple : une entrée de /etc/passwd Par accès direct, j'entend pourvoir accéder en lecture et écriture à une ligne donnée (je lis la ligne 5, traite le contenu et réécris la ligne 5) > > Ca dépends ce que tu appelle enregistrement, il y a des fonctions pour > interroger la liste des compte, sinon faut écrire un petit parser pour > l'/etc/passwd, ce qui est très simple, encore que des modules sur CPAN > doivent davoir faire. > > J'avais ecrit un script dans le temps pour extraire les comptes/group de 500 > ou supérieur et les recopier dans des chroots. Cf document attaché. merci pour ce script qui, s'il ne répond pas tout-à-fait à mon besoin, contient du code réutilisable, et mieux écrit que le mien (je débute en perl !)
Plus de précision sur ce que je veux faire : récupérer la base de comptes d'un domaine NT (avec samdump), parser le fichier pour recréer sur le serveur linux : - les comptes des utilisateurs - les groupes - le groupmap samba - mettre les utilisateurs dans les groupes Pour l'instant, cela fonctionne, en utilisant les commandes système luseradd et consorts (à cause des majuscules et autres caractères dans les noms des comptes NT) et gpasswd pour l'ajout des utilisateurs dans les groupes, les utilisateurs samba étant créés par écriture directe d'un fichier au format smbpasswd puis importation dans la base tdbsam avec pdbedit -i Mais c'est horriblement long (environ 20 mn pour 1500 comptes), ce temps étant dû pour l'essentiel aux commandes luseradd, lgroupadd et gpasswd. D'où l'idée d'écrire directement dans les fichiers concernés. Le problème : conserver les utilisateurs et groupes système. nota : tous les utilisateurs et groupes sont importés et créés en local avec un uid/gid >= 10000 (donc pas de confusion avec les utilisateurs et groupes système). cette importation doit pouvoir se faire plusieurs fois, c-a-d supprimer le résultat d'une importation précédente (pour garder la synchro NT/linux). Si tu as des idées géniales pour cela... -- CC
____________________________________________________ Want to buy your Pack or Services from Mandriva? Go to http://store.mandriva.com Join the Club : http://www.mandrivaclub.com ____________________________________________________
