macOS 27에서 hdiutil 폐기 예고, diskutil image는 권한·scrub 옵션 차이 드러남
- macOS 27 Golden Gate 베타의 man 페이지가 hdiutil 폐기를 예고하고, 디스크 이미지 작업은 diskutil image로 옮기며 ASIF 이미지는 diskutil image만 지원한다고 명시함
- 암호화된 UDZO 홈 폴더 백업 시험에서 diskutil image는 40 to 45초, hdiutil은 110 to 115초가 걸렸고 생성 DMG 크기는 각각 2.8GB와 2.89GB였음
- root 소유 파일이 있으면 diskutil image는 인증 창 없이
Operation not permitted로 실패했지만, hdiutil은 관리자 인증을 요청한 뒤 이미지 생성을 계속함 - diskutil image에는 프로그램이 파싱할 진행 출력용 -puppetstrings와
hdiutil create -srcfolder의 -[no]scrub 등 여러 옵션이 없고, verbose 출력도 실패 원인을 설명하지 않음 - 두 DMG를 비교한 결과 diskutil image는
~/.Trash/를 넣지 않아 hdiutil의 -scrub가 켜진 것처럼 동작했으며, 이를 끄는 옵션은 제공되지 않음
Hacker News opinions
Console.app에서 실패 원인을 볼 수 있었나? 터미널 용도가 부차적인 Cocoa/AppKit 앱들이 오류를 제대로 안 보여주는 건 정말 짜증남.
xip도 오래전에 폐기됐지만 아직 Xcode 배포에 쓰임. 그래서 hdiutil도 macOS에서 실제로 사라지진 않고, 그냥 더 이상 업데이트를 안 할 가능성이 높아 보임.
seatbelt/sandbox-exec도 수년째 폐기 상태지만 시스템 샌드박싱의 바탕이고 Claude 같은 도구도 자체 샌드박스에 씀. 나도 seatbelt 규칙을 계속 씀.
launchctl도 폐기된 하위 명령이 있음. 새 명령을 써보다 문제가 나서, 결국 폐기된 명령이 앞으로도 더 믿을 만하겠다고 생각했음.
애플에서 하위 호환성은 우연히 남는 것 같음. 오래된 작업 흐름이나 스크립트가 깨져도 이상할 게 없음.
그래도 애플이 하위 호환성을 아주 못 지킨 건 아님. 12년 된 MacBook Air와 오래된 iPad도 최신 앱 전부는 아니어도 여전히 쓸 만하게 돌아감.
diskutil은 이미 10년 넘게 있었고 hdiutil에 없던 기능을 천천히 받아왔음. 갑자기 기능을 빼는 식의 일은 아니라고 봄.
최신 macOS 베타에서도 USB-SATA 브리지로 연결한 광학 드라이브에 Finder 우클릭으로 이미지를 DVD에 구울 수 있었음. 광학 드라이브 시대가 지난 뒤에도 이 기능을 유지하려면 손이 갔을 텐데, 전부 우연이라고 보긴 어려움.
예전에 애플이 Telnet 클라이언트와 ntpd 등을 경고 없이 OS에서 뺀 건 기억남.
diskutil이 hdiutil 기능을 전부 대체한다면 폐기는 자연스러운 일임. 하지만 글을 보면 diskutil에는 이전 도구에 있던 제약과 기능 누락이 남아 있음.
diskutil은 볼륨 같은 디스크용이고 hdiutil은 파일 형태의 디스크 이미지용임. 같은 도구의 새 버전처럼 보고 hdiutil 폐기를 진전이라고 부르긴 어려움.
애플 버그 보고는 재현 절차를 읽거나 조사하지 않고 목록을 줄이려는 것처럼 보일 때가 있음. 바로 답하지 않으면 Radar가 닫히는 식임.
개인이 세계에서 가장 가치 높은 회사 제품을 고치겠다고 시간을 무상으로 쓰는 건 결국 가치가 없다고 느꼈음.
RAM 디스크도 없어진다는 뜻인가 했는데, 새 diskutil image에는 diskutil image attach ram://${size}m 지원이 이미 들어가 있음.