#1 Le 25/08/2017, à 15:12
- UnMamouth
[Résolu] Démarrer des applications utilisateur avant login de celui-ci
Bonjour.
Nous utilisons un Xubuntu comme serveur. Celui-ci tourne 24/7 mais nous ne nous y connectons en session utilisateur que de temps en temps.
J'aurais besoin de lancer certains programmes qui sont normalement des applications utilisateur (des clouds en fait : Syncthing, Dropbox), dès le démarrage de la machine, sans qu'un utilisateur ne soit connecté (ce qui est le comportement et paramétrage par défaut de ces applications).
Comment faire ?
Dernière modification par UnMamouth (Le 19/04/2018, à 13:54)
Hors ligne
#2 Le 25/08/2017, à 15:20
- michel_04
Re : [Résolu] Démarrer des applications utilisateur avant login de celui-ci
Bonjour,
Dans Paramètres, Système, Session et démarrage, Onglet Démarrage automatique d'application, Ajouter.
Ci-sessousla liste des applications qui seront lancées automatiquement lorsque vous vous connectez à votre bureau Xfce ...
A+
Dernière modification par michel_04 (Le 25/08/2017, à 15:21)
:D
De la bonne manière de poser les questions - Trouver de l'aide grâce au Groupe des Parrains Linux - Le Pacte des Gnous
PCs sous Debian Stable & Debian Sid.
Hors ligne
#3 Le 25/08/2017, à 15:31
- grandtoubab
Re : [Résolu] Démarrer des applications utilisateur avant login de celui-ci
Bonjour,
Dans Paramètres, Système, Session et démarrage, Onglet Démarrage automatique d'application, Ajouter.
Ci-sessousla liste des applications qui seront lancées automatiquement lorsque vous vous connectez à votre bureau Xfce ...
A+
a mon avis vaut mieux mettre les fichiers .desktop directement dans /etc/xdg/autostart pour que ça soit indépendant du user
Linux tout seul sur HP Pavilion DV7 et Acer Aspire T650, Canon MG3650 en wifi
Debian 11 Bullseye Gnome/Xorg, Gnome/Wayland avec SDDM
https://bidouilledebian.wordpress.com/
ON M'A VU DANS LE VERCORS, SAUTER A L'ELASTIQUE..... J'AI DANS LES BOTTES DES MONTAGNES DE QUESTIONS....
Hors ligne
#4 Le 27/08/2017, à 13:42
- UnMamouth
Re : [Résolu] Démarrer des applications utilisateur avant login de celui-ci
Bonjour,
Dans Paramètres, Système, Session et démarrage, Onglet Démarrage automatique d'application, Ajouter.
Ci-sessousla liste des applications qui seront lancées automatiquement lorsque vous vous connectez à votre bureau Xfce ...
A+
Ben justement, il faudrait que les applications se lancent indépendamment de toute connexion au bureau ...
Dernière modification par UnMamouth (Le 27/08/2017, à 13:47)
Hors ligne
#5 Le 27/08/2017, à 15:10
- moko138
Re : [Résolu] Démarrer des applications utilisateur avant login de celui-ci
J'ai un gros doute sur la faisabilité.
Ou alors ça lancera les applis avec un profil vierge, puisque le ou les /home/xxxx ne seront pas encore activés.
Donc exeunt les extensions du navigateur, la liste des derniers fichiers ouverts, la position de la fenêtre, tous les réglages personnels etc.
Quel intérêt reste-t-il ? Celui d'un espace accueillant du public ?
%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel : À la découverte de dcraw
Hors ligne
#6 Le 27/08/2017, à 16:06
- jplemoine
Re : [Résolu] Démarrer des applications utilisateur avant login de celui-ci
C'est franchement pas clair : ça ressemble à un essai de solution et non une description d'un problème.
Donc, quel est le problème ?
Ce compte ne servira plus : vous pouvez le supprimer si le coeur vous en dit...
Laissé par l'auteur pour historique.
Hors ligne
#7 Le 28/08/2017, à 13:37
- UnMamouth
Re : [Résolu] Démarrer des applications utilisateur avant login de celui-ci
Bonjour.
Le problème est que j'ai besoin que certaines applications tournent sur cet ordinateur dès qu'il est démarré, même en l'absence d'utilisateur connecté.
Je pensais le problème assez courant.
Hors ligne
#8 Le 28/08/2017, à 14:59
- grandtoubab
Re : [Résolu] Démarrer des applications utilisateur avant login de celui-ci
il faut utiliser les facilites de systemd: créer un script qui fait ce que tu veux et le gérer avec un service systemd
Exemple j'ai fait un petit script de mise à joue automatique avec envoi de mail à root
root@debian:/opt# cat perso-apt
#!/bin/sh
# pour tracer demasquer set -x
#set -x
#
# mise a jour des listes
echo "****************************************************************" > /var/tmp/resul-opt-perso-apt.txt
echo " Mise à jour des listes apt" >> /var/tmp/resul-opt-perso-apt.txt
apt update >> /var/tmp/resul-opt-perso-apt.txt 2> /dev/null
echo "resultat de la commande apt update ="$? >> /var/tmp/resul-opt-perso-apt.txt
# vérification des paquets disponible pour mise à jour
echo "****************************************************************" >> /var/tmp/resul-opt-perso-apt.txt
#echo " Listage des paquets pouvant être mis à jour" >> /var/tmp/resul-opt-perso-apt.txt
#apt list --upgradable >> /var/tmp/resul-opt-perso-apt.txt 2> /dev/null
#echo "resultat de la commande apt list ="$? >> /var/tmp/resul-opt-perso-apt.txt
#echo "****************************************************************" >> /var/tmp/resul-opt-perso-apt.txt
echo " mise à jour" >> /var/tmp/resul-opt-perso-apt.txt
apt full-upgrade -y >> /var/tmp/resul-opt-perso-apt.txt 2> /dev/null
echo "resultat de la commande apt-full-upgrade ="$? >> /var/tmp/resul-opt-perso-apt.txt
dpkg --audit >> /var/tmp/resul-opt-perso-apt.txt 2> /dev/null
echo "****************************************************************" >> /var/tmp/resul-opt-perso-apt.txt
date >> /var/tmp/resul-opt-perso-apt.txt
/usr/bin/mailx -s "résul opt/perso-apt" root@localhost.localdomain < /var/tmp/resul-opt-perso-apt.txt &> /dev/null
echo "mail envoyé à root par /opt/perso-apt"
echo "temporisation"
sleep 5
root@debian:/opt#
et le service pour le lancer au boot
root@debian:/opt# cat /lib/systemd/system/update-perso.service
[Unit]
Description=update-perso
After=exim4.service
[Service]
Type=oneshot
ExecStart=/opt/perso-apt
[Install]
WantedBy=multi-user.target
root@debian:/opt#
c'est ok
root@debian:/opt# systemctl status update-perso
● update-perso.service - update-perso
Loaded: loaded (/lib/systemd/system/update-perso.service; enabled; vendor preset: enabled)
Active: inactive (dead) since Mon 2017-08-28 15:37:18 CEST; 21min ago
Process: 1040 ExecStart=/opt/perso-apt (code=exited, status=0/SUCCESS)
Main PID: 1040 (code=exited, status=0/SUCCESS)
août 28 15:36:39 debian systemd[1]: Starting update-perso...
août 28 15:37:13 debian perso-apt[1040]: mail envoyé à root par /opt/perso-apt
août 28 15:37:13 debian perso-apt[1040]: temporisation
août 28 15:37:18 debian systemd[1]: Started update-perso.
de bonne infos sur le wiki Arch
https://wiki.archlinux.fr/index.php/Systemd
Dernière modification par grandtoubab (Le 28/08/2017, à 15:19)
Linux tout seul sur HP Pavilion DV7 et Acer Aspire T650, Canon MG3650 en wifi
Debian 11 Bullseye Gnome/Xorg, Gnome/Wayland avec SDDM
https://bidouilledebian.wordpress.com/
ON M'A VU DANS LE VERCORS, SAUTER A L'ELASTIQUE..... J'AI DANS LES BOTTES DES MONTAGNES DE QUESTIONS....
Hors ligne
#9 Le 28/08/2017, à 17:32
- UnMamouth
Re : [Résolu] Démarrer des applications utilisateur avant login de celui-ci
Mais alors du coup, tes scripts tournent nécessairement en root ?
Hors ligne
#10 Le 28/08/2017, à 18:35
- grandtoubab
Re : [Résolu] Démarrer des applications utilisateur avant login de celui-ci
Mais alors du coup, tes scripts tournent nécessairement en root ?
Dans mon exemple oui mais il existe un mode user
https://wiki.archlinux.org/index.php/Systemd/User
grosso-modo on utilise la commande systemctl avec l'option --user et des dossiers dans le /home du user ~/.config/systemd/user/ pour y mettre ses unit personnalisé
Dernière modification par grandtoubab (Le 28/08/2017, à 18:35)
Linux tout seul sur HP Pavilion DV7 et Acer Aspire T650, Canon MG3650 en wifi
Debian 11 Bullseye Gnome/Xorg, Gnome/Wayland avec SDDM
https://bidouilledebian.wordpress.com/
ON M'A VU DANS LE VERCORS, SAUTER A L'ELASTIQUE..... J'AI DANS LES BOTTES DES MONTAGNES DE QUESTIONS....
Hors ligne
#11 Le 31/08/2017, à 10:22
- UnMamouth
Re : [Résolu] Démarrer des applications utilisateur avant login de celui-ci
Bon, un peu de recherche remonte les éléments suivants :
Synthèse des options possibles pour lancer un script au démarrage de la machine :
- Utiliser la crontab
- Utiliser Systemd
- Utiliser /etc/init.d
- Utiliser /etc/rc.local
- Display Manager (application qui gère le login)
Les questions qui me viennent alors naturellement face à ces diverses options sont :
- Quels sont les avantages et inconvénients de chaque, en particulier en termes de risques de stabilité et de fiabilité du système ? (c'est une machine virtuelle et si on ne peut plus se connecter, dépanner va être compliqué)
- Les paramètres d'utilisation des applications (Dropbox, Syncthing) sont actuellement liés à un profil utilisateur. Comment fais-je pour lancer ces applications avec les bons paramètres ? Mais j'ai trouvé des éléments de réponse ici.
----------------------------------------
Sources :
https://www.researchgate.net/post/How_t … ntu_server
https://askubuntu.com/questions/745933/ … fore-login
http://www.foxswap.com/uncategorized/ub … oot-login/
Pour /etc/rc.local : https://docs.oseems.com/general/operati … on-startup
https://unix.stackexchange.com/question … -can-log-i
https://unix.stackexchange.com/question … c-rc-local
Pour le Display Manager de login : https://unix.stackexchange.com/question … gin-screen
Pour /etc/init.d : https://help.ubuntu.com/community/UbuntuBootupHowto
Dernière modification par UnMamouth (Le 31/08/2017, à 10:23)
Hors ligne
#12 Le 26/11/2017, à 17:44
- UnMamouth
Re : [Résolu] Démarrer des applications utilisateur avant login de celui-ci
Bonjour.
J'ai finalement fini par utiliser Systemd, qui, une fois compris à quoi cela sert, semblait la solution la plus pérenne. Cela m'a permis de lancer l'application voulue avec le login utilisateur voulu, et ce sans que aucun utilisateur ne soit connecté.
Par contre, j'ai maintenant une autre problème similaire, mais un peu plus fin : je souhaite lancer au démarrage de l'OS un script avant que l'OS ne monte certaines des partitions (pas '/', mais une autre partition secondaire, présente dans fstab et/ou crypttab).
Systemd semble encore être ce qu'il faut utiliser, mais là, mon problème devient en plus un problème de gestion des hiérarchies et dépendances.
Quelqu'un a t'il déjà de l'expérience avec cela ?
Hors ligne