web-dev-qa-db-fra.com

Comment créer une commande de démarrage différé

cette question peut être simple mais je suis nouveau sous Linux .. j'ai eu un problème de déchirure d'écran avec ma carte graphique nvidia, j'ai recherché une vidéo YT et elle a dit que cela avait quelque chose à voir avec le pipeline de composition et a expliqué comment le corriger en ajoutant la ligne de commande ci-dessous au fichier de configuration de nvidia .. Cela a fonctionné, la déchirure de l'écran a disparu, mais cela a créé un autre problème. un programme appelé "redshift" ne fonctionnerait plus .. Quoi qu'il en soit, j'ai annulé les changements que la vidéo a dit et j'ai passé la nuit à essayer d'aller au fond des choses, et j'ai trouvé une solution.

tout ce que je dois faire est de simplement démarrer mon PC et après le démarrage de redshift, j'exécute cette commande dans le terminal:

"nvidia-settings --assign CurrentMetaMode =" HDMI-0: 1280x720_60 + 0 + 0 {ForceFullCompositionPipeline = On} "

Modèle: nvidia-settings --assign CurrentMetaMode = "CONNECTION: RESOLUTION_RATE + 0 + 0 {ForceFullCompositionPipeline = On}"

en quelque sorte, redshift n'est pas affecté par cela car il a déjà commencé, et en même temps, le problème de déchirure d'écran est résolu (jusqu'à ce que je redémarre l'ordinateur), puis je dois exécuter à nouveau la commande ..

Je cherche maintenant une solution automatisée, peut-être en créant un script différé avec cette commande dans "session et démarrage" qui s'exécutera après le démarrage de "Redshift".

Comment je fais ça? Merci d'avance

1
Maroun K

J'utilise des applications de démarrage pour retarder le démarrage de Dropbox jusqu'à ce que mon VPN soit chargé. La même procédure peut fonctionner pour votre cas. J'essaierais ce qui suit:

Ouvrez les applications de démarrage (cliquez sur le tiret et recherchez-le)

Ajoutez un nouveau programme de démarrage en cliquant sur le bouton Ajouter et donnez-lui un nom.

Dans la ligne de commande, essayez:

/bin/bash -c "sleep XX && YOUR NVIDIA code"

où XX est le nombre de secondes de délai souhaité avant l'exécution. Donc,

/bin/bash -c "sleep 10 && nvidia-settings --assign CurrentMetaMode="HDMI-0:1280x720_60 +0+0 { ForceFullCompositionPipeline = On }

puis cliquez sur Enregistrer et redémarrer pour vérifier que cela fonctionne.

2
Mark Maurer