Eteindre le PC debian en tant qu'utiliseur

Résolu/Fermé
morphinux Messages postés 185 Date d'inscription samedi 31 mars 2007 Statut Contributeur Dernière intervention 29 juin 2020 - 12 juil. 2007 à 00:07
mamiemando Messages postés 33266 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 16 septembre 2024 - 17 août 2007 à 19:51
Salut,

Il y a un truc que je n comprend pas sur debian, c'est l'extinction du PC.
En graphique, je dois aller dans bureau ------>eteindre puis un popup me propose de fermer , rebooter etc et tout ça en user simple.

Par contre quand je suis en console et que je souhaite fermer le PC depuis la console, je fais un shutdown -h now en user simple, il refuse ? il faut que je sois en root. Pourriez-vous m'expliquer la cohérence la-dedans? Suis bête , je sais.

pourquoi voudrais-je eteindre en console en simple user, tout simplement parceque j'ai configuré ma télécommande et mon capteur IR avec LIRC et pour diverses applications et que je souhaite ajouter à mon fichier .lircrc dans mon /home/morphinux une section pour fermer le pc avec la télécommande, un truc comme ça en faite :

begin    
    button = 1
    prog = irexec
    repeat = 0
    config = mythfrontend
end

begin 
    button = av
    prog   = irexec
    repeat = 0
    config = thunderbird
end

begin 
    button = power
    prog   = irexec
    repeat = 0
    config = shutdown -h now
end


merci d'avance pour votre aide
A voir également:

4 réponses

mamiemando Messages postés 33266 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 16 septembre 2024 7 777
12 juil. 2007 à 00:47
L'explication est simple. Ton gestionnaire de connexion (kdm, gdm) est lancé par root. Quand tu te loggues en utilisateur tu ouvres une session utilisateur. En cliquant sur arrêter le système, tu fais en fait appel à kdm qui lui à les droits pour faire un halt ou un shutdown. Cela suppose en particulier que root ait autoriser dans la configuration du gestionnaire de connexion (cf centre de contrôle KDE par exemple) les utilisateurs à arrêter le système.

Voilà pourquoi tu peux arrêter ton PC via les menus de ton interfaces graphique (root t'en a donné le droit). Cependant les commandes halt et shutdown vérifient systématiquement que c'est bien root qui les lance.

Tu peux cependant faire croire à ton système qu'une commande est lancée par root bien que ce soit un utilisateur qui l'ait lancé (sudoer). Typiquement
http://www.lea-linux.org/cached/index/Arr%C3%AAter_Windows_et_son_routeur_Linux.html

Bonne chance
1
morphinux Messages postés 185 Date d'inscription samedi 31 mars 2007 Statut Contributeur Dernière intervention 29 juin 2020 1
12 juil. 2007 à 01:50
Salut,

Merci pour ta réponse.

Avant de voir ta réponse, j'ai testé une solution qui fonctionne ;) mais je ne sais pas si l'extinction est très propre.

1-J'ai modifié /etc/sudoers à l'aide de "visudo" comme suit :

# /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the man page for details on how to write a sudoers file.
#

Defaults        env_reset

# Host alias specification
Host_Alias ICI = localhost, debian


# User alias specification
User_Alias HALTUSERS = morphinux
User_Alias FRAXINUS = morphinux

# Cmnd alias specification
Cmnd_Alias STOPPC = /sbin/halt, /sbin/reboot, /sbin/shutdown -*, /sbin/shutdown -r , /usr/sbin/xfsm-shutdown-helper, /usr/local/libexec/xfsm-shutdown-helperCmnd_Alias UTILE = /usr/sbin/ntpdate

# User privilege specification
root    ALL=(ALL) ALL
HALTUSERS ICI= NOPASSWD: STOPPC
MORPHINUX ICI = NOPASSWD: UTILE


Puis j'ai ajouté dans /home/morphinux/.lircrc une section :

begin    
    button = 1
    prog = irexec
    repeat = 0
    config = mythfrontend
end

begin 
    button = av
    prog   = irexec
    repeat = 0
    config = thunderbird
end

begin 
    button = power
    prog   = irexec
    repeat = 0
    config = sudo shutdown -h now
end


ensuite quand j'appuie sur ma télécommande sur le bouton "power", ça s'eteint mais relativement brutalement. En fait les logs de fermeture n'apparaissent plus. J'ai quelques lignes avec des messages d'erreurs et le prompt du login et ça s'eteint ...suis pas sûr que ce que j'ai pompé sur le net soit très propre.

Il va falloir que je comprenne les lignes que j'ai inséré dans /etc/sudoers.

Sinon, j'ai été sur ton lien, je vais testé demain ...

Merci bonne nuit
0
tlep Messages postés 596 Date d'inscription jeudi 21 février 2002 Statut Membre Dernière intervention 25 octobre 2012 118
16 août 2007 à 22:56
Bonsoir,

je rebondis sur ta question; j'ai trouvé les infos suivantes :
http://doc.domainepublic.net/linux/faq_debian-user/debfr-faq021.html#toc156

J'ai trouvé ton post parce que je m'intéresse à la possibilité de télécommander l'ordinateur sous Debian;
Peux-tu indiquer quel périphérique infrarouge tu utilises, et quel soft (licr seulement ?)

Merci ;-)
0
mamiemando Messages postés 33266 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 16 septembre 2024 7 777
17 août 2007 à 00:44
Yep c'est le paquet lirc. Il a juste reconfigurer le rôle des touches dans ~/lircrc pour associer le bouton power à la commande shutdown. Comme cette commande est reservé à root il a installé le paquet sudo et modifié /etc/sudoers afin que son utilisateur morphinux ait le droit de la lancer.

Je n'ai pas répondu à l'époque mais sa méthode est la seule manière propre qui me vient à l'esprit, c'est pour ça que je l'avais orienté à l'époque vers les sudoers.
0
tlep Messages postés 596 Date d'inscription jeudi 21 février 2002 Statut Membre Dernière intervention 25 octobre 2012 118
17 août 2007 à 19:26
Je peux donc acheter un dongle irda et télécommander mon ordi, mais est-ce que çà marche avec n'importe quelle télécommande ?
Je vois qu'il y a dans le fichier de conf :

begin
button = power

begin
button = av

etc...

Ces infos concernant "button" sont-elles retournées par les logs quand on appuie sur telle ou telle touche d'une télécommande ?
0
mamiemando Messages postés 33266 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 16 septembre 2024 7 777
17 août 2007 à 19:51
Le mieux ce serait de regarder sur le site de lirc ou de chercher un tutoriel. A priori un certain nombre de boutons sont directement reconnus, pour les autres il faut configurer lircd.
0