Vai al contenuto
Offerte

macOS 27, Apple dice addio a hdiutil: arriva diskutil image

In questo articolo Indice dei contenuti 3 sezioni

Con macOS 27 Golden Gate Apple mette la parola fine a una delle utilità più longeve del Terminale: hdiutil entra ufficialmente nello stato di dismissione definitiva e lascia il posto a diskutil image, indicato come nuova interfaccia per creare, collegare, ridimensionare e interrogare le immagini disco. Un cambiamento che la maggior parte degli utenti non noterà nemmeno, ma che riguarda da vicino sviluppatori, amministratori di sistema e chiunque abbia costruito automazioni intorno ai file DMG.

hdiutil accompagna il sistema operativo Apple sin dalle prime generazioni di Mac OS X e nel tempo è diventato un ingranaggio quasi invisibile. Dietro la creazione di un DMG, il montaggio automatico di un’immagine durante l’installazione di un’applicazione oppure certe procedure di backup ci sono molto spesso script che richiamano proprio quel comando. La stessa documentazione Apple dedicata alla distribuzione del software per Mac continua a mostrare hdiutil create come strada per generare un’immagine pronta da distribuire. Il manuale incluso nelle versioni beta di macOS 27, però, non lascia margini di interpretazione: l’utilità va considerata accantonata, continuerà a funzionare ma non è più la base su cui costruire nuovi strumenti e in una futura versione del sistema potrebbe sparire del tutto.

Perché hdiutil pesa più di quanto sembri

Un file DMG non è un semplice archivio compresso. macOS lo tratta come un contenitore capace di rappresentare un dispositivo a blocchi, eventualmente partizionato e con uno o più file system al suo interno. Quando si apre un DMG dal Finder avvengono due passaggi distinti: prima il sistema collega l’immagine come dispositivo, poi Disk Arbitration individua i file system presenti e monta i volumi corrispondenti.

hdiutil ha storicamente riunito tutte queste operazioni in un unico posto. Genera immagini partendo da una directory, le protegge con la cifratura, le converte tra formati diversi e restituisce informazioni strutturate che gli script possono leggere. Il punto è che non lo usa solo chi digita comandi a mano: un’applicazione può richiamarlo in modo trasparente, così come uno script di build, un sistema di distribuzione software o un tool che monta automaticamente i DMG appena scaricati. Un caso concreto arriva da Homebrew, dove nella gestione dei cask le immagini DMG rappresentano uno dei formati più comuni e il passaggio a diskutil image ha già richiesto interventi sul codice.

diskutil image e le differenze che possono fare male

La nuova organizzazione porta tutte le operazioni sulle immagini disco sotto diskutil, comando che da anni gestisce dischi, volumi e file system su Mac. Apple ha pubblicato anche una tabella di corrispondenza. hdiutil attach diventa diskutil image attach, la creazione di un’immagine vuota passa a diskutil image create blank, mentre create con srcfolder, create con srcdevice e convert confluiscono nelle varianti di diskutil image create from. Per il ridimensionamento c’è diskutil image resize, per le informazioni diskutil image info, per cambiare la password di un’immagine cifrata diskutil image chpass.

La sovrapposizione, però, non è perfetta. Le opzioni principali hanno quasi sempre un corrispettivo, ma le differenze emergono proprio quando il comando non viene usato in modo interattivo bensì richiamato da un programma. L’assenza più fastidiosa riguarda puppetstrings, l’opzione con cui hdiutil produceva un indicatore di avanzamento pensato per essere letto ed elaborato da un altro software. diskutil image mostra la percentuale durante alcune operazioni, ma un equivalente esatto oggi non esiste. Restano fuori anche alcuni parametri legati a hdiutil create con srcfolder, piuttosto specialistici e per questo tipici dei processi automatizzati più delicati. Al netto di queste ruvidezze e di qualche anomalia nella gestione di cartelle che hdiutil digeriva senza problemi, il nuovo strumento si è mostrato nettamente più veloce.

ASIF, il motivo tecnico dietro la scelta

Una spiegazione arriva da ASIF, Apple Sparse Image Format. Il manuale di macOS 27 chiarisce che hdiutil non supporta queste immagini e che formati e funzionalità nuove passeranno solo da diskutil image. Apple usa ASIF anche con le proprie tecnologie di virtualizzazione: la documentazione del framework Virtualization mostra la creazione di un’immagine ASIF tramite diskutil image create blank, mentre DiskImageKit, introdotto con macOS 27, offre API Swift per creare e gestire immagini ASIF e RAW, comprese configurazioni destinate alle macchine virtuali.

Nessuna fretta di buttare via tutto, perché macOS 27 include ancora hdiutil e Apple non ha indicato in quale versione lo rimuoverà. Ignorare l’avviso resta però una scommessa poco sensata per software pensato per durare anni. Il consiglio pratico è cercare i riferimenti a hdiutil negli script di build, installazione e backup, capire quali opzioni vengono davvero usate, provare la migrazione e controllare come si comportano gli errori. Per i programmi distribuiti a molti utenti conviene tenere per un po’ un doppio percorso, scegliendo l’una o l’altra utilità in base alla versione di macOS installata.

Condividi:
36 Condivisioni