Il s'agit de la commande dbus-launch qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
dbus-launch - Utilitaire pour démarrer un bus de messages à partir d'un script shell
SYNOPSIS
dbus-lancement [--version] [--help] [--sh-syntaxe] [--csh-syntax] [--auto-syntax]
[--binary-syntaxe] [--close-stderr] [--exit-with-session]
[--lancement automatique=ID DE LA MACHINE] [--fichier-config=NOM DE FICHIER] [PROGRAMME] [ARGS...]
DESCRIPTION
Le manuel de formation dbus-lancement La commande est utilisée pour démarrer une instance de bus de session de dbus-démon d'un
script shell. Il serait normalement appelé à partir des scripts de connexion d'un utilisateur. Contrairement au démon
lui-même dbus-lancement se termine, donc les backticks ou la construction $() peuvent être utilisés pour lire
Information provenant de dbus-lancement.
Sans argument, dbus-lancement lancera une instance de bus de session et imprimera l'adresse
et le PID de cette instance à la sortie standard.
Vous pouvez spécifier un programme à exécuter ; dans ce cas, dbus-lancement lancera un bus de session
instance, définissez les variables d'environnement appropriées afin que le programme spécifié puisse trouver le
bus, puis exécutez le programme spécifié, avec les arguments spécifiés. Voir ci-dessous pour
exemples.
Si vous lancez un programme, dbus-lancement n'imprimera pas les informations sur le nouveau bus sur
sortie standard.
Quand dbus-lancement imprime les informations du bus sur la sortie standard, par défaut c'est dans un simple
format de paires clé-valeur. Cependant, vous pouvez demander plusieurs syntaxes alternatives en utilisant le
--sh-syntax, --csh-syntax, --binary-syntax ou --auto-syntax. Plusieurs de ces
causer dbus-lancement pour émettre du code shell pour configurer l'environnement.
Avec l'option --auto-syntaxe, dbus-lancement examine la valeur de l'environnement SHELL
variable pour déterminer la syntaxe du shell à utiliser. Si SHELL se termine par "csh", alors
un code compatible csh est émis ; sinon, le code shell Bourne est émis. Au lieu de passer
--auto-syntax, vous pouvez en spécifier explicitement un en particulier en utilisant --sh-syntax pour Bourne
syntaxe, ou --csh-syntax pour la syntaxe csh. Dans les scripts, il est plus robuste d'éviter
--auto-syntax et vous savez, espérons-le, dans quel shell votre script est écrit.
See http://www.freedesktop.org/software/dbus/ pour plus d'informations sur D-Bus. Voir également
la page de manuel pour dbus-démon.
EXEMPLES
Distributions en cours d'exécution dbus-lancement dans le cadre d'une session X standard doit s'exécuter dbus-lancement
--exit-avec-session après le démarrage et la disponibilité du serveur X, en tant que wrapper
autour du client X « principal » (généralement un gestionnaire de session ou un gestionnaire de fenêtres), comme dans ces
exemples:
dbus-lancement --exit-avec-session gnome-session
dbus-lancement --exit-avec-session boîte ouverte
dbus-lancement --exit-avec-session ~/.xsession
Si votre distribution ne le fait pas, vous pouvez obtenir des résultats similaires en exécutant votre
session ou gestionnaire de fenêtres de la même manière dans un script exécuté par votre session X, tel que
~/.xsession, ~ / .xinitrc or ~/.Xclients.
Pour démarrer une session D-Bus dans une session en mode texte, n'utilisez pas dbus-lancement. Au lieu de cela, voir
session d'exécution dbus (1).
## test pour un démon de bus existant, juste pour être sûr
si test -z "$DBUS_SESSION_BUS_ADDRESS" ; alors
## si introuvable, lancez-en un nouveau
eval `dbus-launch --sh-syntaxe`
echo "L'adresse du démon D-Bus par session est : $DBUS_SESSION_BUS_ADDRESS"
fi
Notez que dans ce cas, dbus-launch se terminera et dbus-daemon ne se terminera pas
automatiquement à la déconnexion.
AUTOMATIQUE LANCEMENT
Si DBUS_SESSION_BUS_ADDRESS n'est pas défini pour un processus qui essaie d'utiliser D-Bus, par défaut
le processus tentera d'invoquer dbus-launch avec l'option --autolaunch pour démarrer un
nouveau bus de session ou trouver l'adresse de bus existante sur l'affichage X ou dans un fichier dans
~/.dbus/session-bus/
Chaque fois qu'un lancement automatique se produit, l'application qui a dû démarrer un nouveau bus sera dans son
propre petit monde ; il peut effectivement finir par démarrer une toute nouvelle session s'il essaie de
utiliser beaucoup de services de bus. Cela peut être sous-optimal ou même totalement cassé, selon le
app et ce qu'il essaie de faire.
Il y a deux raisons courantes pour le lancement automatique. L'un est ssh vers une machine distante. La solution idéale
car ce serait la transmission de DBUS_SESSION_BUS_ADDRESS de la même manière que DISPLAY est
transmis. En attendant, vous pouvez éditer le fichier de configuration session.conf pour que votre session
bus écouter sur TCP et définir manuellement DBUS_SESSION_BUS_ADDRESS, si vous le souhaitez.
La deuxième raison courante pour le lancement automatique est un su à un autre utilisateur et l'affichage de X
applications s'exécutant en tant que deuxième utilisateur sur l'écran appartenant au premier utilisateur.
La solution idéale dans ce cas serait peut-être de permettre au deuxième utilisateur de se connecter au
bus de session du premier utilisateur, tout comme ils peuvent se connecter à l'écran du premier utilisateur.
Cependant, un mécanisme pour cela n'a pas été codé.
Vous pouvez toujours éviter le lancement automatique en définissant manuellement DBUS_SESSION_BUS_ADDRESS. Lancement automatique
se produit parce que l'adresse par défaut si aucune n'est définie est "autolaunch :", donc si une autre
l'adresse est définie, il n'y aura pas de lancement automatique. Vous pouvez cependant inclure le lancement automatique dans un
adresse de bus de session explicite comme solution de secours, par exemple
DBUS_SESSION_BUS_ADDRESS="something:,autolaunch:" - dans ce cas si la première adresse
ne fonctionne pas, les processus se lancent automatiquement. (La variable d'adresse de bus contient un
liste d'adresses séparées par des virgules à essayer.)
L'option --autolaunch est considérée comme un détail d'implémentation interne de libdbus, et dans
fait il y a des plans pour le changer. Il n'y a aucune raison réelle de l'utiliser en dehors de libdbus
mise en œuvre de toute façon.
OPTIONS
Les options suivantes sont prises en charge :
--auto-syntaxe
Choisissez --csh-syntax ou --sh-syntax en fonction de la variable d'environnement SHELL.
--binary-syntaxe
Écrire dans la sortie standard une adresse de bus à terminaison nulle, puis le PID du bus sous forme d'entier binaire de
size sizeof(pid_t), puis l'ID de fenêtre du bus X sous forme d'entier binaire de size sizeof(long).
Les entiers sont dans l'ordre des octets de la machine, pas dans l'ordre des octets du réseau ou tout autre
ordre canonique des octets.
--close-stderr
Fermez le flux de sortie d'erreur standard avant de démarrer le démon D-Bus. C'est
utile si vous voulez capturer les messages d'erreur de dbus-launch mais que vous ne voulez pas
dbus-daemon pour garder le flux ouvert à votre application.
--config-file=NOM DE FICHIER
Passez --config-file=FILENAME au démon de bus, au lieu de lui passer le --session
argument. Voir la page de manuel de dbus-daemon
--csh-syntaxe
Émettez du code compatible csh pour configurer les variables d'environnement.
--exit-avec-session
Si cette option est fournie, un processus de « baby-sitter » persistant sera créé qui
surveille stdin pour HUP et essaie de se connecter au serveur X. Si ce processus obtient un HUP
sur stdin ou perd sa connexion X, il tue le démon du bus de messages.
--autolaunch=ID MACHINE
Cette option implique que dbus-lancement doit rechercher une session déjà démarrée et
réutiliser les valeurs qui s'y trouvent. Si aucune session n'est trouvée, il démarrera une nouvelle session. Les
L'option --exit-with-session est implicite si --autolaunch est donné. Cette option est pour le
utilisation exclusive de libdbus, vous ne souhaitez pas l'utiliser manuellement. Cela peut changer dans le
avenir.
--sh-syntaxe
Émettez du code compatible Bourne-shell pour configurer les variables d'environnement.
--version
Imprimer la version de dbus-launch
--Aidez-moi
Imprimer les informations d'aide de dbus-launch
NOTES
Si vous courez dbus-lancement monapplication (avec toute autre option), dbus-daemon pas sortir quand
monapplication se termine : c'est parce que monapplication est supposé faire partie d'une session plus large, plutôt
qu'une séance à part entière.
Utiliser dbus-launch en ligne en utilisant les services onworks.net