Zsh가 종료 중 히스토리를 다시 쓰는 순간 SIGINT를 받으면 파일 읽기가 중단되지만, 불완전한 데이터를 정상 결과로 취급해 새 파일로 교체하면서 수년치 명령 기록이 사라질 수 있었음 inotify, fatrace, bpftrace로 추적한 결과, Zsh가 .zsh_history를 끝까지 읽지 않고 축소된 .zsh_history.new를 만든 뒤 원본 위로 rename하는 과정이 확인됨 5만 줄 미만을 쓸 때 강제로 충돌하도록 Zsh 5.9.1을 패치하고 코어 덤프를 분석해, errflag & ERRFLAG_INT가 readhistfile을 조기 종료하고 savehistfile이 이를 확인하지 않는 근본 원인을 찾음 수정안은 2025년 4월 마련됐지만 5.9.1 릴리스에서 누락됐으며, 2026년 7월 12일 출시된 Zsh 5.9.2에 최종 반영됨 별도 평가에서는 GPT-5.6 Sol과 Claude Opus 5가 증상과 bpftrace 기록만으로 버그를 안정적으로 찾았지만, 많은 모델은 올바른 가설을 떠올리고도 잘못된 이론의 검증에 매달려 진단에 실패함 수년간 반복된 히스토리 손실 전날 실행한 명령이 Ctrl+R 검색에서 사라지고, ~/.zsh_history에는 아주 오래된 항목만 남는 현상이 간헐적으로 발생함 최근 수년치 항목이 한꺼번에 사라졌지만 출력 불가능 문자나 불완전한 줄처럼 눈에 보이는 파일 손상은 없었음 손실 후 남은 줄 수도 매번 달랐음 초기에는 일일 백업으로 복원했지만 문제가 반복돼 원인 추적을 시작함 Zsh 자체, 다른 프로그램, 여러 zsh 프로세스의 상호작용 중 무엇이 원인인지는 처음에 알 수 없었음 Zsh 수정 커밋 53454는 2026년 7월 12일 출시된 Zsh 5.9.2에 포함됨 문제가 발생한 히스토리 설정 검색용 메모리에는 4,000줄을 불러오고, 파일에는 사실상 무제한으로 저장하도록 구성함 HISTSIZE=4000 HISTFILE=~/.zsh_history SAVEHIST=10000000 HIST_IGNORE_DUPS로 인접한 중복 항목을 저장하지 않고, INC_APPEND_HISTORY로 명령 실행 시 공유 파일에 즉시 추가함 NixOS의 /etc/zshrc가 기본 활성화하는 SHARE_HISTORY는 명시적으로 해제함 각 셸은 서로 분리된 세션이지만 같은 파일에 명령을 스트리밍함 다른 셸이 기록한 항목을 현재 세션에서 읽으려면 exec zsh를 실행함 파일 변경 추적...
Zsh 히스토리 데이터 손실 버그를 추적한 과정
2 days ago
3
Related
OpenAI 윤리 책임자, 합류 1년도 안 돼 퇴사
1 hour ago
0
Mojo 1.0 정식 출시
1 hour ago
0
코드가 아니라 아이디어를 통제하라
2 hours ago
0
LLM Evals에 대해 알아야 할 모든 것
3 hours ago
2
Xirp - Spotify가 만든 조직 컨텍스트 기반 AI 코딩 환경
3 hours ago
2
코드 리뷰도 배워야 하는 기술이다
3 hours ago
2
GNOME Shell이 꿈꾸는 차세대 디자인
3 hours ago
2
Tips
click
Trending
Popular
필리핀 “中 관영매체, 필리핀인을 원숭이로 묘사…인종차별”
3 weeks ago
151
北핵실험 연구한 美학자, 中에 20개월째 구금…외교문제 비화
4 weeks ago
123
© Clint's Theme Park 2026. All rights are reserved










English (US) ·