GNU/Linux >> Linux Esercitazione >  >> Linux

Come trovare i messaggi di errore dagli script Linux init.d/rc.d?

Soluzione 1:

  1. No, vanno a STDOUT (se usi echo ) o STDERR (se usi echo >&2 ).

  2. I tuoi script devono scrivere nei log e/o nel syslog da soli (la tua distribuzione potrebbe contenere alcuni init.d funzioni che potrebbero aiutarti - aggiungi la tua distribuzione alla tua domanda).

Se cerchi i log cerca il tee comando. Se scegli syslog guarda logger . Puoi combinarli come preferisci.

Soluzione 2:

Scrivi uno script wrapper che chiami il tuo script e reindirizzi l'output a un file

#!/bin/bash

    /path/to/your/script &>/path/to/logfile

Soluzione 3:

Potresti creare una funzione per far risuonare il messaggio sia sullo schermo che su syslog, qualcosa del genere:

LOGGER="/usr/bin/logger -t $myScript"    # check the location of logger for your system

myEcho () {
    echo "$1"
    $LOGGER "$1"
}

Puoi anche metterlo in un file separato e includerlo nei tuoi script con

#!/bin/bash
myScript=$(basename $0)
[ -r /myFunctions/myecho ] && . /myFunctions/myecho

Soluzione 4:

I messaggi dagli script init generalmente non vengono catturati da nessuna parte. Pertanto, è necessario implementare un modo per farlo da soli. Una buona idea è usare logger per inviare tutto l'output a syslog. Questo esempio invierà stdout e stderr a syslog:

exec 1> >(logger -s -t $(basename $0)) 2>&1

L'ho trovato in questo fantastico articolo:http://urbanautomaton.com/blog/2014/09/09/redirecting-bash-script-output-to-syslog/.


Linux
  1. Come usare TROVA in Linux

  2. Linux:come configurare il file Syslog.conf, per registrare i messaggi di Iptables in un file separato?

  3. Come impedire a un utente di accedere, ma consentire a su - user in Linux?

  4. Come disabilitare completamente e dinamicamente lo stack IPv4 da Linux?

  5. Come connettersi a una VPN Juniper da Linux

Come trovare il numero di core della CPU dalla riga di comando in Linux

Come trovare l'indirizzo IP in Linux

Come trovare il nome host in Linux

Come trovare l'elenco dei repository installati dalla riga di comando in Linux

Come trovare tutti i caratteri installati dalla riga di comando in Linux

Come cercare file dalla riga di comando di Linux