DoVirus.kr

728x90

 

NAS가 특정 시간마다 깨어나는 느낌을 받는다

뭔가 이상하다 싶어서 보고 있자니

 

매 오전 10시, 매 오전 10시 30분, 매 오전 11시 등등 반복이 된다.

누가 자꾸 정시에 일으키는건지 찾도록 해보자

 

먼저 ssh로 nas에 접속해야 한다

 

제어판 -> 터미널 에서 ssh 활성화 해주고

putty나 요즘은 cmd창에서도 가능하다

 

ssh [관리자계정]@[NAS IP] -p[접근 포트]

ex) ssh admin@192.168.0.1 -p22

 

로그인을 한 후 sudo -i 로 root 계정으로 접근 시도

패스워드는 관리자계정 패스워드와 동일하다

 

cat /etc/crontab

 

crontab은 linux 상에서 스케쥴을 걸어주는 놈이라고 생각하면 된다.

첫번째 숫자는 분, 시간, 일, 월, 주 순인데

0 0 1 인 첫번째는 매월 1일 0시 0분에 반복

0 11 29 인 두번째는 매월 29일 11시 0분에 반복

0 11 1 인 세번째는 매월 1일 11시 0분에 반복

(두번째 세번째는 SMART체크 관련 스케쥴이다)

 

자 대충봐도 매 30분, 00분 마다 돌아가라고 되어 있는 젤 긴거가 수상하다

id=4 라고 되어 있다

 

/usr/syno/bin/synoschedtask --get

이라고 입력하면 저장된 스케쥴들이 보여진다.

 

ID: [4]
Name: [Task 4]
State: [enabled]
Owner: [root]
Type: [daily]
Start date: [0/0/0]
Run time: [0]:[0]
Repeat every [30] min (s) until [23]:[30]
Command: [/usr/syno/bin/syno_disk_latency_collector record]
Status: [No last run record]

 

뭔지 모르지만 활성화되어 있는데 시작 시간도 없고 뭔가 이상하다

이름으로 보면 디스크 응답시간을 수집하는 뭔가 같은데 왜 하지 저걸?

찾아보자 구글링

 

마땅한 결과 값이 안나온다 이게 뭔가 의심은 하지만 뭔지 아는 사람은 없고

제조사에서도 답변을 안해주는 거 같다.

그래서 직접 문의해 봤다

한글로 답변이 안되기에 번역기로 돌려서 답변해 줬다고 한다

암튼 결론은 6.2.4에서 수정 된다고 한다

그래서 지웠다 재부팅해보고 내일 지켜봐야겠다.

 

--- 내용 추가 ---

 

해결 안되었다

DSM 6.2.4 패치를 기다려 보자...

10시에 10시 반에

대체 뭐가 돌아 가길래 계속 깨어나는걸까...

 

그래서 또 찾아 봤다 매 0분에 0-23/1 이건 대체 그냥 * 이랑 같은거다 매 시간마다 라는 의미다... 매 0분마다

이유가 어찌되었던 스케쥴이 돌아야 하고 그 내용이 스크럽하는 거라 한다 해당 내용은

저장소 관리자 -> 스토리지 풀 -> 스케쥴 내용 이다

분명 여기서는 시간을 설정 해 놨는데 실제로는 일단 스케쥴 매시간 돌리고 Yes or No 를 판단하는 멍청한 구조 인거 같다

본인은 본래 활성화 시간을 3개월에 한번씩 11시 ~ 23시 까지만 돌리도록 하였었다.

0 0-23/1 * * * 으로 되어 있는 스케쥴 표를

15 11-23/1 * * * 로 바꾸면 되지 않을까 싶다. 15분은 다른 woke up이랑 구분을 하기 위함이다.

 

그럼 내일 보자

 

--- 내용 추가 ---

일단 10시 10시 30분 11시는 그대로 깨어난다 뭔가 다른게 설정 되어 있는거 같은데 못찾겠다...

암튼 그렇지만 11~23시 사이에도 랜덤하게 깨어난다 어차피 스크럽은 매달 돌리는게 아니라서

3개월에 한번씩 돌아가라고 3,6,9,12를 지정하고 매달 1일 오전 9시 15분 부터 돌아가라 라고 설정 했다.(11시에서 수정)

10시 깨어나는게 뭔지 도통...

 

--- 내용 추가 ---

smb 비활성화 상태 임에도 브로드캐스트 패킷이 발생하고 또 이 시간이 디스크가 깨어나는 시간과 일치하여 설정을 추가 변경 하였다

 

/etc/init/nmbd.conf

true => false (3군데)

exec /usr/bin/nmbd -F => exec /usr/bin/nmbd -D (1군데)

 

그리고 재부팅

 

smb브로드캐스팅 패킷 발생 안하는데 절전모드도 안들어감...

 

--- 2021.04.16 내용 추가 ---

6.2.4 업뎃이 중간에 있었고 home assistant 설치하려고 docker 설치 했더니 절전모드 안들어가고...

외장 usb 하드 붙였더니 외장하드는 절전모드 들어가고 메인 하드는 절전모드 안들어가고...

 

일단 PC가 켜져 있으니 절전모드에 잘 안들어가는 현상부터 잡으려고 4시간을 tcpdump 발생 시킴

6Mbyte 파일을 분석한 결과

 

smb 서비스 제거

PC -> nas 로 smb는 안쓰는게 좋을 것 같아서 raidrive를 ftp로 사용하도록 함

하지만 윈도우는 호락호락하게 끄는걸 허락하지 않기에

윈도우 방화벽에서 PC -> NAS로 137,138,139,445 포트를 차단 시켰음

 

 

synology drive 앱 제거

debug.dat 분석해보면 drive 관련 로그가 절전 해제 타임마다 발생하는데

이게 절전이 해제되서 그런건지 모르겠지만 일단 타임스케쥴상 drive는 하루에 1회만 발생해야 하는데

계속 지 혼자 돌아가는 문제가 있음 절전 관련 기능을 생각하면 하등 쓸모 없는 앱으로 판단함

그래서 대신할 앱을 찾았는데 freefilesync 라는 프로그램을 스케쥴러에 등록해서 사용 중

구글에서 검색하면 www.google.com/search?q=freefilesync

 

freefilesync - Google 검색

2020. 9. 2. · FreeFileSync is a free Open Source software that helps you synchronize files and synchronize folders for Windows, Linux and macOS.

www.google.com

국내 사용 리뷰 글들 있으니 참조하면 됨 이게 훨씬 나은 것 같음

 

webclient 서비스 제거

tcpdump를 보면 매 41분 마다 PC -> NAS 로 80 포트로 http 전송을 시도하는 덤프가 발견되어 내용을 보니

profind나 option 같은 method를 사용하는 문제가 발견 되었는데 이게 webdav 관련 기능으로 인해 발생하는거 까지는 이해 했는데 대체 저 주소를 어떻게 알고??? 라는 생각에 찾아 봤지만 귀찮아서 포기하고 

윈도우 서비스 에서 webclient 를 비활성화 시켰음 webdav 쓰는 사람은 해제 하면 안됨

 

일단 더 지켜보고 상황봐서 도저히 안되겠다 싶으면 윈도우로 파일서버 만들던지 할 생각임

 

-- 내용 추가 2021.04.20 --

 

끝이 보인다

 

재부팅 할일이 있어도 항상 같은 시간에 다시 한번 더 재부팅을 하여 부팅으로 인한 wake up을 방지 하는데

8:31분, 11시 21분 21시 59분 이렇게 3번 기동이 되었다.

이중 8시 31분은 모바일 기기에 의한 wakeup으로 추정 된다 그 이전에 깨어난적이 없는 시간이었으니...

11시 21분은 지속적으로 기상이 되던 로그가 있다.

 

usb 하드 탓일 가능성은 없어 보이고 SSD캐쉬 활성화를 시도한 시간과 동일해 보인다.

DDNS는 꺼서 아닐 것 같다.

그래서 다시 한번 ssd캐쉬를 삭제 했다가 만들어 봤다.

내일이면 알 수 있을 것 같다.

 

21시 59분은 부팅시간이다 무조건 깨어난다 그래서 PC 및 모바일 백업 스크립트 돌아가는 시간을 이 시간으로 맞췄다.

 

자 이게 종료 되면 다시 한번 정리 한다

728x90

Comment +0

728x90

자신이 보유한 도메인을 DDNS 서비스 하듯이 IP에 따라서 변경을 하고

해당 도메인에 대해서 SSL 인증서를 적용하자

 

자 일단 이 일의 시작은 시놀로지의 HDD 절전 때문이다.

시놀로지는 그냥 패킷 하나 발생해도 절전모드를 해제해 버리기 때문에 절전모드는 그냥 포기하는게 좋을 것 같다

아무튼 그 빈도를 하나라도 줄이고자 synology.me 라던지 하는 시놀로지 제공 DDNS 와 quickconnect 를 꺼버렸다.

iptime 공유기도 사용하기 때문에 iptime.org 도메인으로 ddns 연결은 가능하지만 인증서 발급이 안되는 도메인이기에...

 

자 시작하자.

준비물 asus 공유기(멀린펌) 또는 시놀로지 NAS 또는 라즈베리파이 등등 리눅스 서버

 

 

가. 개인 도메인을 DDNS로 연결하기

참고 seolin.tistory.com/118

 

1. 보유 도메인의 DNS 변경

1차 samara.ns.cloudflare.com

2차 watson.ns.cloudflare.com

자신이 보유한 도메인 관리 업체에 로그인하여 위와 같이 바꾼다.

위 DNS는 바뀌기도 하니 www.cloudflare.com  에서 직접 확인해 보도록 하자.

 

2. cloudflare.com 가입하기

무료 회원 가입하면 된다.

 

3. DDNS로 사용할 도메인 주소 등록

Type : A 

Name : nas (예제)

IPv4 address : 1.1.1.1 (일단 임시 등록)

 

자세한 내용은 seolin.tistory.com/118 참고하도록 한다.

 

4. DDNS 자동 갱신

등록 절차를 마쳤으면 API 주소 확인하기.

토큰이니 zone id 이니 있는데 전부 메모장에 기재하도록 하자.

중요한 데이터이니 외부에 노출되는 일이 없도록 하자.

라즈베리는 위 링크 따라하도록하고

asus 공유기는 blog.gomgom.net/setting-cloudflare-ddns-on-asus-router/

 

ASUS 공유기에서 개인도메인 CloudFlare DDNS 설정하기 (멀린롬 사용) [2016/07/24 전면개정]

ASUS 공유기를 통해 CloudFlare DNS(DDNS)를 이용하고 싶을 때, 멀린롬을 활용하여 CloudFlare에 동적 IP를 전송하는 방법에 대해 설명합니다.

blog.gomgom.net

이 절차를 따라하도록 하자.

하나 수정 하자면 현재 자신의 IP 주소가 나와 있는 스크립트

 

NEW_IP='wget http://ipinfo.io/ip -qO -' 이 부분을

 

NEW_IP=$(wget http://ipinfo.io/ip -qO -) 이렇게 수정 하자

 

위의 절차대로 API 값 입력하여 파일 생성 및 자동 갱신 등록 완료 되었다면

해당 스크립트를 실행 하면 cloudflare.com 에서 현재 IP 주소로 갱신이 되는걸 볼 수 있다.

 

이제 절반 왔다.

 

6. 인증서 발급 받기

이제 자신의 도메인으로 인증서를 발급 받아야 한다.

Let's encrypt 에서 받는다. 3개월마다 갱신해야 하는대신 무료이다.

귀찮으면 1년짜리 돈주고 사면 된다.

 

인증서 발급 참조 blog.naver.com/jcjee2004/221831609605

 

[Synology] 시놀로지에 Let's Encrypt 와일드카드 인증서 적용하기

시놀로지의 제어판에서 발급 받을 수 있는 Let's Encrypt 인증서는 90일 짜리 SSL 인증서 입니다...

blog.naver.com

시놀로지는 GUI상에서 발급 받을수 있도록 하는 메뉴가 있는데 이상하게 잘 안된다.

그냥 와일드 카드로 받아버리면 만사 해결 도 되고 추가로 리버스 프록시 주소 생성해서 확장하기에도 좋다.

 

-끝-

728x90

Comment +0

728x90

작성하는 synology 제품은 1517+ 기준이며 ssd chache는 방열판이 달려 있다.

DSM 버전은 DSM 6.2.3-25426 Update 2 기준 임

 

날도 선선한 요즘 갑자기 디스크가 열 받았다고 shutdown 되버렸음...

재부팅도 아니고 종료 임...

 

항상 71도 인걸 감안하여 팬속도 커스텀 메뉴를 찾아 봄

 

시놀로지 nas는 ssh 로 접근 가능하도록 설정을 할 수가 있는데

관리자 계정으로 로그인 후

# sudo -i

를 통하여 root 계정으로 들어 갈 수 있다

 

# vi /usr/syno/etc/scemd.xml

이와 같이 파일을 vi로 열어 보면

 

이와 같이 되어 있는데 xml 이다보니 생각보다 직관적으로 알아 볼 수 있게 적혀 있다.

빨간색 박스의 disk 는 당연히 디스크, m2 는 당연히 캐쉬, cpu 는 당연히 cpu 온도 관련 설정 부분이다

자 여기서 중요한건 ssd 캐쉬 온도 관리 이기 때문에 ssd를 보는데

fan_speed=40% 20hz 가 52도에 동작하도록 되어 있다

즉 ssd 캐쉬 온도가 52도면 40%의 속도로 팬을 돌려라 라는 내용인데

평소면 별 문제가 없으나 5분이상의 복사를 하게 되면 캐쉬가 재생성을 하게 되는건지 엄청나게 발열이 심해진다

60도 찍고 99% 속도로 돌아봤자 이미 발열이 가속도를 받기 시작한 상태라 먼저 71도 찍어 버리고 그냥 셧다운 해버린다

 

그래서 이와 같이 바꿨다

shutdown 온도를 71도 -> 81도

ssd 캐쉬 온도가 52도 찍으면 바로 팬 냅다 99% 풀로 돌려라 라고...

 

평소 별 영향 없으면 디스크는 40도 가량 ssd 캐쉬는 40도 중반을 유지한다

m.2 ssd는 좀 더 온도가 올라가도 타지는 않고 쓰로틀링이 걸려서 성능 저하가 발생하긴 한다

근데 이는 nvme 방식에서 주로 문제가 되는건데 sata 방식 ssd에서도 발열이 이렇게 생길 줄은 몰랐다

메인 pc에서 사용하는건 전혀 문제가 없는데...

 

아무튼 저장하고 재부팅 해주면 적용 된다.

 

--- 내용 추가 ---

# vi /usr/syno/etc/scemd.xml 이 파일 뿐 아니라

# vi /usr/syno/etc.defaults/scemd.xml 이 파일도 동일하게 수정해야 한다. 업데이트 된건지 어쩐지는 모르겠으나

잘 되 던게 다시 71도로 돌아 왔다

728x90

Comment +0