Page 1 sur 2
[ck] Pas les droits pour monter cle USB en user. (résolu)
Publié : dim. 13 mai 2012, 20:52
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:
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?
Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : dim. 13 mai 2012, 21:39
par Frarch
Bonsoir !
Essai de lancer ta session dans ton ~/.xinitrc :
Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : dim. 13 mai 2012, 23:08
par karhu
Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : lun. 14 mai 2012, 06:47
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
Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : lun. 14 mai 2012, 09:06
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

).
Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : lun. 14 mai 2012, 11:19
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"
Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : lun. 14 mai 2012, 11:50
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.
Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : lun. 14 mai 2012, 12:12
par FoolEcho
Je pense que vous vous «confusionnez» (j'espère ne pas en rajouter dans la suite... on finit par s'y perdre ^^).
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:
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)

Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : lun. 14 mai 2012, 13:31
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
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
Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : lun. 14 mai 2012, 13:51
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.
Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : lun. 14 mai 2012, 14:06
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.
Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : lun. 14 mai 2012, 19:31
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.
Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : lun. 14 mai 2012, 19:34
par FoolEcho
@Silejonu: Anghirrim n'utilise pas slim mais lance son .xinitrc depuis l'inittab.
Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : lun. 14 mai 2012, 21:24
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.

Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : lun. 14 mai 2012, 21:54
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
rien ne fonctionne... je suis un poil perplexe là.
Sinon la commande:
ne me retourne rien.
Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : mar. 15 mai 2012, 11:50
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.
Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : mar. 15 mai 2012, 15:13
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.
Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : mar. 15 mai 2012, 21:29
par Anghirrim
Bon échec.....
Si j'utilise lxdm ou slim, j'ai droit à un superbe:
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.
Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : mer. 16 mai 2012, 08:51
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).
Re: [Montage USB] Pas les droits pour monter cle USB en user
Publié : mer. 16 mai 2012, 15:53
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):
Et un /etc/slim.conf avec:
Et /etc/inittab avec:
Merci pour l'aide en tout cas.
Si oui aux config, je re-teste ce soir.