• 카테고리

    질문 & 답변
  • 세부 분야

    데브옵스 · 인프라

  • 해결 여부

    해결됨

스크립트 실행 결과 미표시

23.12.07 20:57 작성 조회수 117

0

스크린샷 2023-12-07 오후 8.55.46.png스크린샷 2023-12-07 오후 8.56.21.png텔레그램봇으로 알림이 안뜨는건 nginx의 용량이 안차서 그런것 같은데

혹시 고의적으로 용량을 늘릴 수 있는 방법 있을까요?

답변 1

답변을 작성해보세요.

1

안녕하세요.

알림은 두 가지 방법으로 테스트를 해 보실 수 있을 것 같습니다.

  1. dd 명령어로 더미파일을 만들어서 디스크 공간을 차지하게 만드는 방법
    예를들어 다음과 같은 dd 명령으로 5GB 크기의 test.txt 파일을 만들 수 있습니다.
    dd if=/dev/zero of=test.txt bs=1 count=0 seek=5G


    이런 식으로 디스크 용량에 맞춰 큰 파일을 만들고 테스트를 해보세요.

  2. 조건을 변경하는 방법
    tel_push.sh에서 디스크공간을 확인하는 조건의 숫자를 낮춰서 텔레그램봇으로 알림을 보낼 수 있습니다.
    예를들어 특정 파티션을 90%이상 사용할 때 알림을 보내게 했다면 5%이상 사용할 때 알림을 보내도록 조건을 바꾸고 실행하여 알림을 확인할 수 있습니다.

 

여현구님의 프로필

여현구

질문자

2023.12.17

/var/log/nginx 안에서 dd명령어를 실행해야겠죠?

여현구님의 프로필

여현구

질문자

2023.12.17

그래도 안되서 너무 답답합니다 ..ㅜㅜ

여현구님의 프로필

여현구

질문자

2023.12.17

image뭐 아무것도 안뜨긴 하지만 텔레그램 봇도 반응이 없습니다!

추가 설명입니다.

dd 명령어는 아무 곳에서 실행하셔도 상관없습니다.

제가 위 답변에서 예시로 들은건 5GB파일이지만 df 결과를 보시고 /(루트) 파티션이 90%이상 사용하도록 파일크기를 맞춰서 만드셔야 합니다.

 

그리고 추가로 보내주신 코드부분을 그대로 실행하신 것이 맞을까요?

보내주신 코드 : ./tel_push.sh "cent1" "/var/log/nginx partition check please"

혹시 이렇게 실행하신거라면 실행은 ./tel_push.sh로 해주세요.

여현구님의 프로필

여현구

질문자

2023.12.18

아 /var/log/nginx가 아니라 / 자체 용량이 90이 넘어야 실행이 되는건가요?

리눅스를 설치할 때 파티션을 세분화해서 나누지 않았기 때문에 /var/log/nginx 도 /(루트) 파티션에 포함이 됩니다. 그러니 /var/log/nginx에서 dd로 대용량 파일을 생성하셔도 상관없습니다.

 

여기서 텔레그램으로 알람을 보내는 이유는 /(루트) 파티션의 사용 용량이 90%가 넘었기 때문에 공간을 확보하라는 의미로 관리자에게 메세지를 보내는 것입니다.

스크립트 소스를 보시면 if문으로 /(루트) 파티션 사용하는 용량(퍼센트)을 가져와서 숫자와 비교하는 부분이 있을거예요.

그렇기때문에 처음에 질문하신 문제의 해결방법이 / 파티션 퍼센트를 가져와서 비교하는 부분 숫자를 낮추거나 /(루트) 파티션의 사용 용량을 늘리거나 하면 해결할 수 있다고 말씀드린거예요. ^^