Ubah "abaikan kepemilikan pada volume ini" dari baris perintah untuk volume Mac OS X

17

(Pertanyaan ini adalah hasil dari pertanyaan lain yang saya ajukan di situs ini.)

Gambar baru selalu mengabaikan pemilik / grup

Saat membuat image disk baru dari Disk Utility itu secara otomatis dipasang. Jika Anda kemudian memilih volume di Finder dan tekan Cmd-I (untuk jendela info) Anda akan melihat ini di bagian bawah jendela:

masukkan deskripsi gambar di sini

Ini berarti bahwa pemilik dan grup file akan diabaikan pada volume ini. Ini sangat nyaman untuk drive eksternal yang dibagi antara mesin dengan akun pengguna yang berbeda. Untuk volume cadangan, itu bukan ide yang baik karena Anda ingin menyimpan informasi pemilik / grup untuk file yang dicadangkan.

Ubah ini dari Finder

Untuk mengubah ini, cukup hapus centang pada kotak centang dan akan diingat setelah Anda mengeluarkan dan mengirim ulang gambar.

Ubah dari baris perintah (Terminal)

Alih-alih memasang gambar dari Finder, Anda juga dapat memasangnya dari baris perintah menggunakan perintah ini (dengan asumsi gambar dipanggil testimage.sparsebundle):

$ hdiutil attach testimage.sparsebundle/

Namun, pemilik diabaikan pada volume. Menambahkan -owners onopsi sama dengan menghapus centang pada kotak centang pada gambar di atas:

$ hdiutil attach -owners on testimage.sparsebundle/

Namun, setelah melepas dan memasang kembali volume dari Finder (atau dari baris perintah tanpa -owners onopsi), kotak centang dicentang lagi.

Adakah yang tahu cara membuat perubahan ini tetap menggunakan panggilan baris perintah?

mgd
sumber

Jawaban:

17

Anda gunakan diskutiluntuk itu. Lihat di diskutil(1)bawah aktifkan Kepemilikan dan nonaktifkan Kepemilikan . Perhatikan bahwa pengaturan ini khusus untuk instalasi sistem operasi tertentu, karena disimpan di /var/db/volinfo.database. Yaitu, jika Anda menyalin gambar disk ke komputer baru, pengaturan tidak akan bertahan, tetapi itu tetap ada di seluruh reboot, mount, umounts, dll semua di komputer tunggal.

Gunakan diskutiluntuk menemukan pengidentifikasi, lalu ubah opsi:

$ 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
bahamat
sumber
2
Ini tidak sepenuhnya akurat - diskutil akan memberi tahu Anda bahwa Anda perlu menentukan disk dengan titik mount, artinya Anda harus mengarahkannya ke slice untuk volume yang ingin Anda ganti namanya. Sintaks yang benar (dengan asumsi irisan 2 disk 2) adalah: sudo diskutil enableOwnership / dev / disk2s2 Jika Anda menjalankan: sudo daftar diskutil Anda akan dapat melihat semua informasi disk, dan menemukan disk & slice yang benar untuk volume Anda .
Saya telah menemukan bahwa saya harus memanggil kembali di diskutil enableOwnershipantara mount, atau saya tidak dapat menjalankan binari dan skrip pada volume yang dipasang.
psoft
5

Saya menemukan bahwa kedua jawaban berfungsi untuk memungkinkan kepemilikan dengan cara yang diingat:

sudo diskutil enableOwnership <diskname>s<slicenum>

Dan:

vsdbutil -a /Volume/<volname>

Namun, kebalikannya tidak benar, setidaknya pada OS X 10.11.3:

sudo diskutil disableOwnership <diskname>s<slicenum>

Dan:

vsdbutil -d /Volume/<volname>

Keduanya untuk sementara mengubah status, tetapi kepemilikan diaktifkan kembali saat berikutnya saya memasang volume. Tampaknya ini adalah bug di sistem operasi. Untungnya saya menemukan solusi yang berfungsi. Keluarkan semua disk eksternal yang ingin Anda nonaktifkan kepemilikannya. Kemudian hapus basis data yang sesuai dengan menggunakan:

sudo rm /var/db/volinfo.database
Russell Owen
sumber
dapatkah Anda memberikan contoh, saya tidak mendapatkan apa yang harus saya tulis di tempat s <slicenum>
Sun
2

Gunakan vsdbutiluntuk mengaturnya sebagai jalur alih-alih drive fisik:

vsdbutil -a /Volume/Diskname

Meskipun manhalaman menyarankan itu sudah usang, manhalaman untuk diskutilmasih merujuk padanya dan mekanisme tampaknya didasarkan pada Volume UUIDsbukan pada disk fisik / id irisan.

Chris F Carroll
sumber