Problème lancement script au démarrage

Debian buster/sid

j’ai fait un petit script que je veux lancer au démarrage.

#!/bin/bash

apt-get update
apt-get -y dist-upgrade
apt-get -y autoremove
apt-get clean
apt purge -y $(dpkg -l | awk ‘/^rc/ { print $2 }’)

exit 1

je lui ai donner les droits nécessaire avec chmod

je l’ai copier dans /etc/init.d/

-rwxr-xr-x 1 root root 148 août 16 17:11 /etc/init.d/demarrage

update-rc ne fonctionnant pas

j’ai fait son boulot manuellement.

le script fonctionne en console mais ne se lance pas au démarrage.
J’ai fait des recherches sur le net et dans le forum, lu les man mais n’y ai trouvé aucune solution.

Merci par avance pour votre aide.

Avec systemd ne faut il pas créer un service systeme dans /lib/systemd/system/
qui va lancer ton script
https://www.freedesktop.org/software/systemd/man/systemd.unit.html#

j’essairai

sudo gedit /lib/systemd/system/update-perso.service

avec

[Unit]
Description=update-perso
After=network-online.target


[Service]
Type=oneshot
ExecStart= le chemin complet de ton script

[Install]
WantedBy=multi-user.target

pour tester son exécution

systemctl start update-perso.service

pour verifier son etat

systemctl status update-perso.service

Et si tout baigne pour l’activer

systemctl enable update-perso.service

Merci (diërëdiëf)Pour cette réponse rapide grandtoubab.

Je vais tester.

After=network-online.target

ça permets d’attendre que le réseau soit on-line avant de lancer ton script

systemctl status network-online.target
● network-online.target - Network is Online
   Loaded: loaded (/lib/systemd/system/network-online.target; static; vendor preset: enabled)
   Active: active since Mon 2017-08-21 16:49:41 CEST; 1h 16min ago
     Docs: man:systemd.special(7)
           https://www.freedesktop.org/wiki/Software/systemd/NetworkTarget

août 21 16:49:41 debian systemd[1]: Reached target Network is Online.

Tout se passe bien jusqu’au redémarrage où le script ne se lance pas.

Merci pour les infos.
je vais creuser ta méthode doit marcher.

que dit

systemctl status update-perso.service

● update-perso.service - update-perso
Loaded: loaded (/lib/systemd/system/update-perso.service; enabled; vendor preset: enabled)
Active: inactive (dead)

s’il n’y a pas de message d’erreur en plus, ça veut dire que le service a été activé, il faut maintenant que tu verifies ton script
Dans ces cas là j’ajoute en debut du script

touch /home/…/service-début.txt

et à la fin du script

touch /home/…/service-fin.txt

tu remplaces … par le nom de ton utilisateur

et tu verifies si ces deux fichiers ont été crées

une autre facon de lancer une fois au démarrage c’est de lancer par anacron

j’ai fait ça

/etc/cron.daily$ cat perso-apt

#!/bin/sh
# pour tracer demasquer set -x
#set -x
#
# mise a jour des listes
echo "***************************"
echo " Mise à jour des listes apt"
apt update 
echo "resultat de la commande apt update ="$? 
# vérification des paquets disponible pour mise à jour
echo "********************************************"
echo " Listage des paquets pouvant être mis à jour"
apt list --upgradable
# 
echo "resultat de la commande apt list ="$?
#

en plus anacron envoi un mail de résultat

ça donne ça


Sujet :
Anacron job 'cron.daily' on debian
De :
Anacron <root@localhost.localdomain>
Date :
21/08/2017 08:19
Pour :
root@localhost.localdomain

/etc/cron.daily/perso-apt:
***************************
 Mise à jour des listes apt

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

Ign:1 http://dl.google.com/linux/chrome/deb stable InRelease
Atteint:2 http://ppa.launchpad.net/morphis/anbox-support/ubuntu xenial InRelease
Réception de:3 http://security.debian.org/debian-security jessie/updates InRelease [63,1 kB]
Réception de:4 http://ftp.uk.debian.org/debian buster InRelease [124 kB]
Atteint:5 http://ppa.launchpad.net/tsbarnes/indicator-keylock/ubuntu xenial InRelease
Atteint:6 http://dl.google.com/linux/chrome/deb stable Release
Atteint:7 http://repository.spotify.com stable InRelease
Atteint:8 http://archive.canonical.com xenial InRelease
Réception de:9 http://security.debian.org/debian-security stretch/updates InRelease [62,9 kB]
Réception de:10 http://security.debian.org/debian-security buster/updates InRelease [25,5 kB]
Atteint:11 https://dl.winehq.org/wine-builds/debian stretch InRelease
Réception de:12 http://ftp.uk.debian.org/debian buster-updates InRelease [46,0 kB]
Ign:13 http://ftp.uk.debian.org/debian stretch InRelease
Réception de:14 http://ftp.uk.debian.org/debian stretch-updates InRelease [88,5 kB]
Atteint:16 http://ftp.uk.debian.org/debian stretch Release
Réception de:17 http://ftp.uk.debian.org/debian buster/contrib i386 Packages.diff/Index [19,9 kB]
Réception de:18 http://ftp.uk.debian.org/debian buster/contrib amd64 Packages.diff/Index [20,9 kB]
Réception de:19 http://ftp.uk.debian.org/debian buster/contrib Translation-en.diff/Index [7 624 B]
Réception de:20 http://ftp.uk.debian.org/debian buster/contrib amd64 Contents (deb).diff/Index [14,5 kB]
Réception de:21 http://ftp.uk.debian.org/debian buster/contrib i386 Contents (deb).diff/Index [13,0 kB]
Réception de:22 http://ftp.uk.debian.org/debian buster/main amd64 Packages.diff/Index [27,9 kB]
Réception de:23 http://ftp.uk.debian.org/debian buster/main i386 Packages.diff/Index [27,9 kB]
Réception de:24 http://ftp.uk.debian.org/debian buster/main Translation-en.diff/Index [27,9 kB]
Réception de:25 http://ftp.uk.debian.org/debian buster/main i386 Contents (deb).diff/Index [28,0 kB]
Réception de:26 http://ftp.uk.debian.org/debian buster/main amd64 Contents (deb).diff/Index [28,0 kB]
Réception de:27 http://ftp.uk.debian.org/debian buster/non-free i386 Packages.diff/Index [16,0 kB]
Réception de:28 http://ftp.uk.debian.org/debian buster/non-free amd64 Packages.diff/Index [17,5 kB]
Réception de:29 http://ftp.uk.debian.org/debian buster/contrib i386 Packages 2017-08-20-1418.29.pdiff [31 B]
Réception de:30 http://ftp.uk.debian.org/debian buster/contrib i386 Packages 2017-08-21-0221.31.pdiff [219 B]
Réception de:31 http://ftp.uk.debian.org/debian buster/contrib amd64 Packages 2017-08-20-1418.29.pdiff [31 B]
Réception de:32 http://ftp.uk.debian.org/debian buster/contrib amd64 Packages 2017-08-21-0221.31.pdiff [220 B]
Réception de:33 http://ftp.uk.debian.org/debian buster/contrib Translation-en 2017-08-20-1418.29.pdiff [31 B]
Réception de:34 http://ftp.uk.debian.org/debian buster/contrib amd64 Contents (deb) 2017-08-20-1418.29.pdiff [51 B]
Réception de:35 http://ftp.uk.debian.org/debian buster/contrib amd64 Contents (deb) 2017-08-21-0221.31.pdiff [26 B]
Réception de:36 http://ftp.uk.debian.org/debian buster/contrib i386 Contents (deb) 2017-08-20-1418.29.pdiff [53 B]
Réception de:37 http://ftp.uk.debian.org/debian buster/contrib i386 Contents (deb) 2017-08-21-0221.31.pdiff [26 B]
Réception de:38 http://ftp.uk.debian.org/debian buster/main amd64 Packages 2017-08-20-1418.29.pdiff [1 876 B]
Réception de:30 http://ftp.uk.debian.org/debian buster/contrib i386 Packages 2017-08-21-0221.31.pdiff [219 B]
Réception de:33 http://ftp.uk.debian.org/debian buster/contrib Translation-en 2017-08-20-1418.29.pdiff [31 B]
Réception de:32 http://ftp.uk.debian.org/debian buster/contrib amd64 Packages 2017-08-21-0221.31.pdiff [220 B]
Réception de:35 http://ftp.uk.debian.org/debian buster/contrib amd64 Contents (deb) 2017-08-21-0221.31.pdiff [26 B]
Réception de:37 http://ftp.uk.debian.org/debian buster/contrib i386 Contents (deb) 2017-08-21-0221.31.pdiff [26 B]
Réception de:39 http://ftp.uk.debian.org/debian buster/main amd64 Packages 2017-08-21-0221.31.pdiff [42,6 kB]
Réception de:40 http://ftp.uk.debian.org/debian buster/main i386 Packages 2017-08-20-1418.29.pdiff [1 843 B]
Réception de:39 http://ftp.uk.debian.org/debian buster/main amd64 Packages 2017-08-21-0221.31.pdiff [42,6 kB]
Réception de:41 http://ftp.uk.debian.org/debian buster/main i386 Packages 2017-08-21-0221.31.pdiff [42,4 kB]
Réception de:42 http://ftp.uk.debian.org/debian buster/main Translation-en 2017-08-20-1418.29.pdiff [1 417 B]
Réception de:41 http://ftp.uk.debian.org/debian buster/main i386 Packages 2017-08-21-0221.31.pdiff [42,4 kB]
Réception de:43 http://ftp.uk.debian.org/debian buster/main Translation-en 2017-08-21-0221.31.pdiff [4 470 B]
Réception de:44 http://ftp.uk.debian.org/debian buster/main i386 Contents (deb) 2017-08-20-1418.29.pdiff [7 718 B]
Réception de:43 http://ftp.uk.debian.org/debian buster/main Translation-en 2017-08-21-0221.31.pdiff [4 470 B]
Réception de:45 http://ftp.uk.debian.org/debian buster/main i386 Contents (deb) 2017-08-21-0221.31.pdiff [141 kB]
Réception de:46 http://ftp.uk.debian.org/debian buster/main amd64 Contents (deb) 2017-08-20-1418.29.pdiff [7 779 B]
Réception de:45 http://ftp.uk.debian.org/debian buster/main i386 Contents (deb) 2017-08-21-0221.31.pdiff [141 kB]
Réception de:47 http://ftp.uk.debian.org/debian buster/main amd64 Contents (deb) 2017-08-21-0221.31.pdiff [141 kB]
Réception de:48 http://ftp.uk.debian.org/debian buster/non-free i386 Packages 2017-08-21-0221.31.pdiff [287 B]
Réception de:49 http://ftp.uk.debian.org/debian buster/non-free amd64 Packages 2017-08-21-0221.31.pdiff [287 B]
Réception de:50 http://ftp.uk.debian.org/debian buster/contrib amd64 DEP-11 Metadata [7 700 B]
Réception de:51 http://ftp.uk.debian.org/debian buster/main amd64 DEP-11 Metadata [3 088 kB]
Réception de:48 http://ftp.uk.debian.org/debian buster/non-free i386 Packages 2017-08-21-0221.31.pdiff [287 B]
Réception de:47 http://ftp.uk.debian.org/debian buster/main amd64 Contents (deb) 2017-08-21-0221.31.pdiff [141 kB]
Réception de:49 http://ftp.uk.debian.org/debian buster/non-free amd64 Packages 2017-08-21-0221.31.pdiff [287 B]
4 147 ko réceptionnés en 24s (169 ko/s)
Lecture des listes de paquets…
Construction de l'arbre des dépendances…
Lecture des informations d'état…
21 packages can be upgraded. Run 'apt list --upgradable' to see them.
resultat de la commande apt update =0
********************************************
 Listage des paquets pouvant être mis à jour

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

En train de lister…
ffmpeg/testing 7:3.3.3-3 amd64 [upgradable from: 7:3.3.3-1]
gstreamer1.0-plugins-bad/testing 1.12.2-1+b1 amd64 [upgradable from: 1.12.2-1]
libavcodec-extra/testing,testing 7:3.3.3-3 all [upgradable from: 7:3.3.3-1]
libavcodec-extra57/testing 7:3.3.3-3 amd64 [upgradable from: 7:3.3.3-1]
libavdevice57/testing 7:3.3.3-3 amd64 [upgradable from: 7:3.3.3-1]
libavfilter6/testing 7:3.3.3-3 amd64 [upgradable from: 7:3.3.3-1]
libavformat57/testing 7:3.3.3-3 amd64 [upgradable from: 7:3.3.3-1]
libavresample3/testing 7:3.3.3-3 amd64 [upgradable from: 7:3.3.3-1]
libavutil55/testing 7:3.3.3-3 amd64 [upgradable from: 7:3.3.3-1]
libgstreamer-plugins-bad1.0-0/testing 1.12.2-1+b1 amd64 [upgradable from: 1.12.2-1]
libnet-http-perl/testing,testing 6.16-1 all [upgradable from: 6.12-1]
libopenmpt-modplug1/testing 0.2.8760~beta27-1 amd64 [upgradable from: 0.2.8461~beta26-1]
libopenmpt0/testing 0.2.8760~beta27-1 amd64 [upgradable from: 0.2.8461~beta26-1]
libpostproc54/testing 7:3.3.3-3 amd64 [upgradable from: 7:3.3.3-1]
libswresample2/testing 7:3.3.3-3 amd64 [upgradable from: 7:3.3.3-1]
libswscale4/testing 7:3.3.3-3 amd64 [upgradable from: 7:3.3.3-1]
qttranslations5-l10n/testing,testing 5.9.1-1 all [upgradable from: 5.7.1~20161021-1]
resultat de la commande apt list =0

Les fichiers n’ont pas été créé.

est ce que la condition est vraie?
que dit
systemctl status network-online.target

et

systemd-analyze blame --no-pager

● network-online.target - Network is Online
Loaded: loaded (/lib/systemd/system/network-online.target; static; vendor preset: enabled)
Active: active since Tue 2017-08-22 12:28:19 CEST; 59min ago
Docs: man:systemd.special(7)
https://www.freedesktop.org/wiki/Software/systemd/NetworkTarget

août 22 12:28:19 dune systemd[1]: Reached target Network is Online

      4.555s dev-sda5.device
      1.373s networking.service
      1.221s systemd-rfkill.service
      1.033s rsyslog.service
       814ms keyboard-setup.service
       684ms systemd-tmpfiles-setup-dev.service
       647ms systemd-fsck@dev-disk-by\x2duuid-86998ac3\x2d686e\x2d4e70\x2d81a8\x2d3094733958d0.service
       458ms ssh.service
       411ms dev-mqueue.mount
       400ms systemd-remount-fs.service
       393ms dev-hugepages.mount
       392ms sys-kernel-debug.mount
       300ms systemd-logind.service
       254ms systemd-journald.service
       251ms systemd-user-sessions.service
       248ms systemd-udevd.service
       235ms systemd-random-seed.service
       208ms systemd-journal-flush.service
       196ms console-setup.service
       182ms home.mount
       179ms systemd-udev-trigger.service
       174ms fetchmail.service
       172ms systemd-tmpfiles-setup.service
       151ms kmod-static-nodes.service
       135ms systemd-sysctl.service
       119ms systemd-modules-load.service
       118ms systemd-timesyncd.service
       102ms user@0.service
        93ms dev-disk-by\x2duuid-1f578c48\x2d91eb\x2d458b\x2d91b1\x2d6b42f297924a.swap
        78ms systemd-tmpfiles-clean.service
        76ms systemd-backlight@backlight:acpi_video0.service
        57ms systemd-update-utmp.service
        52ms user@1000.service
        29ms alsa-restore.service
        11ms systemd-update-utmp-runlevel.service

tout est ok je ne sais pas pourquoi ton script n’est pas lancé, tu as bien mis le chmin complet

comme dans cette exemple

ExecStart=-/usr/bin/pkexec /usr/sbin/alsactl -f /var/lib/alsa/save.asound.state restore

update-perso.service

[Unit]
Description=update-perso
After=network-online.target

[Service]
Type=oneshot
ExecStart= /root/demarrage

[Install]
WantedBy=Multi-user.target

dans une fenetre terminal est-ce que ça marche?

exec /root/demarrage

Oui, ça fonctionne.

j’ai atteins mon niveau d’incompétence :joy:

Qui est nettement supérieur au mien.
Grand merci pour ton aide.:slight_smile:
je vais creuser et ne manquerais pas de faire un retour si je trouve la cause du problème.

la question reste ouverte.

des liens pour systemd
https://wiki.archlinux.fr/index.php/Systemd
https://www.freedesktop.org/software/systemd/man/systemd.unit.html#…

Merci.