sudo chmod -R 777 /

9
 sudo chmod -R 777 /

Saya melakukan ini. Itu adalah sebuah kesalahan. Apakah ada cara untuk membatalkannya?

Pada dasarnya ini mengacaukan lebih banyak hal daripada yang bisa saya tulis Saya tidak memiliki mesin waktu diaktifkan di mac saya.

Casey Flynn
sumber
Pertanyaan serius, adakah cara untuk membatalkannya?
Casey Flynn
3
777 izin hampir tidak pernah menjadi jawaban untuk masalah izin apa pun. Ini mungkin membuat Anda melewati cegukan, tetapi itu jarang ide yang baik, bahkan ketika terbatas pada direktori yang jauh di dalam sistem disk Anda. Ini adalah bencana ketika diterapkan ke semua file dan direktori di bawah root, paling tidak karena ia mencoba untuk menghapus bit SUID dari program seperti 'sudo' yang membutuhkannya. Jangan lakukan itu lagi! (Banyak pengguna Unix dapat menghibur Anda dengan cerita tentang kesalahan analog; Saya tidak akan mengganggu Anda dengan milik saya, tetapi cadangan sistem menyelamatkan hari itu, dan bukan saya yang mengetik perintah yang mencapai rm -fr /.)
Jonathan Leffler
2
Biarkan ini menjadi pelajaran bagi semua orang tentang mengapa sudo"berpikir sebelum Anda mengetik" pertama kali Anda menggunakannya. ;-)
Scott
Lakukan ls -lR / >listpada sistem yang sehat (atau minta daftar orang lain). Anda bisa mengotomatiskan proses ini untuk mengatur ulang izin (jika Perbaikan Utilitas Dirk ini tidak berfungsi).
ott--
Tab Lengkapi-otomatis menyelamatkan nyawa; 3
hwshadow

Jawaban:

9

Lihatlah fitur Izin Disk Perbaikan Apple Utility:

http://support.apple.com/kb/HT1452?viewlocale=en_US

Kylex
sumber
1
Ini tidak akan membatalkan perubahan Anda, tetapi seharusnya memperbaiki sebagian besar masalah karena pengaturan izin yang tidak tepat.
Kylex
Apakah ini akan memperbaiki program 'sudo' saya?
Casey Flynn
@Casey - Apa masalah dengan sudo? sudo hanya memungkinkan Anda untuk menjalankan perintah sebagai root. yaitu. melewati banyak batasan keamanan.
Kylex
1
@kylex: mungkin menolak untuk bekerja karena / etc / suoers dapat ditulisi oleh dunia :) Pemikiran yang bagus
sehe
4
Sudo mungkin menolak untuk bekerja karena membutuhkan setelan bit yang diatur dan dengan mengubah semuanya secara rekursi ke mode 777 OP telah menghapus bit suid pada sudo (dan semua program istimewa lainnya). Tanpa bit suid yang ditetapkan, sudo tidak dapat memperoleh hak istimewa yang tinggi dan karenanya tidak dapat memberi Anda akses selain dari yang sudah Anda miliki. Kecuali Disk Utility memiliki mekanisme alternatif untuk mendapatkan hak istimewa yang lebih tinggi, Casey mungkin harus mengatur untuk masuk sebagai root.
larsks
4

Dari http://support.apple.com/kb/HT2963 :

Menggunakan Utilitas Perbaikan Privileges

Sebagian besar pengguna Mac OS X tidak secara sengaja memodifikasi hak istimewa dan hanya perlu utilitas untuk mereset hak istimewa sistem ke nilai default yang benar. Jika Anda memiliki Mac OS X 10.2 dan yang lebih baru, utilitas ini termasuk dalam sistem operasi. Jika Anda memiliki Mac OS X 10.1 Anda dapat mengunduhnya. Untuk versi 10.0 hingga 10.1.4, Anda harus memperbarui ke versi 10.1.5 terlebih dahulu.

Untuk Mac OS X 10.2 atau lebih baru, buka Disk Utility (/ Applications / Utilities /). Pilih volume startup Mac OS X Anda di kolom di sebelah kiri jendela Disk Utility, lalu klik tab First Aid. Klik tombol Perbaiki Disk Izin. Anda mungkin melihat pesan yang salah.

sdolgy
sumber
0

Izin perbaikan termasuk file yang dibuat oleh pemasang OS X (seperti / etc / sudoers), tetapi tidak termasuk file yang tidak diinstal sebelumnya atau tidak dibuat oleh paket.

Mungkin lebih mudah untuk membuat cadangan semuanya, melakukan instal ulang bersih, dan mengembalikan file secara selektif dari cadangan (atau cadangan). Anda dapat mengembalikan izin 644/744 dengan menemukan:

find /Volumes/Second\ Backup -type f -exec chmod 644 {} \+
find /Volumes/Second\ Backup -type d -exec chmod 744 {} \+

Jika Anda tidak dapat mencadangkan file, coba mulai dari partisi pemulihan (atau media instalasi pada 10.6 dan sebelumnya) dan kloning drive OS X utama dari Disk Utility.

Lri
sumber
-1

Jika ada beberapa alat untuk mengembalikan izin, dan orang-orang menyarankannya, Anda sebaiknya pergi dengannya, sudo chmod -R 777 / jika tidak, Anda dapat mengembalikan semua izin ke tingkat yang lebih aman seperti

chmod -R 644

dan kemudian mengubah izin ke level yang diperlukan, ketika ada konflik.

-

Tapi itu bukan cara yang baik. Hanya beberapa pendekatan yang lebih aman untuk mencegah mengacaukan file Anda, sebelum hal buruk dapat terjadi. :(

Dhruba Adhikari
sumber
2
chmod -R 644akan membuat semua direktori tidak dapat dicari. Akan sulit untuk pulih dari itu.
Keith Thompson