GNU Coreutils 9.10, 안정성 수정과 함께 출시
GNU Coreutils 9.10은 중요 버그를 수정하고 성능을 향상시키며, 새로운 안정 버전에서 Linux 시스템 전반의 핵심 명령 동작을 개선합니다.
GNU 프로젝트는 거의 모든 리눅스 및 유닉스 계열 시스템의 핵심을 이루는 기본 파일, 셸 및 텍스트 조작 유틸리티 모음의 새로운 안정 버전인 coreutils 9.10의 출시를 발표했습니다.
이번 릴리스는 버전 9.9에서 도입된 여러 회귀 문제를 해결합니다. 이 문제들은 SEEK_HOLE을 사용하여 희소 파일을 복사할 때 cp, install, mv에 영향을 미쳤습니다. 이 문제는 희소 파일이 적극적으로 업데이트되고 복사 오프로딩이 사용 불가능한 경우 ext4와 같은 파일 시스템에서 나타날 수 있습니다.
신호 처리도 개선되었습니다. timeout 명령은 이제 모니터링 중인 프로세스에 모든 종료 신호를 안정적으로 전달하여, 부모 프로세스가 종료되면서 자식 프로세스가 계속 실행되는 경우를 방지합니다.
동시에, 무시된 신호가 이제 올바르게 처리되어 백그라운드 셸 작업에서 동작이 개선되었습니다. 관련 수정 사항으로 tail -f --pid가 종료되지 않는 신호에서도 더 이상 예상치 못하게 종료되지 않습니다.
여러 다른 유틸리티에서도 정확성 문제가 수정되었습니다. date 명령어는 형식 지시자가 빈 출력을 생성할 때 더 이상 실패하지 않으며, dd는 잘림(truncation) 실패 시 기존 파일을 덮어쓰지 않습니다. 오랫동안 존재했던 이식성 문제는 du와 ls에서 수정되었으며, 더 이상 getenv가 반환한 문자열을 변경하지 않습니다.
게다가 fmt, numfmt, md5sum, 그리고 sha*sum 계열과 같은 도구들도 오류 처리, 접미사 파싱, 줄 끝 변환과 관련된 수정 사항을 받았습니다.
앞서 언급한 수정 사항들 외에도, Coreutils 9.10은 몇 가지 기능 향상을 도입했습니다. paste 명령어는 이제 다중 바이트 문자를 완전히 인식하며, 다중 바이트 구분자도 지원합니다. -A라는 새로운 단축 옵션이 du에 --apparent-size를 위해 추가되어 FreeBSD와의 호환성이 향상되었습니다.
stat와 tail 유틸리티가 guest-memfd 파일 시스템 유형을 인식하게 되었으며, tail은 이제 추적 모드(follow mode)가 어떻게 구현되는지 보고할 수 있는 --debug 옵션을 제공합니다.
마침내 문서화와 사용 편의성이 개선되었으며, 이제 모든 명령어는 --help 출력과 매뉴얼 페이지에서 옵션 이름을 굵게 표시하고, 하이퍼링크가 해당 온라인 문서로 직접 연결되도록 했습니다.
Coreutils 9.10의 모든 변경 사항에 대한 더 깊은 기술적 분석은 발표를 참조하세요.
