GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana menemukan pesan kesalahan dari skrip init.d/rc.d Linux?

Solusi 1:

  1. Tidak - mereka membuka STDOUT (jika Anda menggunakan echo ) atau STDERR (jika Anda menggunakan echo >&2 ).

  2. Skrip Anda harus menulis ke log dan/atau syslog sendiri (distribusi Anda mungkin berisi beberapa init.d fungsi yang mungkin membantu di sana - tambahkan distribusi Anda ke pertanyaan Anda).

Jika Anda mencari log, cari tee memerintah. Jika Anda menggunakan syslog, lihat logger . Anda dapat menggabungkannya dengan cara apa pun yang Anda inginkan.

Solusi 2:

Tulis skrip pembungkus yang memanggil skrip Anda dan mengalihkan hasilnya ke file

#!/bin/bash

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

Solusi 3:

Anda dapat membuat fungsi untuk menggemakan pesan ke layar dan ke syslog, kira-kira seperti ini:

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

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

Anda juga dapat memasukkannya ke dalam file terpisah dan memasukkannya ke dalam skrip Anda dengan

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

Solusi 4:

Pesan dari skrip init umumnya tidak ditangkap di mana pun. Jadi, Anda perlu menerapkan cara untuk melakukannya sendiri. Sebaiknya gunakan logger untuk mengirim semua output ke syslog. Contoh ini akan mengirimkan stdout dan stderr ke syslog:

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

Saya menemukannya di artikel bagus ini:http://urbanautomaton.com/blog/2014/09/09/redirecting-bash-script-output-to-syslog/.


Linux
  1. Bagaimana cara melihat semua pesan booting di Linux setelah booting?

  2. Cara melihat file tersembunyi menggunakan perintah `find` Linux

  3. Bagaimana cara mencegah pengguna masuk, tetapi izinkan su - pengguna di Linux?

  1. Cara menggunakan FIND di Linux

  2. Bagaimana cara sepenuhnya menonaktifkan tumpukan IPv4 secara dinamis dari Linux?

  3. Cara terhubung ke Juniper VPN dari Linux

  1. Linux – Bagaimana Mengkonfigurasi File Syslog.conf, Mencatat Pesan Iptables Dalam File Terpisah?

  2. Cara Menulis Script Init Linux Berdasarkan Standar Init LSB

  3. Bagaimana saya bisa menemukan file tertentu dari terminal Linux?