Précédent   Forum des professionnels en informatique > Systèmes > Linux > Système
Système Vos questions autour de l'administration système
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/04/2011, 19h50   #1
Membre à l'essai
 
Homme
Inscription : juin 2010
Messages : 10
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations forums :
Inscription : juin 2010
Messages : 10
Points : 20
Points : 20
Par défaut Exécuter script en fonction du groupe ?

J'aimerais juste savoir si il existe une commande qui permet d'exécuter des scripts en fonctions des groupes d'un utilisateur lorsqu'il se connecte ?

Par exemple :
Joe fait partie des groupes public et musique
Bar fait partie des groupes public et photos
,,,

Quand Joe se connecte :
- Montage ressources public et musique

Quand Bar se connecte :
- Montage ressources public et photos
,,,

L'idée est que tous les utilisateurs aient le même home mais voient des répertoires différents (serveur ssh)

Merci pour vos conseils
fredastair est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 29/04/2011, 20h59   #2
Expert Confirmé Sénior
 
Avatar de N_BaH
 
Inscription : février 2008
Messages : 2 070
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 2 070
Points : 4 153
Points : 4 153
OpenLDAP ?
N_BaH est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 30/04/2011, 02h12   #3
Expert Confirmé Sénior
 
Avatar de frp31
 
Homme francois
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 3 534
Détails du profil
Informations personnelles :
Nom : Homme francois
Âge : 35
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juillet 2006
Messages : 3 534
Points : 7 743
Points : 7 743
sudo permet de faire des action "root" comme le montage des disques
tu peux donc utiliser ça en appelant la commande dans le .bashrc ou le .profile de l'utilisateur concerné tout simplement...

question similaire ici : http://www.developpez.net/forums/d10...nde-mode-root/
frp31 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 30/04/2011, 10h43   #4
Membre à l'essai
 
Homme
Inscription : juin 2010
Messages : 10
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations forums :
Inscription : juin 2010
Messages : 10
Points : 20
Points : 20
Tu veux dire que je crée mes Alias dans le sudoers,
puis je les autorise à utiliser la commande mount sans saisir de mot de passe :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
User_Alias  PUBLIC = Joe, Bar
User_Alias  MUSIQUE = Joe
User_Alias  PHOTOS = Bar
 
Cmnd_Alias MNTPUBLIC  = /sbin/mount /home/ssh/public
Cmnd_Alias MNTMUSIQUE   = /sbin/mount /home/ssh/musique
Cmnd_Alias MNTPHOTOS   = /sbin/mount /home/ssh/photos
 
PUBLIC ALL=(ALL) NOPASSWD:MNTPUBLIC
MUSIQUE ALL=(ALL) NOPASSWD:MNTMUSIQUE
PHOTOS ALL=(ALL) NOPASSWD:MNTPHOTOS
et dans le .shrc (commun à tous les utilisateurs) je fais un
sudo mount /home/ssh/musique
sudo mount /home/ssh/public
sudo mount /home/ssh/photos
?

Mais ca va me sortir des erreurs de montage, par exemple pour Joe, quand la commande mount /home/ssh/photos va s'exécuter, c'est pas très propre ?

En fait je pensais qu'il y avait un .PUBLIC, .MUSIQUE et .PHOTOS comme il y a un .shrc ou .profile ?
fredastair est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 01/05/2011, 18h06   #5
Membre à l'essai
 
Homme
Inscription : juin 2010
Messages : 10
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations forums :
Inscription : juin 2010
Messages : 10
Points : 20
Points : 20
Effectivement ca marche plutôt bien ^^

Dans le fichiers sudoers (/usr/local/etc sous freebsd) j'ai mis :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
User_Alias PUBLIC = joe, bar
User_Alias MUSIC = joe
User_Alias PICTURES = bar
 
Cmnd_Alias MTPUBLIC=/usr/sbin/mount_smbfs /mnt/public,/sbin/mount /mnt/public
Cmnd_Alias MTMUSIC=/usr/sbin/mount_smbfs /mnt/music,/sbin/mount /mnt/music
Cmnd_Alias MTPICTURES=/usr/sbin/mount_smbfs /mnt/pictures,/sbin/mount /mnt/pictures
Cmnd_Alias UMT=/sbin/umount
 
PUBLIC ALL=(ALL) NOPASSWD: MTPUBLIC,UMT
MUSIC ALL=(ALL) NOPASSWD: MTMUSIC
PICTURES ALL=(ALL) NOPASSWD: MTPICTURES
j'ai modifié le fstab :
Code :
1
2
3
4
 
//ssh@FREENAS/Musique	/mnt/music	smbfs	rw,noauto	0	0
//ssh@FREENAS/Photos	/mnt/pictures	smbfs	rw,noauto	0	0
//ssh@FREENAS/Public	/mnt/public	smbfs	rw,noauto	0	0
bien sur le nsmb.conf (/etc/ sous Freebsd) contient le mot de passe du compte ssh et l@ IP de FREENAS

Et enfin j'ai créé un home pour joe et bar (le même) dans lequel j'ai modifié le .shrc :
Code :
1
2
3
4
 
sudo mount /mnt/public
sudo mount /mnt/music
sudo mount /mnt/pictures
Ca marche du tonnerre, si joe se connecte en SSH il va monter automatiquement les partages Public et Musique qui sont situés sur un serveur windows. Si bar se connecte ce sera les partages Public et Photos.

J'ai juste un souci : les points de montages sont persistants après la déconnexion des utilisateurs
J'ai bien essayé un umount /mnt/public music et pictures dans le .bash_logout mais ce n'est pas pris en compte.

Quelqu'un sait comment je pourrais automatiser la déconnexion des points de montage au moment de la déconnexion de l'utilisateur ?
fredastair est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 04/05/2011, 14h50   #6
ALT
Membre Expert
 
Avatar de ALT
 
Homme
Assistant aux utilisateurs
Inscription : octobre 2002
Messages : 940
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 52
Localisation : France, Vienne (Poitou Charente)

Informations professionnelles :
Activité : Assistant aux utilisateurs
Secteur : Service public

Informations forums :
Inscription : octobre 2002
Messages : 940
Points : 1 263
Points : 1 263
Et si dans le bashrc il y avait une comparaison du type :
Code :
if [ "$group" == "machin" ] then...
?
Ou un machin du même genre...
Bon, c'est juste une suggestion, mais je n'ai pas eu l'occasion d'essayer.
__________________
"Un peuple qui est prêt à sacrifier un peu de liberté contre un peu de sécurité, ne mérite ni l'une, ni l'autre, et finira par perdre les deux."
Attribué indistinctement à :
Thomas Jefferson
Benjamin Franklin
Albert Einstein !
ALT est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 05/05/2011, 19h08   #7
Membre à l'essai
 
Homme
Inscription : juin 2010
Messages : 10
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations forums :
Inscription : juin 2010
Messages : 10
Points : 20
Points : 20
Pour le montage des lecteurs réseau ca marche, ce que j'aimerais c'est un umount à la déconnexion de l'utilisateur.

J'avais pensé à un CRON qui tourne toutes les 5 min et démonte les lecteurs si personne n'est connecté mais ce n'est pas propre du tout.
fredastair est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 12/05/2011, 11h05   #8
Rédacteur
 
Inscription : mars 2004
Messages : 1 298
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 1 298
Points : 1 450
Points : 1 450
utiliser un fichier ~/.bash_logout permet de lancer des taches en fin de session.
__________________
Marc
Slackware for ever ......
BASH - KSH ( http://marcg.developpez.com/ksh/ )
MarcG est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 15/05/2011, 14h26   #9
Membre à l'essai
 
Homme
Inscription : juin 2010
Messages : 10
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations forums :
Inscription : juin 2010
Messages : 10
Points : 20
Points : 20
J'ai déjà essayé avec le bash_logout (avec une commande du style touch toto) mais pas de fichier toto créé à la déconnexion.

Je crois que ce fichier n'est pas utilisé avec une connexion ssh. Je vais réessayer pour être sur.
fredastair est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2011, 21h44   #10
Membre à l'essai
 
Homme
Inscription : juin 2010
Messages : 10
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations forums :
Inscription : juin 2010
Messages : 10
Points : 20
Points : 20
les commandes contenues dans le .bash_logout ne s'exécutent pas pourtant il est dit dans la majorité des forums que ce fichier est utilisé à chaque fermeture de session :

Citation:
The .bash_logout file is read whenever you log out. For example, you might want to start housekeeping tasks, such as deleting temporary files or web browser caches.
Le fichier est bien présent dans le home de l'utilisateur qui se connecte en ssh. Il contient une commande bateau qui un #touch toto mais pas de toto après la déconnexion de l'utilisateur...

J'ai du rater quelque chose mais quoi ?

Y a t'il un fichier de logs qui permet de voir ce qui se passe ?
fredastair est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2011, 22h59   #11
Expert Confirmé Sénior
 
Avatar de N_BaH
 
Inscription : février 2008
Messages : 2 070
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 2 070
Points : 4 153
Points : 4 153
Bonjour,

dans ton premier message, tu dis utiliser .shrc, c'est donc que ton interpréteur de commandes par défaut n'est pas BASH, et donc .bash_logout ne sera pas lancé en quittant la session.
N_BaH est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 16/05/2011, 22h29   #12
Membre à l'essai
 
Homme
Inscription : juin 2010
Messages : 10
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations forums :
Inscription : juin 2010
Messages : 10
Points : 20
Points : 20
Ca y est, j'ai enfin trouvé ^^

En fait, et d'après ce lien : http://docstore.mik.ua/orelly/unix/upt/ch03_02.htm , il n'y a pas de logout file pour sh (pas de .shrc_logout)

Donc il faut 'traper' la sortie du shell en indiquant quoi faire (exécuter un fichier logout maison par exemple) et ce, dans le .profile :

Code :
trap '. $HOME/.sh_logout; exit' 0
évidement ça marche aussi pour les autres shells

Voili, voilou en espérant que cela serve à d'autres
fredastair est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h25.


 
 
 
 
Partenaires

Hébergement Web