Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 19/10/2009, à 21:44

slowmachine

Script d'ajout d'utilisateurs

Je voudrais savoir s'il est possible d'ajouter plusieurs comptes utilisateurs à l'aide d'un script qui automatiserait la tâche. Les utilisateurs devraient être placés dans différents dossiers du répertoire /home. Si possibles le script serait en mesure de trouver tous les paramètres de création de compte (nom d'utilisateur, mot de passe, répertoire) à l'intérieur d'un fichier texte ou d'un tableur par exemple.

Merci de votre aide.

Hors ligne

#2 Le 20/10/2009, à 05:24

hartman

Re : Script d'ajout d'utilisateurs

Salut,

Je pense que c'est tout à fait possible.
Si ton fichier source contient:
nom prénom password

, alors on peut très bien créer un login avec la première lettre du prénom suivi du nom (voir même compliquer la tache avec des logins de max 8 caractères en vérifiant les prénom composés).
Le home directory aura le même nom que le compte.

De plus, si ta liste est longue, on peut mettre ça dans un while sous la forme:

While read line; do
// script pour création de user //
done < liste_user.txt

Donc pour répondre à ta question, oui je pense que c'est tout à fait possible.


P4 2.8Ghz 32bits / 1Go de RAM / GeForce FX5700LE.
Ubuntu Dapper Drake et Gutsy gibbon
Documentation sur Ubuntu, pour les débutants voir moins débutant :P

Hors ligne

#3 Le 09/01/2010, à 16:23

inscriptiond

Re : Script d'ajout d'utilisateurs

Bonjour;
Je suis débutant en ubuntu et j'aimerais bien si quelqu'un pourrait m'aider de créer un script permettant d'ajouter des utilisateurs, groupe, mot de passe d'une façon automatisée à partir d'un fihicer list.csv qui contient sad Nom, prenom, date de naissance, poste,...)
Le nom d'utilisateur = nom concaténé avec 2 lettres du prénom
mot de passe = année de naissance.
Le groupe dont il appartient un utilisateur = nom du poste
Je vous remercier d'avance pour votre collaboration

Hors ligne

#4 Le 12/01/2010, à 23:05

hartman

Re : Script d'ajout d'utilisateurs

Ben c'est réalisable, après le mot de passe = année de naissance, c'est une grosse faille je trouve, mais bon ^^.

Il y a cependant plusieurs choses à prendre en compte, et la première c'est les noms composée. Voici un exemple de fichier csv que j'ai créé en respectant ce que tu veux:
"dupont","alfred",18051965,"Manchot"
"dupond","jean-pierre",26121971,"Manchot"

Il est assez facile d'extrait chacun de ces paramètres.
Pour le nom, ca nous donne:

cat test.csv | cut -d "," -f1 | sed -s 's/"//g'

En gros, on affiche les lignes du fichier en prenant la première colonne en amont du délimiteur "," grace à la commande cut puis un enlève les "" avec la commande sed.

Le prénom:

cat test.csv | cut -d "," -f2 | sed -s 's/"//g'

la date de naissance:

cat test.csv | cut -d "," -f3 | sed -s 's/"//g'

Et le type de poste:

cat test.csv | cut -d "," -f4 | sed -s 's/"//g'

(PS: Je ne script que très rarement, donc dans le sed, y a peut-être mieux ^^).

Pour faire un script qui match toutes les lignes, on pourra utiliser quelque chose dans ce style:

while read line; do echo Nom du User: $line | cut -d "," -f1 | sed -s 's/"//g'; done < test.csv

Qui donne:

Nom du User: dupont
Nom du User: dupond

Donc en gros, extraire les infos et les passer en paramètre de la commande adduser, c'est pas le problème.
Maintenant, il faut développer une fonction qui détecte un prénom composé et qui prend au mieux les 2 premières lettres de chaque partie (ici ca donnerai jpdupond).

Une fois que ce sera fait, ne devrait tu pas limiter le nombre de caractère pour le login?
Il y a des gens avec des Nom à rallonge, c'est peut-être pas super cool (Sous Linux je ne connais pas la limitation, mais sous HP-UX, j'ai cru entendre une fois que la limite était de 8 caractère, bon OK t'est pas sous HP-UX, mais quand même tongue).

Pour finir, une fois que tout ça est dans la boite, qu'est ce que tu en fait de ces comptes ?
Des accès FTP, ssh, etc ...?

En espérant t'avoir aidé un peu ^^

Good Luck.

Dernière modification par hartman (Le 12/01/2010, à 23:08)


P4 2.8Ghz 32bits / 1Go de RAM / GeForce FX5700LE.
Ubuntu Dapper Drake et Gutsy gibbon
Documentation sur Ubuntu, pour les débutants voir moins débutant :P

Hors ligne