Modifica "ignora la proprietà su questo volume" dalla riga di comando per il volume di Mac OS X.


17

(Questa domanda è uno spin-off di un'altra domanda che ho posto su questo sito.)

Le nuove immagini ignorano sempre il proprietario / gruppo

Quando si crea una nuova immagine disco da Utility Disco, questa viene montata automaticamente. Se poi selezioni il volume nel Finder e premi Cmd-I (per la finestra informativa) lo vedrai nella parte inferiore della finestra:

inserisci qui la descrizione dell'immagine

Ciò significa che i proprietari e i gruppi di file verranno ignorati su questo volume. Questo è molto comodo per le unità esterne condivise tra macchine con account utente diversi su di esse. Per un volume di backup non è una buona idea in quanto si desidera conservare le informazioni sul proprietario / gruppo per i file sottoposti a backup.

Cambia questo dal Finder

Per cambiarlo, deseleziona semplicemente la casella di controllo e verrà ricordato dopo aver espulso e rimontato l'immagine.

Cambia dalla riga di comando (Terminale)

Invece di montare l'immagine dal Finder, puoi anche montarla dalla riga di comando usando questo comando (supponendo che l'immagine sia chiamata testimage.sparsebundle):

$ hdiutil attach testimage.sparsebundle/

Tuttavia, i proprietari vengono ignorati nel volume. Aggiungere l' -owners onopzione equivale (quasi) a deselezionare la casella di controllo nell'immagine sopra:

$ hdiutil attach -owners on testimage.sparsebundle/

Tuttavia, dopo aver smontato e rimontato il volume dal Finder (o dalla riga di comando senza l' -owners onopzione), la casella di controllo viene nuovamente selezionata.

Qualcuno sa come rendere persistente questa modifica usando una chiamata da riga di comando?

Risposte:


17

Lo usi diskutilper quello. Vedi diskutil(1)in enableOwnership e disableOwnership . Si noti che questa impostazione è specifica per una particolare installazione del sistema operativo, poiché è memorizzata in /var/db/volinfo.database. Vale a dire, se si copia l'immagine del disco su un nuovo computer, l'impostazione non persiste, ma persiste su riavvii, montaggi, smontaggi, ecc. Tutti su un singolo computer.

Utilizzare diskutilper trovare l'identificatore, quindi modificare l'opzione:

$ diskutil list
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            Disk Image             *41.0 MB    disk2
$ sudo diskutil enableOwnership disk2
File system user/group ownership enabled

2
Questo non è del tutto accurato: diskutil ti dirà che devi specificare un disco con un punto di montaggio, il che significa che devi puntarlo alla porzione per il volume che vuoi rinominare. La sintassi corretta (presupponendo la porzione 2 del disco 2) sarebbe: sudo diskutil enableOwnership / dev / disk2s2 Se esegui: sudo diskutil list sarai in grado di vedere tutte le informazioni sul disco e trovare il disco e la slice corretti per il tuo volume .

Ho scoperto che devo ri-invocare diskutil enableOwnershiptra montaggi, altrimenti non posso eseguire binari e script sul volume montato.
psoft,

5

Ho scoperto che entrambe le risposte hanno funzionato per consentire la proprietà nel modo che viene ricordato:

sudo diskutil enableOwnership <diskname>s<slicenum>

E:

vsdbutil -a /Volume/<volname>

Tuttavia, non è vero il contrario, almeno su OS X 10.11.3:

sudo diskutil disableOwnership <diskname>s<slicenum>

E:

vsdbutil -d /Volume/<volname>

Entrambi cambiano temporaneamente lo stato, ma la proprietà viene riattivata la prossima volta che monterò il volume. Questo sembra essere un bug nel sistema operativo. Fortunatamente ho trovato una soluzione che funziona. Espellere tutti i dischi esterni per i quali si desidera disabilitare la proprietà. Quindi eliminare il database appropriato utilizzando:

sudo rm /var/db/volinfo.database

puoi fare un esempio, non ho capito cosa dovrei scrivere al posto di s <slicenum>
dom

2

Utilizzare vsdbutilper impostarlo per un percorso anziché un'unità fisica:

vsdbutil -a /Volume/Diskname

Sebbene la manpagina suggerisca che è obsoleta, la manpagina per diskutilfa ancora riferimento ad essa e il meccanismo sembra essere basato su Volume UUIDsnon su ID disco / ID fisici.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.