init.d 스크립트 로그 메시지를 디스크에 어떻게 쓰나요?

init.d 스크립트 로그 메시지를 디스크에 어떻게 쓰나요?

저는 데비안을 사용하고 있습니다. 많은 스크립트 /etc/init.d/리눅스 표준 라이브러리, 좋아요 log_success_msglog_warning_msg. LSB 문서는 이러한 함수가 정확히 무엇을 수행해야 하는지에 대해 약간 모호한 것 같습니다.

log_success_msg 함수는 시스템이 지정되지 않은 로그 파일에 성공 메시지를 기록하도록 해야 합니다. 메시지 형식은 지정되지 않습니다. log_success_msg 함수는 또한 표준 출력에 메시지를 기록합니다.

그러나 나는 이것이 함수가 할 수 있는 것으로 해석된다고 생각합니다.누구나로그 파일에 쓰기또는그냥 표준 출력에 쓰세요. 적어도 데비안에서는 그런 것 같습니다.오직메시지가 표준 출력에 기록되도록 합니다. 이러한 기능을 정의하는 파일을 검사했을 때 의심이 확인되었습니다. 로그 메시지를 표시하기 위해 /lib/lsb/init-functions호출되었을 뿐입니다 .echo

이는 도움이 되지 않는 동작입니다. 시작 시 표준 출력에 기록된 텍스트는 시작이 완료된 직후 사라지며 어떤 경우에도 화면 상단으로 스크롤될 수 있습니다. 물론 이러한 메시지가 실제로 로그 파일에 저장되면 더 도움이 될 것입니다. 실제로 표준 출력으로 이동하는 경우에는 이러한 기능을 통해 아무 것도 기록할 이유가 없습니다.

이러한 로그를 파일에 기록할 수 있는 방법이 있습니까? 왜 표준 출력에 무엇이든 "로그"하는 데 신경을 쓰는지 말해 줄 수 있는 사람이 있습니까? 어떤 유용한 기능이 있나요?

답변1

해결책은 설치 bootlogd하고 배치 하는 것 같습니다.

BOOTLOGD_ENABLE=yes

존재하다 /etc/default/bootlogd.

인용하다:

관련 정보