Bagaimana Saya Harus Mengoreksi Pemilik dan Izin dalam Folder Pengguna OS X?

9

Masalah saya adalah bahwa saya telah benar-benar merusak semua pemilik dan izin pada folder dan subfolder pengguna saya dan itu menyebabkan banyak masalah menggunakan banyak aplikasi.

Penyebab awalnya adalah bahwa saya telah mengganti nama pengguna dengan mengikuti instruksi dukungan Apple di http://support.apple.com/kb/HT1428

Setelah pengguna baru diatur, cadangan Mozy tidak akan mencadangkan lagi dan banyak aplikasi saya tidak dapat memperbarui diri secara otomatis. Aplikasi biasanya mulai berfungsi kembali jika saya menghapus program yang menyinggung dan menginstalnya kembali. Saya pikir itu karena izin salah dan saya menemukan beberapa tempat di mana GetInfo menunjukkan bahwa izin merujuk pengguna lama. Terkadang dialog hanya mengatakan "Mengambil" untuk nama pengguna dan tidak pernah diperbarui ke hal lain.

Saya menjalankan Onyx "memperbaiki izin" dan Disk Utility "Memperbaiki Izin" tanpa hasil. Dengan "Izin Perbaikan", ia terus memberikan beberapa peringatan info tentang ACL yang tidak terduga, tetapi info yang saya dapat temukan secara online tidak berpikir itu akan menyebabkan masalah seperti ini.

Saya mencoba menjalankan beberapa skrip baris perintah secara rekursif pada folder pengguna (keduanya masuk sebagai root dan menggunakan sudo). chmod mendapat banyak kesalahan tentang pemilik file yang salah. chown setelah itu memberi saya kesalahan lain (saya tidak ingat persis apa yang mereka). Karena panik, saya mengklik kanan seluruh folder pengguna dan memilih untuk menerapkan izin itu untuk semua anak.

Dari apa yang dapat saya katakan, ketika saya melakukan itu, saya mengatur semuanya menjadi Baca & Tulis untuk pengguna itu dan Hanya-Baca untuk " semua orang " dan " staf ". Sekarang, saya lebih buruk daripada sebelumnya. Firefox macet dan bahkan tidak dapat memperbarui pengaturannya sendiri sehingga menampilkan "Apakah Anda ingin mengembalikan tab ini" setiap kali diluncurkan, bahkan setelah berulang kali mengatakan "Mulai Sesi Baru".

Pada dasarnya, semua yang ada di folder pengguna saya rusak sehubungan dengan pemilik dan izin dan saya perlu tahu apa yang seharusnya. Siapa pemilik file di setiap direktori yang seharusnya (Unduhan, Aplikasi, dll.) Dan seperti apa seharusnya izinnya? Dengan izin dan pemilik itu, apa cara terbaik untuk mengatur semua itu dengan benar?

Saya melihat pertanyaan yang mirip dengan ini di Mengatur ulang izin pengguna ke mode default mereka tetapi hanya membahas izin, bukan pemilik, yang telah menjadi masalah.

Saya tidak yakin apakah menginstal ulang OS melalui salinan yang saya miliki sekarang akan memperbaiki apa pun dan saya hampir memanggil Dukungan Apple jika saya tidak dapat menemukan sesuatu dalam beberapa hari ke depan. Terima kasih atas bantuannya.

cisellis
sumber
Apakah Anda setidaknya tahu bagaimana ini terjadi? Apa yang salah? ACL, metadata, atau izin UNIX tradisional. Sulit untuk mencakup semuanya dalam satu jawaban - terutama mengatur ulang bit yang tidak dapat diubah jika diperlukan.
bmike
Dan untuk mempermudah pemecahan masalah, saya akan menginstal OS ke drive eksternal, boot dari itu dan pasang drive "masalah" Anda untuk mengabaikan izin dan melihat apakah rsync atau sesuatu akan membuat Anda memasukkan file ke dalam kondisi yang lebih bersih. Kemudian Anda dapat menghapus pengguna dan menyalin hal-hal kembali - menghormati ACL pengguna baru dan izin pada folder di ~ - hati-hati untuk memindahkan konten ~/Library/dan bukan ~/Librarydirinya sendiri.
bmike
Saya tidak yakin selain apa yang saya ketikkan di atas. Saya menghargai saran tapi saya bukan pengguna yang kuat. Jika lebih rumit daripada beberapa baris perintah atau utilitas, saya hanya akan menyerah dan memulihkan dari cadangan Time Machine.
cisellis
Rencana yang bagus. Anda bisa mendapatkan bantuan dari teknisi jika diperlukan begitu cadangan Anda dipulihkan - biasanya Anda kemudian dapat memiliki daftar pendek hal-hal yang ketinggalan zaman atau hilang. Saya senang Anda memiliki cadangan :-)
bmike

Jawaban:

10

Langkah pertama yang saya sarankan adalah mencoba mengatur ulang izin folder rumah Anda dengan utilitas Reset Password di Lion Recovery. (Terlepas dari nama utilitasnya, Anda sebenarnya tidak akan mengatur ulang kata sandi apa pun.)

Menyetel ulang izin folder rumah dengan utilitas Reset Kata Sandi akan mengatur ulang pemilik dan izin.

  1. Mulai ulang Mac Anda yang memegang + Runtuk boot ke Lion Recovery, yang akan membawa Anda ke layar Repair Utilities.

  2. Buka Terminal dari menu Utilities.

  3. Di Terminal, masukkan resetpassworduntuk membuka utilitas Reset Kata Sandi.

  4. Pilih ikon hard drive Anda di bagian atas, lalu pilih pengguna Anda dari menu drop-down di bawah ini. Jangan mengatur ulang kata sandi di sini.

  5. Di bagian bawah jendela, di bawah "Reset Izin Direktori Rumah dan ACL", klik tombol "Reset". Ini mungkin perlu beberapa saat jika Anda memiliki banyak file di folder rumah Anda.

Ini akan menyelesaikan masalah izin Anda untuk sebagian besar aplikasi. Namun, mungkin Anda memiliki beberapa aplikasi yang menyimpan file dengan izin khusus yang berbeda dari izin default pengguna (seperti preferensi atau file dukungan aplikasi). Untuk aplikasi itu, Anda mungkin perlu menghapus preferensi mereka atau menginstal ulang aplikasi.

Jika mengatur ulang izin folder rumah Anda tidak berhasil, maka Anda mungkin perlu mencoba memulihkan dari cadangan atau mentransfer data Anda ke drive eksternal.

joelseph
sumber
Saya sedang mencoba ini sekarang. Sejauh ini sudah berjalan sekitar 12 jam. Saya punya banyak file: P
cisellis
Ini tidak berhasil. Operasi berjalan selama lebih dari 48 jam sebelum saya menyerah dan mematikannya. Mungkin sudah selesai di beberapa titik tetapi tidak ada cara untuk mengatakannya.
cisellis
3

Jalankan ini

cd $HOME
{ sudo chflags -R nouchg,nouappnd ~ $TMPDIR.. ; \
sudo chown -R $UID:staff ~ $_ ; \
sudo chmod -R -N ~ $_ ; \
sudo chmod -R 755 ~ $_ ; \
sudo chmod 700 Desktop Documents Downloads Dropbox Library Movies Music Pictures Sites $_ ; \
sudo chmod 777 Public ; \
sudo chmod 733 Public/Drop\ Box ; \
} 2> /dev/null
davidcondrey
sumber
Persis apa yang saya cari! Bekerja jika Anda dapat masuk ke pengguna yang dimaksud dan pengguna itu juga seorang admin. Bagaimana dengan memperbaiki direktori home pengguna lain dari akun lain? (pengguna dengan masalah izin mungkin atau mungkin bukan admin)
unom
Nyalakan kembali komputer menggunakan kombinasi kunci startup Cmd + R untuk membuka Repair Utility, buka Terminal di bawah menu Utilities, gunakan perintah resetpassword, pilih hard disk dan akun pengguna yang relevan dari menu drop-down yang akan terbuka, pilih reset ke atur ulang izin direktori rumah dan ACL dari akun pengguna yang dipilih.
davidcondrey
2

Masalah Anda pada dasarnya sama. Tidak ada standar untuk izin untuk file di direktori home Anda semua tergantung pada penggunaannya.

Memperbaiki izin aplikasi dan skrip serta pemasangan OS tidak boleh memengaruhi area pengguna sama sekali kecuali mungkin mengubah izin pada direktori home. Instalasi OS dan sebagian besar skrip izin perbaikan membandingkan izin dan pemilik dengan apa yang diperlukan untuk pemasangan yang bersih dan ini tidak memiliki pengguna normal. Jika mereka melakukannya saya akan menganggap ini sebagai bug utama.

Cara mengatasinya adalah mengubah pemilik file yaitu penggunaan chown pada direktori home Anda. Pemilik harus nama pemilik baru.

Tidak ada cara umum untuk mendapatkan izin kembali karena file individual bergantung pada aplikasi yang ada dan semua aplikasi dapat berbeda.

Dengan demikian satu-satunya cara adalah mengembalikan dari cadangan sebelum perubahan - lakukan perubahan sesuai catatan Apel dan kemudian kirim semua file. Atau lihat setiap file individu dan cari izin apa yang seharusnya - untuk sebagian besar file direktori home Anda ini harus dibaca / ditulis untuk pemilik dan tidak ada (atau hanya baca) untuk yang lain. Direktori juga akan memerlukan izin eksekusi agar dapat didaftar. Aplikasi akan memerlukan izin lain.

pengguna151019
sumber
Baik. Saya baru saja memeriksa direktori home saya dan begitu banyak 777direktori dan merasa khawatir.
nyxee
@ nyxee itu aneh saya harapkan 755 atau 700
user151019
sangat .... Saya akan mulai mengedit izin satu per satu dengan sangat lambat ..
nyxee
1

Kami telah mengalami masalah yang sama dengan beberapa pengguna. Setelah gagal mencoba segala sesuatu tentang memperbaiki izin, kami menemukan solusinya. Demi kejelasan, pengguna yang bermasalah adalah John Doe dan akun pengguna (dan direktori home) disebut "johndoe".

  1. Pastikan pengguna root Anda diaktifkan. Keluar
  2. Masuk sebagai root dan buat cadangan folder rumah johndoe (membuat cadangan folder rumah adalah opsional, tetapi sangat disarankan jika terjadi kesalahan)
  3. Buka Preferensi Sistem / Pengguna & Grup
  4. Hapus pengguna johndoe — Anda akan diminta apa yang harus dilakukan dengan direktori Home johndoe
  5. PENTING: Pilih TIDAK untuk menghapus direktori
  6. Pergi ke / Pengguna dan perhatikan bahwa folder johndoe telah diubah namanya menjadi "john doe (dihapus)"; ganti nama direktori rumah kembali ke "johndoe"
  7. Kembali ke System Preferences / Users & Groups dan buat ulang akun John Doe
  8. PENTING: Pastikan Nama Akun pengguna adalah "john doe", atau apa yang Anda beri nama direktori home pada langkah 6
  9. Anda akan diminta bahwa direktori home dengan nama itu sudah ada dan jika Anda ingin menggunakan direktori home yang ada
  10. Pilih ya
  11. Mulai ulang dan masuk sebagai John Doe
pocho
sumber
Saya hanya ingin mengucapkan terima kasih. Ini bekerja di Snow Lion (komputer istri saya) setelah banyak upaya rumit gagal, misalnya macissues.com/2014/04/11/...
Steve Samuels
0

Saya menambahkan satu jawaban untuk mengatasi semuanya. Apa pun yang saya lakukan dengan izin, itu benar-benar borked. Saya mencoba jawaban pertama, boot ke Mode Pemulihan dan mengatur ulang izin melalui metode reset password, tapi itu berjalan selama 48 jam sebelum saya membunuhnya dan tidak memiliki efek yang dapat dilihat. Saya mencoba memulihkan dari Time Machine dan itu benar-benar meledak juga dan tidak dapat mengembalikan cadangan.

Saya akhirnya mencadangkan semuanya secara manual ke disk eksternal, memformat seluruh disk dan menginstal ulang Lion, menginstal ulang semuanya secara manual, dan menyalin data pribadi saya, seperti perpustakaan iPhoto dan perpustakaan iTunes, kembali secara manual. iPhoto harus memperbaiki perpustakaan tetapi berfungsi dengan baik dan saya tidak punya masalah. iTunes tidak dapat menambahkan musik apa pun ke perpustakaan sampai saya menggunakan Disk Utility untuk memperbaiki izin lagi. Karena saya hanya menyalin direktori iTunes Media dan bukan direktori induk, sepertinya memperbaiki semuanya.

Moral dari kisah ini: Lupakan Apple, jangan ganti nama pengguna.

cisellis
sumber
0

Ini sama sekali bukan masalah izin! Tidak ada yang Anda lakukan dengan izin akan memperbaikinya karena izin sudah diatur untuk membaca / menulis, yang sama permisifnya.

Ini masalah pemilik; sistem bingung tentang siapa yang memiliki file tersebut, dan tidak dapat menyelesaikan masalah tersebut. Tambahkan diri Anda sebagai pemilik baru, beri diri Anda izin baca / tulis, dan kemudian hapus pengguna "mengambil" yang menyinggung itu.

Gib Henry
sumber
0

Fitur Reset Utility Disk Utility tidak memengaruhi direktori home Anda, jadi tidak akan berfungsi di sini. Tetapi juga memiliki alat reset izin tersembunyi kedua untuk direktori home Anda. Anda menggunakannya dari Terminal, seperti ini:

diskutil resetUserPermissions / $(id -u)

(Sumber: https://support.apple.com/en-us/HT203538 )

SilverWolf - Pasang kembali Monica
sumber