Comment supprimer / script de sauvegarde de /etc/init.d/?

24

Je travaille avec Linux depuis un certain temps mais de manière assez simple.

Je comprends que les scripts init.dsont exécutés au démarrage du système d'exploitation, mais comment cela fonctionne-t-il exactement?

Que faire si je souhaite conserver un script mais ne souhaite pas qu'il démarre automatiquement?

Supposons que j'en ai un /etc/init.d/varnishet que je souhaite le désactiver temporairement. Comment puis-je m'assurer qu'il ne démarre pas si le système d'exploitation redémarre? Je ne veux pas supprimer le script. Et si je veux l'ajouter à nouveau?

iDev247
la source

Réponses:

34

Il y a deux façons. Si vous souhaitez simplement le faire temporairement, vous pouvez supprimer le bit d'exécution du fichier:

$ chmod -x /etc/init.d/varnish

Ajoutez-le ensuite si nécessaire:

$ chmod +x /etc/init.d/varnish

La manière "officielle" dans Ubuntu (ainsi que dans Debian et autres dérivés Debian), cependant, consiste à utiliser la update-rc.dcommande:

$ update-rc.d varnish disable

Cela supprimera tous les liens symboliques des dossiers /etc/rcX.d, qui se chargeront de démarrer et d'arrêter le service le cas échéant.

Consultez la page de manuel update-rc.d pour plus d'informations.

EEAA
la source
Merci pour l'excellente réponse! chmodest une solution simple! J'ai commencé à lire manpages.ubuntu.com/manpages/precise/man8/update-rc.d.8.html et m'aide à comprendre init. Me fait réfléchir ... Je devrais lire plus du manuel.
iDev247
Heureux de vous aider. Je dois noter que la solution chmod ne doit être utilisée que très temporairement. Je n'ai pas vérifié cela, mais je pouvais voir le système Upstart (ce qu'Ubuntu utilise pour démarrer / arrêter automatiquement les processus) devenir confus.
EEAA
9
$ sudo update-rc.d -f servicename remove
Rogerio Soares
la source
1
Cette réponse ne correspond pas à la question qui veut conserver le script. «Lorsqu'il est invoqué avec l'option de suppression, update-rc.dsupprime tous les liens des /etc/rcrunlevel.drépertoires vers le script /etc/init.d/name. Le script doit déjà avoir été supprimé. » Manpages.ubuntu.com/manpages/xenial/en/man8/update-rc.d.8.html
Melebius