Server crash dengan ascii NUL karakter di syslog (^ @ ^ @ ^ @ ...)

21

Saya memiliki beberapa server khusus yang di-host oleh OVH (penyedia layanan Prancis). OS: Ubuntu 12,04 x64

Beberapa bulan yang lalu, salah satu server saya macet. Satu-satunya hal yang aneh adalah beberapa karakter "ASCII NUL" di syslog:

^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @

Dengan bantuan penyedia layanan saya, kami memeriksa:

  • RAM
  • CPU
  • DISK

Semuanya baik-baik saja, jadi penyedia layanan saya merekomendasikan untuk mengganti motherboard server dan memperbarui kernel (yang kami lakukan). Namun sejak itu, server ini mengalami crash dua kali lagi, dengan karakter yang sama di syslog.

Tanpa penjelasan lebih lanjut, kami memutuskan untuk mengubah server ini (ini direncanakan dalam beberapa minggu).

NAMUN, masalahnya, malam ini, ini terjadi pada server lain. Kecelakaan yang sama, karakter yang sama di syslog, tidak ada penjelasan.

Adakah yang tahu apa yang harus kita periksa? Apakah ini masalah perangkat keras atau perangkat lunak?

Kilian
sumber
3
Apakah Anda menemukan solusi untuk masalah ini? Saat ini saya mengalami masalah yang sama ...
BurninLeo
2
@BurninLeo: sama di sini
WoJ
Sebenarnya, saya tidak menemukan solusi (di server virtual). Setelah beberapa saat dan beberapa pembaruan (reguler) dari stabil-rilis, masalahnya hilang ...
BurninLeo
5
NUL byte di syslog adalah efek umum dari crash yang mencegah sistem dari sinkronisasi dan pelepasan sistem file secara bersih. Mereka tidak memberikan indikasi apa yang sebenarnya memicu kecelakaan itu.
n.st

Jawaban:

8

Saya akan membagikan secara lebih luas jawaban hebat yang diberikan oleh @ n-st:

NUL byte di syslog adalah efek umum dari crash yang mencegah sistem dari sinkronisasi dan pelepasan sistem file secara bersih. Mereka tidak memberikan indikasi apa yang sebenarnya memicu kecelakaan itu.

Memang, saya sering melihat perilaku itu setelah server crash: karakter-karakter tersebut adalah NULL( \0) karakter yang mungkin mewakili blok yang dipulihkan yang diisi dengan nol oleh beberapa proses pemulihan.

Adapun penyebab kecelakaan, itu pertanyaan yang berbeda secara keseluruhan - Anda akan perlu untuk menyediakan cara yang lebih banyak informasi untuk diagnostik untuk bahkan mulai. Saya akan merekomendasikan membuka pertanyaan lain tentang ini jika Anda masih memiliki masalah.

anarcat
sumber
-1

Jika Anda menggunakan editor teks untuk melihat file log, itu bisa menjadi penyebabnya;

  • karakter " ^@" mungkin mengindikasikan bahwa sebuah garis terlalu panjang (mis: dalam vim, nyalakan pembungkus )
  • The encoding adalah serasi; baik menggunakan editor teks yang berbeda untuk melihat file, atau mengubah pengkodean yang digunakan oleh syslog.
Sinyal15
sumber
4
Saya memiliki masalah serupa. Baik garis panjang maupun pengkodean menjelaskan karakter NUL di akhir syslog (menyalin file ke disk eksternal dan membukanya dengan SciTE, pengkodean UTF-8).
BurninLeo
Kedengarannya seperti Anda mungkin membuka file yang disandikan UTF-8 dalam editor yang tidak memahami UTF-8 dengan sangat baik. Namun itu bisa menjadi masalah CRLF (perintah dos2unix dan unix2dos mungkin membantu)
Signal15
3
NUL byte di syslog adalah efek umum dari crash yang mencegah sistem dari sinkronisasi dan pelepasan sistem file secara bersih. Mereka tidak memberikan indikasi apa yang sebenarnya memicu kecelakaan itu.
n.st
1
@ n.st Jawaban yang bagus! :) Anda harus menempatkan yang itu sebagai "jawaban"
Signal15