Pertanyaan Memperbaiki / mengoreksi izin file folder rumah OS X.


Singkat cerita, saya berhasil menghancurkan izin file dalam direktori home saya di OS X (Lion). Meskipun saya cukup akrab dengan izin file linux dan lebih dari nyaman mengubahnya, saya tidak bisa mendapatkan kombinasi hak akses dan / atau perintah yang tepat untuk mengubahnya.

Namun, sebelum saya melanjutkan, saya harus menyebutkan bahwa saya memiliki pengaturan yang sedikit berbeda dengan pemasangan standar. Hard drive saya dipartisi menjadi dua drive, Sistem dan Pengguna.

Folder rumah saya terletak di dalam Pengguna / [nama pengguna] pada drive Pengguna, yaitu. ketika kedua drive dipasang dengan benar, ia dapat diakses di / Volumes / User / Users / [username]. Di / User /, saya memiliki symlink [nama pengguna] yang menunjuk ke // Volumes / User / Users / [username] dan ini telah bekerja seperti yang saya inginkan.

Saya mencoba dua artikel berikut yang ditemukan sini dan sini hanya t saya terkunci keluar dari direktori home saya sendiri. Sementara itu saya mengubahnya menjadi akses global penuh sehingga saya bisa menggunakannya tetapi saya ingin berkeliling untuk memperbaikinya.


4
2017-10-31 00:47


asal


Pos CNET itu mungkin sangat merusak. Anda kehilangan akses (bendera yang dapat dieksekusi) ke semua direktori di dalam rumah Anda. Saya yakin pria itu tidak pernah mencoba untuk benar-benar melakukan apa yang dia tulis. - Daniel Beck♦


Jawaban:


Pertama, pastikan Anda memiliki folder rumah Anda (catatan: Saya berasumsi Anda menjalankan ini dari akun pengguna Anda sendiri, dan bahwa Anda seorang admin):

sudo chown -R $USER:staff ~

Kemudian, beri diri Anda akses yang tepat dan tidak ada orang lain yang dapat mengaksesnya (kami akan membuat beberapa pengecualian nanti). Perhatikan bahwa ini adalah 2 perintah untuk memastikan bahwa akses eksekusi ditambahkan ke direktori, tetapi bukan file biasa:

chmod -R 600 ~
chmod -R u+rwX ~

Sekarang, berikan akses baca kepada orang lain untuk direktori yang seharusnya mereka akses. Jika Anda tidak memiliki folder situs, Anda dapat membiarkannya dari perintah kedua:

chmod og+rX ~
chmod -R og+rX ~/Public ~/Sites

Apple suka memiliki entri kontrol akses agar Anda tidak mengotak-atik bagian "penting" dari folder rumah Anda. Sekali lagi, jika Anda tidak memiliki Situs, Anda dapat meninggalkannya (jangan tinggalkan Perpustakaan; tidak terlihat, tetapi ada di sana):

chmod +a "group:everyone deny delete" ~ ~/Desktop ~/Documents ~/Downloads ~/Library ~/Movies ~/Music ~/Pictures ~/Public ~/Sites

Akhirnya, perbaiki Drop Box Anda:

chmod og=wX ~/Public/Drop\ Box
chmod +a "user:$USER allow list,add_file,search,delete,add_subdirectory,delete_child,readattr,writeattr,readextattr,writeextattr,readsecurity,writesecurity,chown,file_inherit,directory_inherit" ~/Public/Drop\ Box

Perhatikan bahwa prosedur ini tidak akan benar "memperbaiki" izin pada file di dalam berbagai folder Anda, tetapi itu tidak terlalu penting karena memberi Anda akses penuh ke mereka dan tidak ada orang lain yang bisa masuk ke folder itu ...


3
2017-10-31 04:57



Melakukan apa yang Anda sarankan akan menghancurkan banyak hal. Anda akan mengambil mengeksekusi izin dari binari. Widget dasbor, program dalam ~/Applications, layanan semua akan rusak. Mungkin sedikit lebih banyak. - Daniel Beck♦
Saya sarankan Anda melewati cuplikan kode kedua dan membalikkan yang ketiga, yaitu mengambil (tidak secara rekursif) go-rwx untuk Dokumen, Musik, dll. (yang dibuat secara default). - Daniel Beck♦
@Daniel Beck: Sebagian besar pengguna OS X tidak memiliki folder Aplikasi pengguna (atau folder binari pribadi, atau ...). Saya belum memikirkan Layanan. Sebut saja ciri khas kepribadian, tapi saya tidak suka menjalankan izin diaktifkan pada non-executable, dan saya lebih suka harus memperbaiki file sesekali yang membutuhkannya daripada mengaturnya pada semuanya. Anda dapat menemukan executable yang sebenarnya dengan find ~ -type f -print0 | xargs -0 file | grep executable lalu tambahkan eksekusi untuk mereka (chmod u+x /path/to/file) secara individual. - Gordon Davisson
@Daniel Beck: Seperti apakah akan menghapus grup + akses lain ke segala sesuatu dan menambahkannya secara selektif, atau menghapusnya secara selektif, saya tidak berpikir ada jawaban yang benar: menghapus izin asli menghancurkan informasi, dan tidak ada cara untuk mendapatkannya kembali. Pendekatan Anda mungkin meninggalkan sebagian besar file lebih dekat ke izin asli mereka, tetapi pada risiko memberikan akses ke hal-hal yang seharusnya tidak dapat dibaca, seperti ~ / .ssh - Gordon Davisson
Program Drag & Drop dan default keduanya terkait dengan layanan peluncuran; periksa preferensinya (ls -le ~/Library/Preferences/com.apple.LaunchServices*) dan untuk layanan yang perlu dieksekusi (lihat find perintah yang saya berikan di atas). BTW, untuk beberapa alasan, izin eksekusi tampaknya disetel untuk file kunci preferensi, jadi mungkin berjalan chmod u+x ~/Library/Preferences/*.lockfile akan membantu. - Gordon Davisson


Untuk me-Reset izin file dan Daftar Kontrol Akses (ACL) dari direktori home pengguna Anda ke pengaturan default mereka lakukan ini:

  1. Boot ke mode Recovery dengan menekan tombol Command dan R saat boot.
  2. Buka terminal (di bawah menu Utilitas)
  3. Mengetik resetpassword ke terminal dan tekan Return.
  4. Di jendela ulang utilitas kata sandi, pilih volume yang benar, dan di bagian bawah Anda akan melihat area berlabel ‘Setel ulang Izin Folder Rumah dan ACL’. Klik tombol Reset di area itu.
  5. Tutup jendela, OS X Utilitas cepat, mulai ulang.

4
2017-12-22 22:17





Perbaiki Disk Permissions dengan membuka Disk Utility, memilih drive, lalu mengklik Repair Disk Permissions


1
2017-10-31 01:59



Dari dalam Disk Utility, saya memilih partisi "Pengguna", dan saya tidak memiliki opsi untuk memperbaiki izin (itu dinonaktifkan). - achinda99
Perbaiki Perizinan Disk hanya memperbaiki perizinan pada file sistem, bukan file pengguna. - Gordon Davisson


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

1
2018-06-23 20:40



Saya berasumsi bahwa Anda digunakan Linc's prosedur standar sebagai titik awal: discussion.apple.com/thread/5275515?tstart=0 - ylluminate


Setelah banyak usaha dan pencarian:

Meskipun tidak sempurna, saya hanya menggunakan jendela Get Info di folder home. Ini menunjukkan "baca / tulis" untuk pengguna, * "hanya baca" untuk admin, dan "tidak ada akses" untuk semua orang. Terlihat cukup baik bagiku.

Saya kemudian menjalankan opsi di menu roda gigi untuk diterapkan ke semua item yang dilampirkan.

Akses yang dipulihkan untuk semuanya! Kurang dari satu menit (di SSD saya).

Hallelujah! * standar, bukan admin


0
2017-07-07 01:29