Mengapa SISTEM terus mengunci pegangan file yang dapat dieksekusi setelah aplikasi keluar?

24

Saya melihat perilaku aneh pada mesin Windows 7 saya; tampaknya ketika sebuah executable berjalan, SYSTEM tetap membuka pegangannya untuk sekitar satu menit berikutnya. Inilah pertemuan terakhir saya:

Saya menginstal Steam, yang memulai post-install steam.exe untuk memperbarui sendiri. Tampaknya melakukan ini dengan menulis salinan sementara dari dirinya sendiri, meluncurkan itu untuk melakukan unduhan, kemudian menimpa salinan asli dari executable. Dalam kasus saya ini gagal, mengklaim bahwa steam.exe tidak dapat dihapus.

Saya membuka folder dan mencoba menghapus steam.exe secara manual, tetapi Windows mengklaim bahwa saya tidak memiliki izin. Akun saya adalah Administrator, dan merupakan satu-satunya akun pengguna di mesin ini. Tapi untuk berjaga-jaga, saya mulai Explorer sebagai Administrator, tetapi masih tidak bisa menghapus file. Saya membuka Properti file ke tab Keamanan, tetapi hanya memperlihatkan pesan yang mengatakan bahwa saya tidak memiliki izin untuk melihat izin.

Selanjutnya, saya membuka Process Explorer untuk melihat apakah ada sesuatu yang terkunci pada file. SISTEM (PID 4) melakukannya, tetapi ketika saya mencoba untuk menutup file menangani, itu menghasilkan kesalahan yang menyatakan bahwa pegangan itu tidak valid. Saya mencoba untuk melihat properti menangani file, tetapi saya tidak punya izin untuk melakukannya juga.

Saya telah menghentikan semuanya kecuali proses sistem yang tidak dapat dihentikan, dan menghentikan semua layanan yang dapat saya lakukan, termasuk semua yang terkait dengan AV & firewall, tetapi masalahnya terus muncul. Saya sudah mencoba menggunakan 'takeown' untuk memberi saya kepemilikan atas file tersebut, tetapi ia mengklaim bahwa saya tidak memiliki izin untuk melakukan itu. Orang lain mengklaim berhasil menggunakan alat yang disebut 'Unlocker', tetapi memiliki masalah yang sama dengan Process Explorer dalam menutup pegangan file.

Saya sudah lama menonaktifkan Windows Indexing & Search, dan mengecualikan C: \ dari indexing, jadi jawaban untuk pertanyaan ini tidak berlaku untuk saya.

Setiap kali, setelah kira-kira satu menit, gagang menghilang dan file segera dihapus; rupanya upaya pembaru untuk menghapusnya mendapat antrian dan akhirnya selesai setelah file tidak lagi terkunci. Sayangnya pembaruan telah dihentikan, dan tidak dapat dilanjutkan. Dan ketika saya menginstal ulang, tentu saja mencoba untuk menjalankan steam.exe lagi, dan saya kembali ke titik awal.

Pertanyaan saya adalah: mengapa gagang-gagang ini berkeliaran, dan bagaimana saya bisa mencegahnya?

Sunting: Ini informasi tambahan seperti yang diminta dari komentar:

C:\>fltmc instances
Filter                Volume Name                              Altitude        Instance Name      Frame  VlStatus
--------------------  -------------------------------------  ------------  ---------------------  -----  --------
KLIF                  \Device\Mup                             320400       KLIF                     0
KLIF                  C:                                      320400       KLIF                     0
KLIF                                                          320400       KLIF                     0
luafv                 C:                                      135000       luafv                    0
FileInfo              \Device\Mup                              45000       FileInfo                 0
FileInfo              C:                                       45000       FileInfo                 0
FileInfo                                                       45000       FileInfo                 0

Sunting: GMER menunjukkan bahwa antivirus saya (Kaspersky) masih aktif dalam beberapa cara, meskipun menonaktifkannya dari GUI sendiri, dan layanannya dihentikan.

AttachedDevice  \Driver\tdx \Device\Ip     kl1.sys (Kaspersky Unified Driver/Kaspersky Lab ZAO)
AttachedDevice  \Driver\tdx \Device\Tcp    kl1.sys (Kaspersky Unified Driver/Kaspersky Lab ZAO)
AttachedDevice  \Driver\tdx \Device\Udp    kl1.sys (Kaspersky Unified Driver/Kaspersky Lab ZAO)
AttachedDevice  \Driver\tdx \Device\RawIp  kl1.sys (Kaspersky Unified Driver/Kaspersky Lab ZAO)

Tetapi ini semua tampaknya untuk layanan jaringan; Saya tidak melihat apa pun yang berkaitan dengan sistem file. Bisakah salah satu dari ini menjadi penyebab masalah?

Sunting: Saya menonaktifkan filter Kaspersky KLIF, tetapi masalah penguncian tetap ada.

Sunting: Saya memecahkan masalah khusus dengan Steam dengan menginstal, menghentikan paksa penginstal sebelum dapat menjalankan steam.exe, lalu memulai kembali dalam safe-mode dan menjalankannya di sana. Jadi ternyata apa pun yang mengunci executable tidak ada dalam safe-mode.

Meskipun saya telah memecahkan kasus khusus ini, masalahnya juga muncul di tempat lain, jadi saya masih ingin memahami apa yang terjadi.

DNS
sumber
3
"Sistem" adalah proses semu yang mewakili (secara kasar) kernel Windows. Informasi lebih lanjut tentang konfigurasi Anda (misalnya driver filter apa yang ada di pengguna) akan diperlukan untuk memberikan jawaban yang pasti.
0xC0000022L
Apa cara terbaik untuk mendapatkan informasi tambahan itu?
DNS
jika itu adalah filter mini, coba periksa fltmcapakah itu adalah filter lawas yang Anda perlukan alat seperti GMER untuk membuat daftar objek yang difilter. Saya tahu itu bukan tujuan utama GMER, tetapi dapat digunakan seperti itu. Dulu ada beberapa alat dari OSR, tapi saya tidak ingat namanya. Akan membalas lagi jika saya ingat.
0xC0000022L
Ini merupakan pengoptimalan untuk program yang berulang kali menutup dan membuka kembali file. Layanan "Pengalaman Aplikasi" mengalahkan optimasi untuk kasus-kasus khusus seperti mencoba menghapus dari Windows Explorer ketika pegangan masih di-cache.
user165568

Jawaban:

20

Lakukan hal berikut:

  1. Nonaktifkan Pengindeksan di lokasi bermasalah.

  2. Aktifkan layanan "Pengalaman Aplikasi" dan setel ke "Otomatis".

Hanya itu saja.

Jika masalah Anda masih berlanjut, mungkin Superfetch, meskipun menonaktifkannya tidak membawa saya keberuntungan.

Kevin
sumber
5
# 2 (Mengaktifkan layanan "Pengalaman Aplikasi") bekerja untuk saya, terima kasih! Sungguh menyakitkan ketika men-debug software LIVEditor (editor html langsung) saya, karena saya harus berulang kali mengkompilasi ulang EXE.
Edwin Yip
1
Pengindeksan bukan sesuatu yang ingin saya nonaktifkan, tetapi untungnya hanya mengatur Pengalaman Aplikasi ke Otomatis berfungsi. Tidak percaya saya telah hidup dengan masalah ini selama 5 tahun terakhir ketika perbaikannya sesederhana itu.
Mordred
Melewati kamu, aku mencintaimu !!
Antusiasme
Mulai AeLookupSvcbekerja, tetapi mengapa? Apa layanan misterius ini?
cdlvcdlv
6

KLIF adalah driver AV Kaspersky. Ini agaknya berkaitan dengan itu.

Tindakan saya dalam kasus seperti itu adalah dengan menghubungi Kaspersky dan meminta nasihat.

Namun, ada hal lain yang dapat Anda coba pertama: disable driver (di bawah HKLM\SYSTEM\CurrentControlSet\Services) dengan mencari KLIFatau yang serupa sebagai nama kunci dan menetapkan REG_DWORDnilai bernama Startuntuk 4(yang berarti cacat), kemudian reboot. Ini harus mencegah driver filter KAV dimuat. Anda kemudian dapat menggunakan fltmcuntuk memverifikasi hasilnya.

Output dari GMER yang Anda berikan tidak relevan untuk kasus yang ada karena hanya akan mempengaruhi koneksi jaringan, bukan operasi file. Sepertinya Anda telah memasang Kaspersky Internet Security (atau masih tidak aktif di komputer Anda).

Sunting: just FYI luafvbertanggung jawab untuk virtualisasi FS bersama dengan UAC. Yaitu jika Anda tidak memiliki akses ke file itu dimasukkan ke folder terpisah di dalam profil Anda. FileInfoMilik SuperFetch - yang sebenarnya bisa menjadi bagian dari masalah Anda, tapi saya sendiri tidak punya masalah serupa pada Windows 7. Pada umumnya tidak disarankan untuk menonaktifkan SuperFetch, meskipun bisa.

0xC0000022L
sumber
Itu tidak akan memungkinkan saya untuk mengubah nilai kunci itu, jadi saya memulai kembali dalam mode aman dan membuat perubahan di sana. Saat restart, entri KLIF hilang dari output fltmc, tetapi masalah penguncian tetap ada.
DNS
Saya menambahkan sedikit info lagi; lihat edit terbaru saya untuk pertanyaan ini.
DNS
@DNS: sudahkah Anda mencoba mendapatkan output dari fltmcdalam safe mode? Sangat mungkin SuperFetch tidak aktif. Ketika Anda membaca tentang SuperFetch, sepertinya deskripsi Anda tentang memegang pegangan lebih lama bisa masuk akal.
0xC0000022L
Itu pemikiran yang sangat bagus, tetapi sayangnya FileInfo dan luafv aktif dalam mode aman.
DNS
Suite "keamanan internet" modern ini adalah cara yang terlalu jarang dilakukan, tidak ada gunanya. MSE + akal sehat harus memadai.
kinokijuf
1

Saya mengalami masalah ini dengan Java Executable sedang dibuka dan saya telah menonaktifkan pengalaman aplikasi ... (pencarian windows dinonaktifkan juga) mengatur pengalaman aplikasi untuk mulai otomatis memperbaikinya untuk saya. Terima kasih!!! (Saya juga memiliki masalah dengan file yang tidak disimpan selama satu menit dan tidak dapat menghapus file sampai satu menit setelah saya menutupnya ...

David K
sumber
Bagaimana Anda menonaktifkan pengalaman aplikasi?
Simon Sheehan
Semua titik kontrol layanan windows akan dilakukan - Saya menggunakan Mulai >> Jalankan >> "services.msc" (enter) >> klik kanan "pengalaman aplikasi" >> klik kiri "properties" >> pilih tab "general" (default)> > drop down kotak "startup type" >> pilih otomatis (klik kiri) >> klik "apply"
David K
1

Ini terjadi pada saya sekali, dan ternyata komputer remote yang memiliki folder share terbuka.

  1. Gunakan Handle untuk mengetahui proses apa yang menahan file
  2. (Itu Sistem dalam kasus saya)
  3. Cobalah untuk menutup Handle yang: handle.exe -c E14 -p 4. Pegangan file Anda akan ditemukan dalam hasil pencarian Anda untuk menangani file, dan processid kemungkinan akan sama untuk sistem.
  4. Ini menghasilkan Error closing handle: T
  5. Googling ini, saya menemukan ini terkait dengan jaringan
  6. Saya menemukan di komputer lain, saya memang memiliki folder terbuka. Tutup saja. Semuanya bagus.
Todd
sumber
0

Saya mengalami masalah ini ketika mencoba mengganti nama folder. Saya harus menghentikan layanan server saat melakukan penggantian nama. Hanya me-restart tidak membantu, karena proses sistem mengunci kembali folder segera setelah layanan server restart. Ini kemungkinan akan mengatasi masalah yang disebutkan di sini juga.

Es hitam
sumber