Les forums de JeuxVideo.com Taille normale Grande taille

Forum : Linux

Ajouter ce forum à mes forums préférés Ajouter ce forum à mes forums préférés

Sujet : « Limitation horaires »

Créer un nouveau sujet   Liste des sujets
Alerte mail  Répondre  Rafraichir
  • Blacksword Voir le profil de Blacksword
  • Posté le 21 février 2008 à 21:41:52 Avertir un administrateur
  • Bonsoir,

    J'installe Ubuntu sur l'ordi de mon frere, et la seule exigence de mes parents est qu'ils puissent imposer une contrainte horaire (je m'occupe de la manipulation). Je cherche donc un moyen de donner des limite d'heures a un utilisateur... apres recherche, je ne trouve qu'un script sur le site www.ubuntu-fr.org, mais ca me semble un peu "bidouillage" comme solution, n'existe-t-il pas un fichier du genre /etc/times ou les horaires de chaque utilisateur/groupe seraient inscrits ?

    Merci par avance a ceux qui ont deja experimente les limitations horaires et qui me repondront, bonne fin de soiree :)
  • Lien permanent
  • Chris_27 Voir le profil de Chris_27
  • Posté le 21 février 2008 à 22:16:18 Avertir un administrateur
  • Si c'est l'ordi *de* ton frère, tu ne peux pas simplement faire un shutdown à l'heure X (commande at) et à la fin du boot si il tente de booter pendant la nuit (test avec "date =%R") ?
  • Lien permanent
  • Chris_27 Voir le profil de Chris_27
  • Posté le 21 février 2008 à 22:54:36 Avertir un administrateur
  • Tiens, je viens de repenser à toi :

    Tu as la commande who pour savoir si un utilisateur est logué à un moment donné. Ça te donne toutes les personnes loguées et comment elles sont loguées :

    chris@tarsonis:/var/log$ who
    chris tty2 2008-02-21 22:52 :d) je suis logué sur tty2 (mode console)
    root tty3 2008-02-21 22:53 :d) root est logué sur tty3 (mode console)
    chris tty7 2008-02-21 21:21 (:0) :d) chris est logué sur tty7 (le (:0) permet de savoir que c'est le mode graphique)
    chris pts/0 2008-02-21 22:48 (:0.0)
    chris pts/1 2008-02-21 21:23 (:0.0)
    chris pts/2 2008-02-21 22:12 (:0.0) :d) j'ai 3 xterms ouverts
  • Lien permanent
  • Blacksword Voir le profil de Blacksword
  • Posté le 21 février 2008 à 23:00:54 Avertir un administrateur
  • Merci d'avoir repondu :)
    En fait, je suis totalement incapable de creer un script pour faire quoi que ce soit, je sais utiliser des commandes, c'est tout... je crois qu'on peut programmer une heure ou un temps avant l'extinction, mais je n'en sais pas plus... Ce que je cherche, c'est un programme, (ou un script deja existant) ou bien un fichier me permettant de modifier tout ca... voila, tu as une vision plus claire de mon niveau, et j'espere qu'une solution existe, car je suis totalement incapable de creer un script pour automatiser tout ca. :ok:
  • Lien permanent
  • Chris_27 Voir le profil de Chris_27
  • Posté le 21 février 2008 à 23:24:33 Avertir un administrateur
  • Si tu sais utiliser des commandes, tu sais comment créer un script : il suffit de mettre ta liste de commandes dans un fichier. :-)

    Suivant ce que tu cherches à faire précisément, ça doit pas être bien sorcier de trouver une commande ad hoc.

    Cela dit, si quelqu'un connaît un soft tout fait qui te convient, je suis aussi preneur. :-)
  • Lien permanent
  • DarKwings Voir le profil de DarKwings
  • Posté le 22 février 2008 à 00:26:17 Avertir un administrateur
  • sudo apt-get install cron
    sudo echo "*/5 22-8 * * * /sbin/init 0" >> /etc/crontab

    la première installe cron, un démon de planification de taches, la deuxième paramètre cron pour que il éteigne le pc toutes les 5 minutes entre 22 heures et 8 heures :hap:
  • Lien permanent
  • DarKwings Voir le profil de DarKwings
  • Posté le 22 février 2008 à 00:30:28 Avertir un administrateur
  • mais on peut remplacer "/sbin/init 0" par l'adresse d'un script testant avec who si un user est connecté, et qui ferme sa session :hap:
  • Lien permanent
  • Chris_27 Voir le profil de Chris_27
  • Posté le 22 février 2008 à 10:11:34 Avertir un administrateur
  • Ouais, c'est pas con ça. J'ai tellement l'habitude d'utiliser at pour m'envoyer des notify à des moments précis que j'en oublie qu'il y a cron pour les tâches régulières. :honte:
  • Lien permanent
  • Sankukai Voir le profil de Sankukai
  • Posté le 22 février 2008 à 13:31:05 Avertir un administrateur
  • Il y a une solution plus propre que ça : passer par PAM.

    En utilisant le module pam_time de PAM tu peux restreindre de façon simple et souple l'accès à certains services.

    Supposons que le login de ton frère soit brother.
    En ajoutant ceci dans le fichier /etc/security/time.conf :
    login ; * ; !brother ; MoTuWeThFr2200-0800
    http ; * ; !brother ; MoTuWeThFr2200-0800

    Il faut impérativement qu'il y ait un retour à la ligne à chaque fois et une ligne vide à la fin du fichier.

    Tu interdis à l'utilisateur brother de se loguer et d'aller sur le net en semaine entre 22h et 8h.

    Simple et propre ! :o))
  • Lien permanent
  • Chris_27 Voir le profil de Chris_27
  • Posté le 22 février 2008 à 13:56:15 Avertir un administrateur
  • Ça ne l'empêche pas de jouer à supertux par contre. :sournois:
  • Lien permanent
  • Sankukai Voir le profil de Sankukai
  • Posté le 22 février 2008 à 14:04:56 Avertir un administrateur
  • Ben si il peut pas se logguer, il aura du mal à jouer. :o))
  • Lien permanent
  • K-L-K Voir le profil de K-L-K
  • Posté le 22 février 2008 à 14:11:10 Avertir un administrateur
  • c'est cool votre truc là.
    j'adore linux :lol:
    PAM est dans les dépots? urpmi pam? (suis sous mandriva moi)
  • Lien permanent
  • Chris_27 Voir le profil de Chris_27
  • Posté le 22 février 2008 à 14:18:48 Avertir un administrateur
  • Sankukai : Tu m'arrêtes si je dis une bêtise (moi et PAM ça fait deux :o)) ) mais je comprends "login" comme appel à la commande login. Donc ça se passe au moment où on entre le mdp dans {x,k,g}dm. Donc s'il se logue à 21h59...

    K-L-K : LinuxPAM fait parti des trucs fournis d'office dans toutes les vraies distributions (comme cron d'ailleurs). :-)
  • Lien permanent
  • Sankukai Voir le profil de Sankukai
  • Posté le 22 février 2008 à 14:29:01 Avertir un administrateur
  • Chris_27> Non t'as raison, j'avais pas pensé à ça.
    Il faut effectivement utiliser un peu Cron pour forcer un logout à 22h00.
    Un mix entre Cron et pam est, je pense, le plus subtil (faut avouer que foutre un reboot toutes les 5mn en Cron c'est un peu goret :o)) )
  • Lien permanent
  • K-L-K Voir le profil de K-L-K
  • Posté le 22 février 2008 à 14:33:25 Avertir un administrateur
  • si je comprend bien le mieu est d'utiliser cron pour une fermeture de l'ordinateur automatic a une heure précise puis de dire a Pam qu'a l'heure où cron prend effet d'enpécher les user de se logguer?
    comment mettre 0H30 sur cron?
  • Lien permanent
  • Chris_27 Voir le profil de Chris_27
  • Posté le 22 février 2008 à 14:37:47 Avertir un administrateur
  • K-L-K : man crontab (je ne sais pas répondre à la question sans le man, de toute façon)

    Blacksword : tu pourras t'en sortir avec ça ?
  • Lien permanent
  • K-L-K Voir le profil de K-L-K
  • Posté le 22 février 2008 à 14:44:02 Avertir un administrateur
  • On Red Hat systems, crond now supports access control with PAM - see pam(8). A PAM configuration file for crond is installed in /etc/pam.d/crond . crond loads the PAM environment from the pam_env module, but these can be overriden by settings in the crontab file.

    cela veu dire qu'il faut toucher le fichier /etc/pam.d/crond pour les Red Hat? (c'est une version linux Red Hat?)
  • Lien permanent
  • Chris_27 Voir le profil de Chris_27
  • Posté le 22 février 2008 à 14:58:53 Avertir un administrateur
  • Red Hat c'est les gens qui font fedora.

    Mais à mon avis, tu n'as pas besoin de te casser les dents sur l'interaction subtile qu'il existe entre PAM et cron. :-)

    En vrai, PAM permet de contrôler tout un tas de trucs via des fichiers dans /etc/pam.d/ . En l'occurence, /etc/pam.d/crond doit contenir des règles dictant qui a le droit d'utiliser cron/crond sur ta machine, et qui ne l'a pas. Ce n'est donc pas directement lié à ce qu'on cherche à faire ici.
  • Lien permanent
  • DarKwings Voir le profil de DarKwings
  • Posté le 22 février 2008 à 15:48:50 Avertir un administrateur
  • C'est pas un reboot, pour un reboot ça serait init 6 :o))
    Moi ce que je fait c'est un shutdown.
    Et l'éteindre c'est mieux que faire un logout car c'est plus rapide de se reconnecter que de booter....

    Pour minuit 30 ça se fera en 2 lignes:
    sudo echo "30-59/3 0 * * * /sbin/init 0" >> /etc/crontab
    sudo echo "*/3 1-8 * * * /sbin/init 0" >> /etc/crontab

    la première pour la tranche de minuit 30 a minuit 59, et l'autre de 1 heure a 8 heures :-p

    Puis la j'ai fait toutes les 3 minutes, c'est mieux :hap:

    C'est vrai qu'il pourra se loguer, mais un boot toutes les 3 minutes c'est ennuyant a force :hap:
  • Lien permanent
  • Chris_27 Voir le profil de Chris_27
  • Posté le 22 février 2008 à 16:03:15 Avertir un administrateur
  • Moi j'aime bien l'intervention de pam pour empêcher à l'utilisateur de se loguer. Ce qui me dérange avec le shutdown/reboot, c'est que ça peut empêcher de faire certaines choses comme du gros calcul (... bon, ok, comme du p2p... :o)) )
  • Lien permanent
Alerte mail  Répondre  Rafraichir

Sujet : « Limitation horaires »

Créer un nouveau sujet   Liste des sujets

Flux RSS du sujet "Limitation horaires"