J'ai lu diverses questions sur how to run script at startup
mais je ne sais pas trop quelles sont les différences ni quelle est la bonne façon de le faire sans interface graphique.
/etc/rc.local
@reboot
~/.profile
/.bash_profile
/.bash_login
Exemples, j'ai besoin d'exécuter au démarrage
apt-get update
Sudo
même si le script principal est déjà exécuté en tant que root?)Ce serait bien d'avoir un seul script qui gère toutes ces choses dans un seul fichier. Comment le faire correctement?
~/.profile
, /.bash_profile
et /.bash_login
conviennent mieux à la définition des variables d'environnement et à la configuration de l'environnement qu'à l'exécution de scripts. Je ne les recommanderais pas.
/etc/rc.local
peut être utilisé pour cela, mais rappelez-vous qu'il démarrera avant le démarrage de l'interface graphique. Sauf s'il s'agit d'un script qui envoie uniquement une notification à l'interface graphique. Notez que vous devrez appeler votre script à partir de /etc/rc.local
au format /full/path/to/script &
(&
afin d'éviter de bloquer d'autres scripts que vous pourriez avoir lors de son exécution). Vous aurez également besoin de la variable export DISPLAY=:0
dans le script lui-même ou dans /etc/rc.local
. Les applications nécessitant une interface graphique auront besoin de cette variable pour exister. Même idée avec cron job using @reboot
.
Si vous souhaitez exécuter des scripts lors de la connexion à l'interface graphique, vous devez créer un fichier .desktop
pour chaque script de votre dossier ~/.config/autostart/
. Vous pouvez le faire à la main ou utiliser l'application Startup Applications qui fait exactement la même chose pour vous. Il suffit d'ouvrir le Dash Unity et de taper "Applications de démarrage"
apt-get update
n'a pas besoin d'interface graphique, mais simplement de réseau. /etc/rc.local
est ok pour celui-ci.set some permissions
, cela n’a pas besoin d’interface graphique, utilisez /etc/rc.local
set display brightness
n'a pas besoin de GUI aussi, mais peut avoir besoin de privilèges root. Si vous souhaitez le modifier avant de vous connecter, vous devez écrire dans un fichier spécial. Consulter mon autre post à ce sujetturn numlock on
n'a peut-être pas besoin de GUIsetup touchpad
selon votre méthode, peut avoir besoin d'une interface graphiquerun some apps
s'il s'agit d'applications GUI, vous devez les démarrer à partir des applications de démarrage décrites ci-dessus.run some scripts as root
vous pouvez utiliser /etc/rc.local
ou cron
pour ceux-ci. Exécuter des applications GUI en tant que root n’est pas une bonne idée, évitez-le.run some scripts without root
utilise la méthode Applications de démarrage.