Terjebak di layar biru setelah menjalankan "rm *" di /

12

Aku sengaja dilaksanakan rm *pada /dan sejak itu saya tidak dapat melihat desktop saya. Yang saya lihat adalah layar biru dengan roda gigi berputar.

Ironisnya, entah bagaimana, saya ketinggalan OS dan CD lain yang menyertai Mac saya. Saya mengikuti artikel ini tentang memulai dalam safe mode tetapi itu menunjukkan progress bar untuk waktu yang lama dan sekali lagi terjebak ke layar biru

Terlampir adalah layar yang saya lihat saat boot.

masukkan deskripsi gambar di sini

Saya juga tidak bisa masuk ke mode aman, jadi bagaimana saya bisa kembali ke sistem yang berfungsi?

PS: Saya juga bertanya-tanya apakah saya bisa mendapatkan pengaturan desktop saya lagi tanpa mengorbankan semua pengaturan? Saya secara khusus peduli dengan perangkat lunak yang diinstal melalui home brew, Database dll. Apakah mungkin untuk mengembalikan atau menyalin file yang dihapus dengan semacam perbaikan melalui CD ?. File tersembunyi saya menanamkan bash_profile dll juga ada. Bisakah Anda memandu bagaimana saya harus melanjutkan?

pembaruan saya masuk ke mode tunggal. Periksa gambar. Apa yang saya lakukan sekarang?

masukkan deskripsi gambar di sini

masukkan deskripsi gambar di sini

perbarui # 3

masukkan deskripsi gambar di sini

akhirnya

masukkan deskripsi gambar di sini

Volatil3
sumber
Apakah Anda ingat perintah persis yang Anda jalankan, pengguna yang Anda gunakan masuk saat itu dan keluaran apa pun dari perintah yang dihasilkan?
nohillside
Apakah Anda menggunakan -ropsi (atau -Ropsi)? Jika tidak, itu tidak seharusnya terjadi.
0942v8653
Tidak, aku tahu ran rm dengan tanda bintang. Hanya file yang dihapus. Semua folder ada di sana karena bahkan setelah menjalankan perintah saya menggunakan sistem saya di GUI, hanya saja saya tidak dapat menggunakannya setelah restart
Volatil3
@ patrix hanya ada output yang mengatakan folder tidak dihapus karena mereka adalah direktori
Volatil3
2
Saat ini kekhawatiran terbesar Anda adalah bagaimana kembali ke sistem yang berfungsi, bukan apakah instalasi homebrew Anda selamat.
nohillside

Jawaban:

24

Bergantung pada pengaturan sistem Anda dan perintah Anda, Anda mungkin kehilangan hanya beberapa file - termasuk satu yang penting - dan folder dan beberapa sym-link.

Menggunakan perintah rm *- dijalankan oleh admin di folder root - biasanya menghapus sym-link / etc saja:

  • Boot ke mode satu pengguna, periksa sistem file Anda dengan /sbin/fsck -fy, dan pasang root read / writable with /sbin/mount -rw /. Kemudian buat kembali sym-link / etc with ln -s /private/etc /etcdan reboot dengan Mac Anda shutdown -r now.

Menggunakan perintah sudo rm *- dijalankan oleh sudoer di folder root - dalam pengaturan standar Anda hanya akan kehilangan file 'mach_kernel' dan sym-link 'etc', 'tmp' dan 'var'.

(Tidak ada file lain yang dihapus dalam sistem file) . Setelah penyelidikan lebih lanjut ternyata beberapa file dan folder lain juga sering dihapus: folder dengan nama sudoer (biasanya nama pendek dari akun admin Anda) di / private / var / db / sudo / dan file .state dengan nama sewenang-wenang (yang dihasilkanUID dari akun admin / sudoer Anda) yang terkait dengan file lain dengan nama yang sama di / private / var / db / shadow / hash /. Saya tidak dapat menentukan apakah mereka dihapus oleh 'sudo', 'rm' atau 'sudo rm'. File & folder ini tidak terlalu penting.

fsevent

Saya sudah menguji itu di hampir VM vanilla OS X 10.6.8 Server VM.

Sebelum mengeksekusi sudo rm *folder root terlihat seperti ini - termasuk file, folder dan sym-link yang tidak terlihat - dengan ls -la:

drwxrwxr-t  32 root  admin      1156 25 Dez 11:55 .
drwxrwxr-t  32 root  admin      1156 25 Dez 11:55 ..
-rw-rw-r--   1 root  admin     15364  4 Jan 14:35 .DS_Store
drwx------   3 root  admin       102 10 Sep 01:37 .Spotlight-V100
d-wx-wx-wt   2 root  staff        68 10 Sep 01:23 .Trashes
----------   1 root  admin         0 23 Jun  2009 .file
drwx------  38 root  admin      1292  4 Jan 14:59 .fseventsd
-rw-------   1 root  wheel      4096 10 Sep 01:29 .hotfiles.btree
drwxr-xr-x@  2 root  wheel        68 18 Mai  2009 .vol
drwxrwxr-x+ 35 root  admin      1190 25 Dez 16:49 Applications
drwxrwxr-x@ 16 root  admin       544 25 Dez 12:04 Developer
drwxrwxr-t+  2 root  admin        68 10 Sep 01:37 Groups
drwxrwxr-t+ 65 root  admin      2210 25 Dez 12:02 Library
drwxr-xr-x@  3 root  wheel       102 26 Feb 20:43 Network
drwxr-xr-x   4 root  wheel       136 10 Sep 01:28 Shared Items
drwxr-xr-x   4 root  wheel       136 10 Sep 02:02 System
drwxr-xr-x+  5 root  admin       170 10 Sep 01:37 Users
drwxrwxrwt@  4 root  admin       136 26 Feb 20:43 Volumes
drwxr-xr-x@ 39 root  wheel      1326 10 Sep 02:09 bin
drwxrwxr-t@  2 root  admin        68 23 Jun  2009 cores
dr-xr-xr-x   3 root  wheel      4013 26 Feb 20:43 dev
lrwxr-xr-x@  1 root  wheel        11 10 Sep 01:26 etc -> private/etc
dr-xr-xr-x   2 root  wheel         1 26 Feb 20:43 home
-rw-r--r--@  1 root  wheel  20828964  8 Jun  2011 mach_kernel
dr-xr-xr-x   2 root  wheel         1 26 Feb 20:43 net
drwxr-xr-x@  6 root  wheel       204 10 Sep 01:28 private
drwxr-xr-x@ 68 root  wheel      2312 10 Sep 02:09 sbin
lrwxr-xr-x@  1 root  wheel        11 10 Sep 01:26 tmp -> private/tmp
drwxr-xr-x@ 14 root  wheel       476 25 Dez 11:57 usr
lrwxr-xr-x@  1 root  wheel        11 10 Sep 01:26 var -> private/var

Setelah mengeksekusi sudo rm *hanya satu file dan sym-links menghilang:

drwxrwxr-t  28 root  admin   1020 26 Feb 19:41 .
drwxrwxr-t  28 root  admin   1020 26 Feb 19:41 ..
-rw-rw-r--   1 root  admin  21508 26 Feb 19:41 .DS_Store
drwx------   3 root  admin    102  9 Sep 23:37 .Spotlight-V100
d-wx-wx-wt   2 root  20        68  9 Sep 23:23 .Trashes
----------   1 root  admin      0 23 Jun  2009 .file
drwx------  38 root  admin   1292  4 Jan 13:59 .fseventsd
-rw-------   1 root  wheel   4096  9 Sep 23:29 .hotfiles.btree
drwxr-xr-x@  2 root  wheel     68 18 Mai  2009 .vol
drwxrwxr-x+ 35 root  admin   1190 25 Dez 15:49 Applications
drwxrwxr-x@ 16 root  admin    544 25 Dez 11:04 Developer
drwxrwxr-t+  2 root  admin     68  9 Sep 23:37 Groups
drwxrwxr-t+ 65 root  admin   2210 25 Dez 11:02 Library
drwxr-xr-x@  3 root  wheel    102 26 Feb 19:39 Network
drwxr-xr-x   4 root  wheel    136  9 Sep 23:28 Shared Items
drwxr-xr-x   4 root  wheel    136 10 Sep 00:02 System
drwxr-xr-x+  5 root  admin    170  9 Sep 23:37 Users
drwxrwxrwt@  4 root  admin    136 26 Feb 19:39 Volumes
drwxr-xr-x@ 39 root  wheel   1326 10 Sep 00:09 bin
drwxrwxr-t@  2 root  admin     68 23 Jun  2009 cores
dr-xr-xr-x   3 root  wheel   4013 26 Feb 19:39 dev
dr-xr-xr-x   2 root  wheel      1 26 Feb 19:39 home
dr-xr-xr-x   2 root  wheel      1 26 Feb 19:39 net
drwxr-xr-x@  6 root  wheel    204  9 Sep 23:28 private
drwxr-xr-x@ 68 root  wheel   2312 10 Sep 00:09 sbin
drwxr-xr-x@ 14 root  wheel    476 25 Dez 10:57 usr

Dengan menggunakan pengaturan non-standar, semua file dan tautan-sym lain di folder root (jika ada sama sekali) akan dihapus juga. Semua folder non-standar (mis. / Opt) bertahan.

  • Jika Anda tidak menghapus file kernel (yang tidak mungkin), cobalah untuk boot ke mode pengguna tunggal dan membangun kembali tiga sym-link yang dihapus dengan ln -s /.../folder /folder(misalnya ln -s /private/etc /etc)

  • Jika Anda memiliki cadangan dan menghapus file kernel, cobalah untuk mengembalikan file mach_kernel, symlinks, folder dengan nama pengguna admin Anda di ../sudo/ dan file status yang hilang. Anda memerlukan beberapa hard disk / thumb drive yang dapat di-boot untuk mengembalikan file-file tersebut dari cadangan.

  • Jika Anda tidak memiliki cadangan, coba salin file mach_kernel dari Mac lain dengan sistem yang sama (mis. 10.6.8). Buat kembali symlinks. Anda mungkin harus menyesuaikan kepemilikan dan izin (lihat daftar).

    "mach_kernel" juga tersedia di Pembaruan Combo Mac OS X 10.6.8 dan mungkin pembaru combo lainnya seperti Pembaruan Combo Mac OS X 10.6.6 dan Pembaruan Combo Mac OS X 10.6.7. Dengan demikian memperbarui sistem Anda yang rusak dengan combo updater dari thumb drive bootable eksternal atau terpasang dalam mode target-disk ke Mac lain juga harus berfungsi.

    Setelah mengembalikan file kernel dan symlink Anda bisa boot ke mode super user dan masuk mount -o rw,remount /dan membuat folder yang hilang di / private / var / db / sudo / with mkdir /private/var/db/sudo/adminname. File .state yang hilang membangun kembali dirinya sendiri.

Jika Anda telah mengeksekusi sudo rm -dR *Anda akan hancur tanpa cadangan yang tepat. Sistem saya tidak dapat di-boot setelahnya tetapi hanya membingungkan ~ 524 MB dari 9860 MB dihapus setelah mengesampingkan konfirmasi untuk '/System/Library/CoreServices/boot.efi' dan '/ dev / fd / 4'.
Dalam upaya kedua saya mendapat 8445 MB dari 9860 MB dihapus menggunakan sudo rm -dR *. Upaya pertama mungkin juga dapat dipulihkan dengan Pembaruan Combo, sisa-sisa yang lemah dari upaya kedua pasti tidak.

klanomath
sumber
Semua ini luar biasa, benar dan luar biasa, tetapi pengalaman saya adalah jika / System atau / Library tertabrak, sistem tidak dapat boot ke atau melewati layar abu-abu. Layar biru selama boot berarti bahwa OS memeriksa, memulai dengan benar (atau sebagian besar) dan fase lingkungan pengguna launchd telah dimulai. Pemeriksaan mudah untuk ini adalah dengan menghapus file /var/db/.AppleSetupDone dengan sangat hati - hati dalam mode pengguna tunggal dan kemudian melihat apakah Anda dapat membuat pengguna admin baru dan setidaknya melakukan satu pencadangan Time Machine untuk melihat file pengguna mana yang dapat diselamatkan .
bmike
@klanomath menarik untuk dicatat bahwa rm * tidak menghapus file gambar di root. Kenapa ya.
Volatil3
@klanomath-rw-r-----@ 1 Adnan staff 2404856 Feb 26 21:33 mountain.jpg
Volatil3
@klanomath file jpg diunduh dari net. Saya masuk dari pengguna yang sama yang menjalankan perintah rm *.
Volatil3
1
@ Volatil3 Mungkin rm baru saja menyerah menghapus file sebelum mencapai mountain.jpg, benar-benar tidak berhasil menghapus semua folder itu. Atau gunung itu terlalu besar untuk dihapus. ;-) Menguji sudo rm -dR * di root mesin virtual saya, saya juga mendapat beberapa hasil yang tidak konsisten: cukup periksa bagian terakhir dari jawaban saya. Dalam upaya 1 hanya 7% dari konten yang dihapus, dalam upaya 2 85%.
klanomath