GNU/Linux >> Linux Esercitazione >  >> Linux

Esegui lo script con rc.local:lo script funziona, ma non all'avvio

Su alcuni Linux (Centos e RH, ad esempio), /etc/rc.local è inizialmente solo un collegamento simbolico a /etc/rc.d/rc.local . Su quei sistemi, se il collegamento simbolico è interrotto, e /etc/rc.local è un file separato, quindi cambia in /etc/rc.local non verrà visualizzato all'avvio:il processo di avvio eseguirà la versione in /etc/rc.d . (Funzioneranno se si esegue /etc/rc.local manualmente, ma non verrà eseguito all'avvio.)

Suona come sul sistema dimadima, sono file separati, ma /etc/rc.d/rc.local chiama /etc/rc.local

Il collegamento simbolico da /etc/rc.local a quello "reale" in /etc/rc.d può perdersi se si sposta rc.local in una directory di backup e lo copia di nuovo o lo crea da zero, non realizzando quello originale in /etc era solo un collegamento simbolico.


In questo esempio di script rc.local utilizzo il reindirizzamento io alla primissima riga di esecuzione sul mio file di registro:

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

exec 1>/tmp/rc.local.log 2>&1  # send stdout and stderr from rc.local to a log file
set -x                         # tell sh to display commands before execution

/opt/stuff/somefancy.error.script.sh

exit 0

In Ubuntu ho notato che ci sono 2 file. Quello vero è /etc/init.d/rc.local; sembra l'altro /etc/rc.local è fasullo?

Una volta modificato quello corretto (/etc/init.d/rc.local ) è stato eseguito proprio come previsto.


Ho finito con upstart, che funziona bene.


Linux
  1. script di avvio utorrent / esegui utorrent all'avvio – Ubuntu 14.04 / 14.10

  2. Linux – Kali Linux è installato ma non viene visualizzato in Boot Manager?

  3. Bashscript funziona da Terminal ma non da Crontab?

  4. Lo script Init.d non viene eseguito all'avvio?

  5. Il comando Rm nello script Bash non funziona con la variabile?

Linux:esegui script ogni 30 minuti con Systemd?

Eseguire script con argomenti come utente?

comando sed con l'opzione -i non riuscita su Mac, ma funziona su Linux

Come posso richiedere un file ma non salvarlo con Wget?

Ubuntu - Esegui il comando all'avvio con sudo

Pycharm tensorflow ImportError ma funziona bene con Terminal