기존의 높은 CPU 사용 현상은 단순히 “일반적인 인덱싱이 영원히 실행될 수 있다”는 문제가 아니었습니다. 대용량 전송 후, searchd CPU 사용률이 몇 시간 동안 100%로 유지되었고, 일부 사용자는 며칠 동안 지속되었다고 보고했습니다. 이로 인해 시스템 온도가 상승했고, 검색을 중지할지 CPU를 계속 사용하게 둘지 선택해야 했습니다.
IceWhale은 이후 정확한 원인을 설명했습니다. 페이지 매김 로직의 예외 상황으로 인해 장시간 CPU 사용 문제가 간헐적으로 발생할 수 있었으며, 이 문제는 ZimaOS 1.3.2-beta2에서 수정 및 최적화되었습니다. 같은 업데이트에는 유휴 시간 후 검색 엔진을 접는 기능이 추가되었고, 파일명 인덱싱은 정확하고 실시간으로 유지되었으며, 파일 콘텐츠 인덱싱은 리소스 사용량을 낮춰 자정에 수행되도록 변경되었습니다. 현재 ZimaOS 검색 문서는 명시적인 처리량 제한과 훨씬 낮은 유휴 메모리 사용량 및 서비스 수를 포함하도록 더욱 발전했습니다.
searchd 전송이 이미 완료된 후에도 CPU를 점유했습니다.검색에는 인덱스가 필요합니다.
Zima-Giorgio는 처음에 Files 검색 기능이 파일을 인덱싱해야 한다고 설명했습니다. 이 부분은 맞았지만, CPU 사용률이 비정상적으로 오랫동안 최고 수준으로 유지된 이유는 설명하지 못했습니다.
IceWhale은 이후 페이지 매김 로직의 예외 상황을 확인했습니다.
2025년 2월 11일, orca-zhang은 장시간 지속되는 CPU 문제의 원인이 간혹 페이지 매김 로직 오류일 수 있으며, 1.3.2-beta2에서 이 문제가 수정되고 최적화되었다고 밝혔습니다.
이는 가장 확실한 출처에 기반한 결론이며, 이전의 모호한 “인덱싱 중”이라는 설명을 대체해야 합니다.
유휴 검색 서비스 접기 기능이 1.3.2에 추가되었습니다.
IceWhale은 검색이 필요하지 않을 때 다음과 같이 밝혔습니다. searchd 약 3분 동안 유휴 상태가 지속되면 해제되어, 가벼운 zimaos-search 서비스는 메모리 100MB 미만과 CPU 약 0~1%를 사용합니다.
콘텐츠 인덱싱이 자정으로 이동되었습니다.
동일한 답변에서는 두 작업을 구분했습니다.
- 파일명 인덱스 — 최대한 정확하고 실시간으로 유지됩니다.
- 파일 콘텐츠 인덱스 — 자정까지 지연되며 낮은 리소스 사용량으로 실행됩니다.
이러한 구분은 현재 검색 아키텍처에도 여전히 존재합니다.
현재 ZimaOS 검색 기능에는 리소스 제한이 명시적으로 추가되었습니다.
현재 IceWhale 문서에는 다음과 같이 설명되어 있습니다.
- 파일 변경 사항을 실시간으로 모니터링하고 파일명을 인덱싱합니다.
- 콘텐츠 인덱싱은 자정에 수행됩니다.
- 처리 유형/세션당 문서는 최대 100,000개입니다.
- 유형당 처리 시간은 최대 5분입니다.
- CPU 급증을 방지하는 쓰기 장벽 보호;
- 비활성 후 서비스/메모리 폴딩.
현재 ZimaOS Search 아키텍처를 사용하세요.
ZimaOS 1.3.2에서 Search를 비활성화할 수 있음
orca-zhang은 다음에 추가된 지속성을 언급했습니다. /etc 1.3.2에서 검색이 필요하지 않은 사용자는 다음 명령을 실행할 수 있었습니다.
systemctl disable zimaos-search
검색을 중지하거나 비활성화하면 Files 검색에 해당 서비스를 사용할 수 없다는 메시지가 표시됩니다. 현재 사용자는 과거의 버그만을 이유로 핵심 서비스를 비활성화하기 전에 먼저 현재 검색 동작을 확인해야 합니다.
/dev/root “100% Full” 스크린샷은 다른 문제였습니다.
다른 참여자가 알아차렸습니다. /dev/root 100% 사용 중으로 표시되어 파티션을 확장하려고 했습니다. IceWhale은 이 읽기 전용 SquashFS 루트 표현이 시스템 무결성을 위해 의도된 것이며, 여유 공간이 필요한 일반적인 쓰기 가능한 루트 파티션처럼 취급해서는 안 된다고 설명했습니다.
SquashFS 이미지가 가득 찬 것으로 표시된다는 이유로 ZimaOS 시스템 파티션의 크기를 조정하거나 삭제하지 마세요.
현재 ZimaOS에서 Search가 높은 CPU를 사용할 때
- 시스템이 최신 안정 버전의 ZimaOS를 사용 중인지 확인합니다.
- 대용량 파일 가져오기가 방금 수행되었는지 확인합니다.
- 문서에 명시된 인덱싱 시간이 끝날 때까지 기다립니다.
- 서비스의 유휴 시간이 지나 CPU 사용률이 떨어지는지 모니터링합니다.
- 현재 상태 수집
zimaos-searchCPU가 예상 시간보다 훨씬 오래 높게 유지되면 로그를
searchd 고CPU FAQ
CPU 사용률이 며칠 동안 100%인 것이 정상으로 간주되었나요?
아니요. IceWhale은 이후 페이지 매김 로직의 특수한 경우를 확인하고 1.3.2-beta2에서 수정했습니다.
현재 ZimaOS는 언제 콘텐츠 인덱싱을 수행하나요?
현재 문서에 따르면 콘텐츠 인덱싱은 자정의 비혼잡 시간대에 처리되며, 파일 이름 변경은 실시간으로 인덱싱됩니다.
/dev/root가 100%라는 것은 시스템 디스크에 여유 공간이 없다는 뜻인가요?
소스 사례에는 해당하지 않습니다. IceWhale은 SquashFS 시스템 루트 표현이 의도적으로 읽기 전용이며 가득 찬 상태로 표시되는 것이 정상이라고 설명했습니다.
