[ck] Pas les droits pour monter cle USB en user. (résolu)

Questions et astuces concernant l'installation et la configuration d'archlinux
Avatar de l’utilisateur
Anghirrim
Elfe
Messages : 701
Inscription : mar. 28 févr. 2012, 11:09
Localisation : Loire-Atlantique

[ck] Pas les droits pour monter cle USB en user. (résolu)

Message par Anghirrim »

Bonsoir à tous,

Je viens de réaliser une installation d'Arch sur mon eeepc 701, avec une netinstall de base, puis openbox lancé par mon .xinitrc.

J'ai dbus lancé avec mes daemons dans le rc.conf et gnome-settings-daemon d'installé et lancé via mon autostart.

Seulement, malgré tout ca, dès que je branche une clé USB, impossible de la monter en tant qu'utilisateur (je fais partie des groupes wheel, root et storage). Si je lance pcmanfm ou thunar en tant que root, alors là pas de souci.

Avec ma clé montée, si je lance un:

Code : Tout sélectionner

ls -l /media
Seul l'utilisateur root a tous les droits, mais le groupe root n'en a aucun.

J'avoue que je sèche. J'ai parcouru le wiki et rien... peut-être un poblème de consolekit policy?
Dernière modification par Anghirrim le mer. 16 mai 2012, 20:42, modifié 1 fois.
Optiplex 3060 Micro Intel© Core™ i5-8500T, 16Go RAM, Arch Linux Cinnamon + Windows 10
Asus X53S, Linux Mint Cinnamon
Avatar de l’utilisateur
Frarch
Daikyu
Messages : 79
Inscription : mar. 08 juin 2010, 10:49
Localisation : /boot

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par Frarch »

Bonsoir !

Essai de lancer ta session dans ton ~/.xinitrc :

Code : Tout sélectionner

exec dbus-launch openbox-session
Linux 3.0-ARCH (i686) - OpenBox/Thunar
Avatar de l’utilisateur
karhu
Maître du Kyudo
Messages : 1215
Inscription : lun. 27 sept. 2010, 14:32
Localisation : Ile de France

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par karhu »

Pour info voir, dans un premier temps : http://forums.archlinux.fr/topic10997.html
S'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
Avatar de l’utilisateur
Anghirrim
Elfe
Messages : 701
Inscription : mar. 28 févr. 2012, 11:09
Localisation : Loire-Atlantique

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par Anghirrim »

Déjà lu karhu, mais merci.

Je vais tenté et ça ne change rien.

Voilà donc mon .xinitrc avec les modifs que vous m'avez données.

Code : Tout sélectionner

#!/bin/sh
#
# ~/.xinitrc
#
# Executed by startx (run your window manager from here)

if [ -d /etc/X11/xinit/xinitrc.d ]; then
  for f in /etc/X11/xinit/xinitrc.d/*; do
    [ -x "$f" ] && . "$f"
  done
  unset f
fi

# exec gnome-session
# exec startkde
# exec startxfce4
# ...or the Window Manager of your choice
#exec ck-launch-session openbox-session
exec dbus-launch openbox-session
Optiplex 3060 Micro Intel© Core™ i5-8500T, 16Go RAM, Arch Linux Cinnamon + Windows 10
Asus X53S, Linux Mint Cinnamon
Avatar de l’utilisateur
karhu
Maître du Kyudo
Messages : 1215
Inscription : lun. 27 sept. 2010, 14:32
Localisation : Ile de France

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par karhu »

Pour moi dbus est lancé comme deamon dans rc.conf et openbox juste par : exec openbox-session dans ~/.xinitrc (modification dans slim bien-sûr :wink: ).
S'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
Avatar de l’utilisateur
Anghirrim
Elfe
Messages : 701
Inscription : mar. 28 févr. 2012, 11:09
Localisation : Loire-Atlantique

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par Anghirrim »

Effectivement, pour moi aussi.

J'ai testé les deux, d'abord sans, puis avec dbus-launch dans mon .xinitrc. Mais aucun effet dans les deux cas.

Sinon n'utilisant pas Slim, j'imagine que je n'ai besoin de rien d'autre non?

Ah au fait, du coup si ck-launch-session n'est plus requis, je peux désinstaller consolekit?? Tant que policykit est présent, Openbox devrait fonctionner?

Au fait, j'ai modifié aussi mon /etc/inittab pour lancer mon ~/.xinitrc automatiquement.

Du coup ça donne pour un runlevel 5:

Code : Tout sélectionner

x:45:once:/bin/su thomas -l -c "/bin/bash --login -c startx >/dev/null 2>&1"
Optiplex 3060 Micro Intel© Core™ i5-8500T, 16Go RAM, Arch Linux Cinnamon + Windows 10
Asus X53S, Linux Mint Cinnamon
Avatar de l’utilisateur
karhu
Maître du Kyudo
Messages : 1215
Inscription : lun. 27 sept. 2010, 14:32
Localisation : Ile de France

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par karhu »

Je viens d'ouvrir une session sous Openbox. Il y a du changement et je n'arrive pas à monter un disque USB. lsusb ne le voit pas non plus !!
Changement d'environnement (xfce4) et celà redevient possible :?:
Désolé mais je ne vois pas, je cherche un peu.
S'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10711
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par FoolEcho »

Je pense que vous vous «confusionnez» (j'espère ne pas en rajouter dans la suite... on finit par s'y perdre ^^). :copain:

Depuis un startx, tu as plusieurs options pour ton .xinitrc:
Soit:

Code : Tout sélectionner

if [ -d /etc/X11/xinit/xinitrc.d ]; then
  for f in /etc/X11/xinit/xinitrc.d/*; do
    [ -x "$f" ] && . "$f"
  done
  unset f
fi

exec openbox-session
Pas de consolekit donc (par contre dbus-launch est lancé par le if, mais ça n'empêche qu'il le faut en service dans le rc.conf) et du coup, ça doit passer par une demande d'autorisation pour monter ta clé.

Ou:

Code : Tout sélectionner

exec ck-launch-session dbus-launch openbox-session
et là, la session consolekit doit faire en sorte de te monter automatiquement ta clé.

@karhu: la confusion vient de ce que certains environnements lancent (comme xfce4) ou pas (openbox), consolekit et/ou dbus... quand ça ne passe pas par le gestionnaire de connexion (gdm, kdm, etc. et dernièrement slim) :-P
«The following statement is not true. The previous statement is true.» :nage:
Avatar de l’utilisateur
Anghirrim
Elfe
Messages : 701
Inscription : mar. 28 févr. 2012, 11:09
Localisation : Loire-Atlantique

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par Anghirrim »

FoolEcho,

Tu fais référence à ce passage du Wiki?
Note: If you derived your ~/.xinitrc from
/etc/skel/.xinitrc, it will have a snippet at the top that sources the scripts in
/etc/X11/xinit/xinitrc.d/, including
/etc/X11/xinit/xinitrc.d/30-bus, which thus starts dbus before ConsoleKit: this causes bug FS#25031, since it is necessary to launch dbus after ConsoleKit, or you will have
authorization problems when mounting drives.

As a temporary workaround you can edit the snippet in ~/.xinitrc as follows:

Code : Tout sélectionner

if [ -d /etc/X11/xinit/xinitrc.d ]; then
  for f in /etc/X11/xinit/xinitrc.d/*; do
    # Do not launch dbus before ConsoleKit (FS#25031)
    #[ -x "$f" ] && . "$f"
    [ "$f" -ne "/etc/X11/xinit/xinitrc.d/30-dbus" ] && [ -x "$f" ] && . "$f"
  done
  unset f
fi
This will let you properly start dbus after ConsoleKit, follow the article of your Window Manager or Desktop Environment for detailed instructions.
Du coup, quel est la fonction de ce if? Lancer tous les services présents dans /etc/X11/xinit/xinitrc.d/ ?

Parce que si ça n'est pas "très" important, alors comme tu le dis, un simple

Code : Tout sélectionner

exec ck-launch-session dbus-launch openbox-session
devrait suffire. Mais là, à quoi sert le dbus-launch s'il est déjà dans mes daemon du rc.conf? A le relancer après consolekit pour éviter le bug?

PS: Ta proposition de ~/.xinitrc avec le if puis exec openbox-session ne résoud pas mon problème.

Lien vers la page du bug
Optiplex 3060 Micro Intel© Core™ i5-8500T, 16Go RAM, Arch Linux Cinnamon + Windows 10
Asus X53S, Linux Mint Cinnamon
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10711
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par FoolEcho »

Anghirrim a écrit :Mais là, à quoi sert le dbus-launch s'il est déjà dans mes daemon du rc.conf? A le relancer après consolekit pour éviter le bug?
Dans le rc.conf démarre le service (dbus-daemon), dbus-launch est une session de ce service (une instance), lequel peut-être démarré via le if/30-dbus (pour les problèmes autour de consolekit/dbus que tu cites, je n'ai jamais compris pourquoi ça foirait parfois).
Anghirrim a écrit :PS: Ta proposition de ~/.xinitrc avec le if puis exec openbox-session ne résoud pas mon problème.
... bizarre... :?
Et la seule ligne complète ?
Anghirrim a écrit :Si je lance pcmanfm ou thunar en tant que root, alors là pas de souci.
J'avais oublié ça, au fait... Du coup, je me demande si tu n'as pas pourri ton home entre-temps. Si find /home/ton_user -user root te renvoie quelque chose (hors .gvfs ou truc dans le genre), regarde les sujets liés à find/chown/user/root pour corriger le tir.
«The following statement is not true. The previous statement is true.» :nage:
Avatar de l’utilisateur
Anghirrim
Elfe
Messages : 701
Inscription : mar. 28 févr. 2012, 11:09
Localisation : Loire-Atlantique

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par Anghirrim »

Non non, pas pourris mon home, j'ai fait la bêtise une fois, maintenant, tout m'appartient. J'ai toujours lancé su - pour passer en root. Et j'ai vérifié récemment, rien n'appartient à root. (je vais re-vérifier par acquis de conscience).

Je vais tenter la seule ligne complète ce soir et je te dis si ça fonctionne.

Sinon, je vais tenter le "workaround" du Wiki.
Optiplex 3060 Micro Intel© Core™ i5-8500T, 16Go RAM, Arch Linux Cinnamon + Windows 10
Asus X53S, Linux Mint Cinnamon
Silejonu
Daikyu
Messages : 74
Inscription : ven. 05 août 2011, 13:47

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par Silejonu »

N'as-tu pas de ligne "ck-launch-session" dans ton slim.conf ?
Si c'est le cas, essaie de la supprimer, je viens de voir ça dans un autre sujet.
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10711
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par FoolEcho »

@Silejonu: Anghirrim n'utilise pas slim mais lance son .xinitrc depuis l'inittab.
«The following statement is not true. The previous statement is true.» :nage:
Silejonu
Daikyu
Messages : 74
Inscription : ven. 05 août 2011, 13:47

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par Silejonu »

Oup's, oui, c'est vrai, pardon.
J'avais lu tous les posts en un coup, et j'y suis revenu plus tard, je m'en souvenais plus. :)
Avatar de l’utilisateur
Anghirrim
Elfe
Messages : 701
Inscription : mar. 28 févr. 2012, 11:09
Localisation : Loire-Atlantique

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par Anghirrim »

Bon j'ai testé et avec un .xinitrc comme ca:

Code : Tout sélectionner

if [ -d /etc/X11/xinit/xinitrc.d ]; then
  for f in /etc/X11/xinit/xinitrc.d/*; do
    # Do not launch dbus before ConsoleKit (FS#25031)
    #[ -x "$f" ] && . "$f"
    [ "$f" -ne "/etc/X11/xinit/xinitrc.d/30-dbus" ] && [ -x "$f" ] && . "$f"
  done
  unset f
fi

exec openbox-session
ou

Code : Tout sélectionner

exec ck-launch-session dbus-launch openbox-session
rien ne fonctionne... je suis un poil perplexe là.

Sinon la commande:

Code : Tout sélectionner

find /home/thomas -user root
ne me retourne rien.
Optiplex 3060 Micro Intel© Core™ i5-8500T, 16Go RAM, Arch Linux Cinnamon + Windows 10
Asus X53S, Linux Mint Cinnamon
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10711
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par FoolEcho »

Anghirrim a écrit :exec ck-launch-session dbus-launch openbox-session
Mouais, alors j'ai testé et effectivement, en démarrant depuis l'inittab, ça ne fonctionne pas pour ce qui a trait à consolekit (donc pas d'extinction/redémarrage/etc. possible et pas de montage automatique des clés non plus... on peut les monter via mots de passe)... ck-list-session indique que la session n'est ni active, ni locale... Du coup, je ne pige pas... :|


EDIT:
Apparemment, consolekit n'aime pas quand ça passe par l'inittab: Start_X_at_Boot .
Essaie de voir si ce qui est indiqué sur le 4è post te convient: https://bbs.archlinux.org/viewtopic.php?id=112768 ... ou alors tu peux contourner en installant un gestionnaire de connexion + connexion automatique.
«The following statement is not true. The previous statement is true.» :nage:
Avatar de l’utilisateur
Anghirrim
Elfe
Messages : 701
Inscription : mar. 28 févr. 2012, 11:09
Localisation : Loire-Atlantique

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par Anghirrim »

Bah sur mon autre ordi où je tourne effectivement avec LXDM (le temps de la transition Gnome/Openbox) et login automatique via modification du /etc/lxdm/lxdm.conf, je n'ai pas ce souci.

Concernant l'extinction/redémarrage sur mon eeepc, j'ai résolu le souci en mettant ça dans un /etc/polkil-1/localauthority/50-local.d/org.freedesktop.consolekit.pkla.

Donc pour résumer (et clarifier pour ceux qui prennent le sujet en cours ou qui ont le même souci):

- Consolekit gère les autorisations utilisateur pour le montage automatique et l'extinction du PC.
- Trois cas pour ouvrir sa session:
Ouverture de session directement via inittab et ~/.xinitrc. Mais consolekit ne considère pas la session comme valide et bride les droits. Du coup pas de montage USB ou d'extinction, sauf bidouillage explicite des droits consolekit
Ouverture de session via bash_profile. Tout fonctionne mais vulnérabilité car prise de controle possible de la machine en repassant en mode console sans authentification.
Ouverture de session via gestionnaire de connexion + connexion automatique Tout fonctionne et c'est sécurisé.

Du coup je vais installer slim ou lxdm, me connecter automatiquement et dégager mon ~/.xinitrc qui ne me sert plus.

Je vous tiens au jus pour dire si ça marche.
Optiplex 3060 Micro Intel© Core™ i5-8500T, 16Go RAM, Arch Linux Cinnamon + Windows 10
Asus X53S, Linux Mint Cinnamon
Avatar de l’utilisateur
Anghirrim
Elfe
Messages : 701
Inscription : mar. 28 févr. 2012, 11:09
Localisation : Loire-Atlantique

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par Anghirrim »

Bon échec.....

Si j'utilise lxdm ou slim, j'ai droit à un superbe:

Code : Tout sélectionner

"Id "x" respawning too fast: disabled for 5 minutes"
Sans que rien ne se lance.... j'ai parcouru le net et n'ai pas trouvé de solution.

Si je démarre Arch en console et que je lance startx, même problème.

En revanche, via le ~/.xinitrc, pas de souci, Openbox s'affiche. Ca bloque au niveau du startx.

PS: J'ai tenté avec les version "daemon" et inittab.
Optiplex 3060 Micro Intel© Core™ i5-8500T, 16Go RAM, Arch Linux Cinnamon + Windows 10
Asus X53S, Linux Mint Cinnamon
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10711
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par FoolEcho »

Fais voir ton inittab ou regarde par rapport au wiki (c'est soit l'inittab, soit dans le rc.conf mais pas les deux).
Gestionnaire_de_connexions

Et attention, pour slim, le ~/.xinitrc est nécessaire (pas pour lxdm).
«The following statement is not true. The previous statement is true.» :nage:
Avatar de l’utilisateur
Anghirrim
Elfe
Messages : 701
Inscription : mar. 28 févr. 2012, 11:09
Localisation : Loire-Atlantique

Re: [Montage USB] Pas les droits pour monter cle USB en user

Message par Anghirrim »

Alors concentrons nous sur lxdm:

Pour mon /etc/inittab je n'ai rien touché sauf:

Code : Tout sélectionner

#id:3:initdefault:  (commenté)
id:5:initdefault: (décommenté)
x:5:respawn:/usr/sbin/lxdm >& /dev/null   (ajouté pour lancer lxdm)
Sinon, pour Slim, s'il a besoin de ~/.xinitrc, je mets quoi dedans (j'avais tout commenté dans mon ~/.xinitrc):

Code : Tout sélectionner

exec dbus-launch openbox-session
Et un /etc/slim.conf avec:

Code : Tout sélectionner

default_user thomas
auto_login   yes
Et /etc/inittab avec:

Code : Tout sélectionner

x:5:respawn:/usr/bin/slim >& /dev/null
Merci pour l'aide en tout cas.

Si oui aux config, je re-teste ce soir.
Optiplex 3060 Micro Intel© Core™ i5-8500T, 16Go RAM, Arch Linux Cinnamon + Windows 10
Asus X53S, Linux Mint Cinnamon
Répondre