"디스크 검사(실행중)"이란 타이틀의 팝업이 뜨는데,
그 팝업의 내용에는 "- 다음 디스크 검사가 실행중입니다"란 글귀 뿐입니다.
어떤 디스크가 검사중인지, 진행율이 얼마나 되었는지 등의 아무런 정보도 없어서, 도대체 무엇을 하고 있길래, 10일이 지나도록 끝이 안나는건지 알 수가 없네요.
팝업 내용에 검사 진행의 진행상황 등 뭔가 확인할 수 있는 정보를 띄워주셨으면 좋겠습니다.
디스크 검사가 진행율을 알 수 없을 정도의 복잡한 처리를 한다고 생각되어 지지는 않네요.
그리고, 뭔가 문제가 있어서 진행이 안되면, 어느 디스크가 문제인지 알려주고, 종료를 하던지 해야하지 않나요?
도대체 10일이나 뭘하고 있는지도 모르겠고, 얼마나 남은지도 모르니, 이거 정말 답답하네요.
제가 디스크 검사를 하기전에 telnet으로 접속하여서 "echo check > /sys/block/md1/md/sync_action" 명령을 통하여
md의 check 를 raid1인 4T디스크에 대해서 진행해보았습니다. 그 때, 완료되는데 6-7시간정도 밖에 걸리지 않습니다.
md의 check가 디스크 전체를 다 읽는 것이라서, 4T 디스크 두개 전체를 다 읽는데 하루도 걸리지 않습니다.
2T 디스크까지 다 한다고 해도, 많아봐야 2-3일이면 끝나야하는데, 10일이 지나도록 끝나지 않습니다.
2T는 raid0이라서 /sys/block/md?/md/sync_action 파일이 없기 때문에, 확인할 순 없었지만, 디스크가 그렇게 오래된 것도 아니고,
NAS에 사용하기 이전부터 윈도우 시스템의 raid1으로 잘 사용하고 있던 디스크입니다.
이건 분명 NAS의 디스크검사 기능의 문제로 밖에 여겨지지 않네요.
이와 함께 지금까지 NAS4dual를 사용하면서,
개선하였으면 좋겠다고 생각했던 사항들 몇 가지를 얘기해드리고자 합니다.
보시고 개선해주실 수 있으신건 추후 펌웨어 업데이트에 적용되었으면 합니다.
(이 내용들에 대해서 특별한 답변 주시기 않으셔도 됩니다)
- telnet
- 홈페이지 게시판을 보면 예전에는 ssh를 지원했던거 같은데, 왜 보안이 안되는(암호가 노출되는) telnet을 사용하시나요? ssh를 사용하여야 하지 않을까요?
- 디스크 검사와 같이 다른 서비스 정지하는 경우에도 telnet 서비스는 되어야하지 않을까요?
- 뭔가 시스템 확인을 해보려고 해도 관리페이지에서는 아무것도 할 수 없고, telnet으로 접속해서 직접 확인을 해봐야할 때에 접속도 못하니 아무것도 못하네요.
- 관리페이지에서는 시스템종료나 재시작도 안되던데, telnet에서는 (검사 시작전에 접속한 telnet 세션으로) reboot명령으로 재시작은 할 수 있더군요
- hdd 파티션 생성시, 2G의 Linux swap를 잡던데, 이게 왜 필요한지 모르겠네요.
- raid 생성시 파티션으로부터 생성할 수 있도록도 해 주셨으면 좋겠습니다.
- 용량이 다른 디스크에서 일부만 raid로 사용할 수 있도록
- linux raid(md)가 파티션을 md member로도 사용하므로 불가한 사항은 아님(현재 시스템에서도 디스크를 선택해도 결국은 파티션을 만들어서 md만들고 있음)
- 예를 들어, 2T 하드가 raid1으로 있고, 디스크 하나가 문제가 되어서 하나를 바꾸는데 4T로 바꾼 경우,
- 4T에서 2T만 파티션으로 만들어 기존 raid1에 붙이고 나머지 2T는 다른 파티션으로 사용할 수도 있음.
- raid1 disk하나만으로 생성(이건 올해 4월경의 펌웨어에서 확인한 사항으로 현재는 다를 수 있음)
- 전체 디스크가 2개 있을 때에는 raid1을 디스크1개만을 사용해서 만들 수 있었는데,
- 전체 디스크가 4개일 때에는 에러가 나면서 안되네요.
- raid1은 디스크갯수와 무관하게 1개만(나머지는 missing으로) 만들 수 있어야 하지 않을까요?
- HDD LED activity
- 하드 LED표시가 휴면상태여부만 확인할 수 있는데, 하드 read/write 동작 상태도 확인할 수 있어야 하지 않을까요?
디스크검사에서 하드 LED 만 깜빡여도 어느 디스크를 진행중이라고 생각이라도 할 텐데, 아무것도 알 수 없네요.
- 포맷시 inode 너무 많게 하신거 아닌지?? (5%정도를 사용하던데.. 4T하드의 경우 ext4포맷시 180G정도 사용)
- LogFiles 저장하는 하드가 SLEEP로 간 경우
- sleep으로 가면 wakeup되기전까지의 로그는 저장되지 않네요.(로그남기는 디스크가 sleep로 갈때, sleep로 갔다는 로그는 없고, wakeup된 로그는 있음)
- 로그 저장을 위해서 sleep하지 않거나, wakeup하는 것도 문제가 있다고 보여지므로(예를 들어 주기적으로 상태로그 남기도록 해 놓았을 경우, sleep으로 전환되지 않겠죠)
- log 저장 하드가 sleep로 가면, 이후 로그는 메모리에 남기다가 메모리에 어느정도 용량이 되면, 한번에 하드에 저장하면 sleep도 어느정도 유지하면서 로그도 유실되지 않을 듯 하네요.
- 디스크검사
- 서비스 중지하지 않고 raid1를 check 하거나 repair하는 동작을 못하나요?
(ex. "echo check > /sys/block/md0/md/sync_action", "echo repair > /sys/block/md0/md/sync_action" 명령과 같이 서비스중지 없이 검사할 순 없나요?)
- md check, repair부터 시도하고 문제가 계속될 때, 서비스중지하고 검사를 진행해야하지 않을까요?
- /sys/block/md0/md/mismatch_count 값은 모니터링 하나요? (아직 사용해보면서 mismatch_count가 발생한 적이 없어서, 몰라서 언급합니다.)
- 리눅스 시스템에서는 cron을 통해 주기적으로 md check하는데, 이와 같은 (서비스정지 없이 하는)주기적인 체크는 없는 듯 하더군요?
- 디스크검사를 요구하는 팝업에서 취소하면, 다음에 HDD/RAID관리 메뉴를 다시 접근하면 또 다시 묻던데, 완전히 취소시킬 수는 없는 건가요?
- 앞서 처럼 디스크검사를 완료하지 못한 경우, 그냥 사용할 방법이 없는 듯하네요.
- raid speed
- /proc/sys/dev/raid/speed_limit_min 값이 기본값(1000)인데, resync나 rebuild시 너무 느림 (대용량하드의 경우 너무 오래걸림)
- 조금 크게(10000 정도)로 기본 설정되도록 해주셨으면 좋겠습니다.
- 관리자 메뉴에서 직접 조정할 수 있어도 좋을 듯하네요. (telnet으로 접속해서 직접 변경할 수도 있으므로 없어도 무방)
- 테스트로 raid1 디스크 전체를 빼고 켜고, 다시 꺼고 넣고 켰는데, resync하던데, 왜 resync하는지 이유를 모르겠네요.
- 정확히 상황은
- disk1(HDD1), disk2(HDD2), disk3,4(raid1-VOL1)인 상황에서
- disk3,4를 디스크을 빼서
- disk1(HDD1), disk2(HDD2)로 부팅해서
- disk1을 raid1로 변경하여 disk1(raid-VOL1), disk2(HDD1)으로 설정하고
- 다시 disk3,4를 디스크을 꽂아서
- disk1(raid1-VOL1), disk2(HDD1), disk3,4(raid-VOL2)로 되었는데,
- disk3,4 가 resync되고 있었습니다.
- 디스크가 동시에 제거되고, 동시에 삽입되었기에, clean상태였을 텐데, resync될 상황이 아닌듯해서요.