Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

Retourner aux forums || Retourner au forum Linux.general

Linux.general : Fais tes devoirs avant !

Posté par martoni (page perso, ) le 09 août 2006
L'attrait de l'ordinateur est tellement grand, qu'on en oubli souvent de faire ses devoirs et on y reste planté des heures. Résultat, encore plein de bulles.

Mais si c'était l'ordinateur qui prenait l'initiative de vous faire faire vos devoirs avant que vous puissiez jouer ?

Sur mon vieux 386 j'avais fabriqué un programme qui obligeait toutes personnes voulant utiliser l'ordinateur à répondre à une série de questions sur les tables de multiplications et les verbes irréguliers d'anglais. Tant que les réponses était fausses, impossible d'utiliser l'ordinateur.

Ce programme était d'une extrême simplicité et était chargé par l' autoexec.bat .

J'aimerai pouvoir faire la même chose sous ubuntu, mais en plus poser des question en fonction du login de la personne.

La programmation de se genre d'interface ne me semble pas trop compliqué. Mon problème est de trouver une manière de faire un programme bloquant une fois le login et mdp entré pour forcer a répondre aux questions.

Mon système :
Ubuntu 6.06 avec gnome (normal ;-)

--
Un jour les manchots seront les maîtres d'un monde sans pétrole gnark gnark gnark !!
> Lire le message (14 commentaires, moyenne: 1,6).  

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.

hahaha

Posté par eon2004 (Jabber id, page perso, ) le 09/08/2006 à 16:05. (lien). Évalué à 1.

Je prends!

vive le libre !

Posté par Pierre Maziere () le 09/08/2006 à 16:27. (lien). Évalué à 1.

et si tu jetais un coup d'oeil au source de gdm, kdm et autres xdm histoire d'ajouter ton morceau de code qui va bien au bon endroit, c'est a dire juste apres l'acceptation du login/mdp ?

Un debut d'idee

Posté par Mathias Bavay (page perso, ) le 09/08/2006 à 16:42. (lien). Évalué à 4.

Je me tournerais vers PAM pour faire cela: cela serait un programme qui pose les questions, etc comme module PAM.

Je n'ai jamais ecris quoi que se soit pour PAM, mais les modules listés sur http://www.kernel.org/pub/linux/libs/pam/modules.html devraient pouvoir t'aider a ecrire ton module...

Mathias

  • [^]Re: Un debut d'idee

    Posté par martoni (page perso, ) le 10/08/2006 à 07:25. (lien). Évalué à 1.

    Si j'ai bien compris ce module permet de gerer finement les utilisateurs en leurs donnant, par exemple, un temps d'ordinateur, ou en les autorisant d'utiliser l'ordinateur qu'un jour sur deux.

    hummmmmmmmm tres interessant!

    --
    Un jour les manchots seront les maîtres d'un monde sans pétrole gnark gnark gnark !!

ton propre programme dans xsession ?

Posté par symoon (page perso, ) le 09/08/2006 à 16:49. (lien). Évalué à 6.

Tu peux essayer de lancer ton programme pour remplacer par exemple gnome-session. Si le test réussit, alors gnome-session est lancé.

  • [^]Re: ton propre programme dans xsession ?

    Posté par martoni (page perso, ) le 10/08/2006 à 07:23. (lien). Évalué à 1.

    cela me semble etre la maniere la plus simple.

    merci

    --
    Un jour les manchots seront les maîtres d'un monde sans pétrole gnark gnark gnark !!
    • [^]/etc/passwd

      Posté par deadbeef () le 11/08/2006 à 01:07. (lien). Évalué à 1.

      Sinon un autre moyen serait de remplacer le shell par défault (défini dans /etc/passwd) par ton programme, qui n'autorisera la session (en lançant un shell ou X) que si toutes les questions sont correctement répondues.

      - Si c'est ok -> exec("/bin/bash")
      - Sinon -> exit(0), et on revient au prompt login/passwd.

      • [^]Re: /etc/passwd

        Posté par deadbeef () le 11/08/2006 à 01:10. (lien). Évalué à 1.

        Je rajouterai que c'est le seul moyen pour vraiment limiter l'accès, parce que le gnome-session, il se court-circuite en allant sur une console (ctrl-alt-F1).

        • [^]Re: /etc/passwd

          Posté par symoon (page perso, ) le 11/08/2006 à 07:51. (lien). Évalué à 2.

          ne pas oublier les gens à qui ce système serait destiné : des enfants :-)

          Je pense pas qu'il s'amuse à faire ctrl-alt-f1 pour ensuite faire un ssh+screen pour aller discuter sur irc :-)

          • [^]Re: /etc/passwd

            Posté par deadbeef () le 11/08/2006 à 08:36. (lien). Évalué à 1.

            Mon fils de 3 ans 1/2 sait qu'il faut faire ALT-F4 pour quitter ses jeux, alors j'imagine qu'il n'aura aucune difficulté à faire ctrl-alt-f1 quand il aura l'âge d'apprendre les verbes irréguliers en anglais :-)

            "Nature always finds a way" ......

      • [^]Re: /etc/passwd

        Posté par martoni (page perso, ) le 11/08/2006 à 13:15. (lien). Évalué à 1.

        c'est cette ligne la ?

        martoni:x:1000:1000:martoni,,,:/home/martoni:/bin/bash


        Mais est-ce que le programme peut-etre graphique ? (en X)

        --
        Un jour les manchots seront les maîtres d'un monde sans pétrole gnark gnark gnark !!
        • [^]Re: /etc/passwd

          Posté par deadbeef () le 11/08/2006 à 14:09. (lien). Évalué à 1.

          oui, c'est là, tu peux remplacer le /bin/bash par n'importe quoi. La session se ferme quand le programme en question s'arrête.
          Quand à mettre un programme graphique, je ne sais pas trop... C'est surtout utilisé quand on se logge en mode console, mais rien ne t'interdit de lancer un X ou ce que tu veux à partir du programme de login.

          • [^]Re: /etc/passwd

            Posté par deadbeef () le 11/08/2006 à 14:40. (lien). Évalué à 1.

            Je viens de faire le test, mais sans X parce que je n'ai qu'un serveur sans écran...

            J'ai fait un petit script shell appelé /usr/local/bin/montest.sh
            avec un "chmod a+rx /usr/local/bin/montest.sh"

            Le script contient:


            #!/bin/bash
            echo "Quelle est la couleur du cheval blanc d'Henri IV ?"
            read reponse
            reponse=`echo $reponse|tr "a-z" "A-Z"`
            if [[ "$reponse" == "BLANC" ]]
            then
            echo BRAVO !!
            /bin/bash
            else
            echo "MAUVAISE REPONSE"
            exit
            fi


            et j'ai modifié mon /etc/passwd comme ceci:

            test:x:1006:1006:test,,,:/home/test:/usr/local/bin/montest.sh

            (hint: avec bash 3.0, tu peux aussi faire comparaisons avec des expressions régulières, ça peut être utile pour un quizz)

avant X

Posté par Krunch (Jabber id, page perso, ) le 09/08/2006 à 17:04. (lien). Évalué à 1.

L'équivalent d'autoexec.bat il me semble que ça serait de le mettre en script d'init. Par contre ça veut dire que quelque soit la personne qui démarre l'ordinateur, il devra répondre aux questions avant même de pouvoir se logguer et que ceux qui se loggueront après n'auront pas besoin de le faire.

--
Free Softwares Users Group Arlon (Sud Luxembourg, Belgique)
pertinent, e adj. Approprié ; qui se rapporte exactement à ce dont il est question.

Revenir en haut de page || Retourner aux forums || Retourner au forum Linux.general