[startx] loginctl pas de session

Questions et astuces concernant l'installation et la configuration d'archlinux
Répondre
gilles74
Hankyu
Messages : 30
Inscription : dim. 19 déc. 2010, 09:15

[startx] loginctl pas de session

Message par gilles74 »

bonjour,
le symptome de départ: les clés usb ne se montent pas automatiquement ( les partitions non définies dans fstab non plus). Mais en regardant de plus prêt, c'est un problème d'autorisation.

j'utilise un systeme full systemd qui lançe automatiquement openbox via startx. j'ai pour cela suivi le tuto startx
j'ai donc un /.xinitrc

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


case "$LANG" in
 fr*)
  cp ~/.config/openbox/{menu-fr.xml,menu.xml}
  cp ~/.config/fbpanel/{default-fr,default}
 ;;
 *)
  cp ~/.config/openbox/{menu-en.xml,menu.xml}
  cp ~/.config/fbpanel/{default-en,default}
 ;;
esac

#exec ck-launch-session openbox-session
exec openbox-session 
#exec dbus-launch --sh-syntax --exit-with-session openbox-session
et un startx@.service

Code : Tout sélectionner

[Unit]
Description=startx automatique pour l'utilisateur %I
After=graphical.target systemd-user-sessions.service

[Service]
User=%I
WorkingDirectory=%h
PAMName=login
Type=oneshot
ExecStart=/bin/bash -l -c 'startx &'

[Install]
WantedBy=graphical.target 
tout ce petit monde fonctionne sauf que j'ai

Code : Tout sélectionner

# loginctl 
   SESSION        UID USER             SEAT            

0 session listed.
et donc je ne peux pas profiter des autorisations de montages des cles USB dans la session active comme cela est défini par systemd

Par contre si je lance manuellement startx depuis une autre console vt3 par exemple, j'ai une session d'ouverture dans loginctl .

J'ai parcouru google en vain; certains disent que c'est un bug .... Y-a-t-il une solution pour lancer startx correctement ?
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

Re: [startx] loginctl pas de session

Message par tuxce »

Si tu mets :

Code : Tout sélectionner

Type=simple
ExecStart=/bin/bash -l -c startx
T'auras la session, mais par contre, si tu lances un arrêt/reboot sans avoir quitté openbox, systemd ne pourra pas arrêter ta session et attendra le temps du timeout (90s par défaut) : http://archlinux.fr/forum/viewtopic.php?t=12410
Il faudra quitter openbox avant d'éteindre (ou faire les 2 actions dans un script : http://forums.archlinux.fr/post106809.html#p106809)
Dernière modification par tuxce le dim. 02 déc. 2012, 19:05, modifié 2 fois.
Raison : oublié d'enlever le &
gilles74
Hankyu
Messages : 30
Inscription : dim. 19 déc. 2010, 09:15

Re: [startx] loginctl pas de session

Message par gilles74 »

bonsoir tuxce

et merci pour ta réponse rapide mais ça ne fonctionne pas pour moi. Toujours pas de session active
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

Re: [startx] loginctl pas de session

Message par tuxce »

J'ai re édité, j'avais oublié d'enlever le "&" ... un c/c trop rapide :|
gilles74
Hankyu
Messages : 30
Inscription : dim. 19 déc. 2010, 09:15

Re: [startx] loginctl pas de session

Message par gilles74 »

c'est bon, j'ai ma session ouverte et le timeout en lançant l'arrêt.

les partitions non définies dans fstab sont montées mais la clé usb refuse de se monter

"not authorised to perform operation"

encore une autorisation qui manque
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

Re: [startx] loginctl pas de session

Message par tuxce »

La clé est défini dans le fstab ? si oui (pourquoi?), poste la ligne.
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17264
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [startx] loginctl pas de session

Message par benjarobin »

Voir http://forums.archlinux.fr/post107225.html#p107225 pour une correction du service, Tuxce tu en pense quoi ?
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
gilles74
Hankyu
Messages : 30
Inscription : dim. 19 déc. 2010, 09:15

Re: [startx] loginctl pas de session

Message par gilles74 »

non, ni la clé, ni les partitions tierce ne sont définies dans fstab

Code : Tout sélectionner

# 
# /etc/fstab: static file system information
#
# <file system>        <dir>         <type>    <options>          <dump> <pass>
devpts                 /dev/pts      devpts    defaults            0      0
shm                    /dev/shm      tmpfs     nodev,nosuid        0      0

UUID=5d42b480-bf17-4ee3-a8e3-1ed3982f7dad swap swap defaults 0 0
UUID=4842e2e7-cd82-4203-8448-f175e368b469 /home ext4 noauto,x-systemd.automount,defaults,noatime,nodiratime 0 1
#UUID=660204ae-3dcc-4e97-9012-03cac812317a /boot ext2 defaults 0 1
UUID=e8e413be-d71a-4fcf-b20a-551259593e9e / ext4 defaults,noatime,nodiratime 0 1
systemd est là pour ça, non !
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17264
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [startx] loginctl pas de session

Message par benjarobin »

Systemd n'a aucun rapport avec la gestion des disques...
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

Re: [startx] loginctl pas de session

Message par tuxce »

Que te retourne

Code : Tout sélectionner

loginctl
loginctl show-session $XDG_SESSION_ID
?
gilles74
Hankyu
Messages : 30
Inscription : dim. 19 déc. 2010, 09:15

Re: [startx] loginctl pas de session

Message par gilles74 »

Code : Tout sélectionner

 loginctl
   SESSION        UID USER             SEAT            
         1       1000 gilles                           

1 sessions listed.

Code : Tout sélectionner

#  loginctl show-session $XDG_SESSION_ID
Id=1
Timestamp=lun., 2012-12-03 00:30:12 CET
TimestampMonotonic=7380097
DefaultControlGroup=name=systemd:/user/gilles/1
VTNr=0
Remote=no
Service=login
Leader=437
Audit=1
Type=unspecified
Class=user
Active=yes
State=active
KillProcesses=no
IdleHint=no
IdleSinceHint=0
IdleSinceHintMonotonic=0
Name=gilles
le problème semble venir du lancement du X car dans la console urxvt j'ai les réglages du bash du boot et non pas ceux du "user".

Encore une fois, si je me deconnecte du X et relance une session, je n'ai plus de problème avec le montage des clés et partitions et je retrouve les réglages du bash du "user"

j'avais pas vu le numéro du VTNr=0 ???? pour info je suis en console 2
j'ai VTNr=3 TTY=tty3 quand ça fonctionne
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

Re: [startx] loginctl pas de session

Message par tuxce »

Tu peux tester avec un ~/.xinitrc ne contenant que :

Code : Tout sélectionner

exec dbus-launch openbox-session
?
gilles74
Hankyu
Messages : 30
Inscription : dim. 19 déc. 2010, 09:15

Re: [startx] loginctl pas de session

Message par gilles74 »

pas de démarrage du X avec lea paramètre suivant

Code : Tout sélectionner

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

exec dbus-launch openbox-session

Code : Tout sélectionner

[Unit]
Description=startx automatique pour l'utilisateur %I
After=graphical.target systemd-user-sessions.service

[Service]
User=%I
WorkingDirectory=%h
PAMName=login
Type=simple
ExecStart=/usr/local/bin/startx
ExecStop=/usr/local/bin/arret

[Install]
WantedBy=graphical.target

Code : Tout sélectionner

 #  systemctl status startx@gilles
startx@gilles.service - startx automatique pour l'utilisateur gilles
	  Loaded: loaded (/etc/systemd/system/startx@.service; enabled)
	  Active: failed (Result: exit-code) since lun., 2012-12-03 14:17:42 CET; 2min 43s ago
	 Process: 447 ExecStop=/usr/local/bin/arret (code=exited, status=0/SUCCESS)
	 Process: 440 ExecStart=/usr/local/bin/startx (code=exited, status=203/EXEC)
	  CGroup: name=systemd:/system/startx@.service/gilles

déc. 03 14:17:42 ctkarch systemd[1]: Starting startx automatique pour l'utilisateur gilles...
déc. 03 14:17:42 ctkarch systemd[1]: Started startx automatique pour l'utilisateur gilles.
déc. 03 14:17:42 ctkarch systemd[440]: pam_unix(login:session): session opened for user gilles by (uid=0)
déc. 03 14:17:42 ctkarch systemd[440]: pam_ck_connector(login:session): cannot determine display-device
déc. 03 14:17:42 ctkarch systemd[1]: startx@gilles.service: main process exited, code=exited, status=203/EXEC
déc. 03 14:17:42 ctkarch arret[447]: xinit: aucun processus trouvé
déc. 03 14:17:42 ctkarch systemd[1]: Unit startx@gilles.service entered failed state
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

Re: [startx] loginctl pas de session

Message par tuxce »

Code : Tout sélectionner

ExecStart=/usr/local/bin/startx

Pourquoi pas ce qu'il y avait avant ?
C'est quoi la différence avec /usr/bin/startx
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17264
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [startx] loginctl pas de session

Message par benjarobin »

C'est comme /usr/local/bin/arret cela n'as pas de sens...
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
gilles74
Hankyu
Messages : 30
Inscription : dim. 19 déc. 2010, 09:15

Re: [startx] loginctl pas de session

Message par gilles74 »

désolé, j'ai fait ça rapidement à midi et j'ai oublié de supprimer certains essais que j'ai fait. En fait, j'ai fait un test avec slim et ça focntionne sans problème.

Je reviens à ce que tu m'as demandé

Code : Tout sélectionner

[Unit]
Description=startx automatique pour l'utilisateur %I
After=graphical.target systemd-user-sessions.service

[Service]
User=%I
WorkingDirectory=%h
PAMName=login
Type=simple
ExecStart=/bin/bash -l -c startx &
ExecStop= killall xinit&

[Install]
WantedBy=graphical.target
avec ou sans le &, même resultat, mais il y a une amélioration: en faisant un "systemctl statut startx@gilles", j'ai vu qu'il manquait "python2-xdg"
et maintenant si je plug une cle usb j'ai une demande d'autorisation, je donne le mdp du user et ensuite le montage est accepté.
par contre je suis toujours en VTNr=0 et les réglages du bash ne sont toujours pas bon. C'est comme si la session n'était pas sous le user "gilles", étrange ...

benjarobin : je n'ai pas fait cela pour rien; ExecStop n'accepte pas le commande "killall xinit". j'ai essayé de mettre "/bin/bash -l -c killall xinit&" mais pas mieux. C'est comme si la commande killall n'est pas accepté. En mettant la commande dans un script, ça fonctionne. Si tu as une autre idée, je suis preneur.
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17264
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [startx] loginctl pas de session

Message par benjarobin »

Code : Tout sélectionner

/usr/bin/killall xinit
et non

Code : Tout sélectionner

killall xinit
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
gilles74
Hankyu
Messages : 30
Inscription : dim. 19 déc. 2010, 09:15

Re: [startx] loginctl pas de session

Message par gilles74 »

Code : Tout sélectionner

/usr/bin/killall xinit
fonctionne, merci :bravo:

reste le problème du démarrage à résoudre
Répondre