Saya mencoba rm -rf
folder, dan "perangkat atau sumber daya sibuk".
Di Windows, saya akan menggunakan LockHunter untuk menyelesaikan ini. Apa yang setara dengan linux? (Tolong beri jawaban sebagai metode sederhana "buka ini", dan tidak menyelesaikan artikel seperti ini . Meskipun mereka berguna, saya saat ini tertarik hanya ASimpleMethodThatWorks ™)
rm -rf /
... itu akan dengan senang hati menghapus setiap file, termasuk / bin / rm.Jawaban:
Alat yang Anda inginkan adalah
lsof
, yang merupakan singkatan dari daftar file yang terbuka .Ada banyak opsi, jadi periksa halaman manual, tetapi jika Anda ingin melihat semua file yang terbuka di bawah direktori:
Itu akan muncul kembali melalui sistem file di bawah
/path
, jadi berhati-hatilah melakukannya pada pohon direktori besar.Setelah Anda tahu proses mana yang membuka file, Anda dapat keluar dari aplikasi tersebut, atau mematikannya dengan
kill(1)
perintah.sumber
/path
. Itulah salah satu penyebab "buka file" tersembunyi.lsof
tampaknya tidak melakukan apa pun untuk saya:lsof storage/logs/laravel.log
tidak mengembalikan apa-apa, dan begitu jugalsof +D storage/logs/
.umount
merespons dengannot mounted
.mount | grep <path>
. Itu menunjukkan ada yang/dev/<abc>
mungkin dipasang di Internet<path>
. Gunakansudo umount -lf /dev/<abc>
lalu coba hapus<path>
. Bekerja untukku. Terima kasih @camhterkadang ini disebabkan oleh masalah pemasangan, jadi saya akan melepas sistem file atau direktori yang ingin Anda hapus:
sumber
Saya menggunakan
fuser
untuk hal semacam ini. Ini akan mendaftar proses mana yang menggunakan file atau file dalam mount.sumber
fuser
hanya membantu dalam kasus tertentu ketika Anda ingin meng-unmount sistem file. Di sini masalahnya adalah menemukan apa yang menggunakan file tertentu.fuser
tidak membantu di sini karena masalahnya adalah menemukan semua file yang terbuka di pohon direktori. Anda dapat memberi tahulsof
untuk menampilkan semua file dan memfilter, atau membuatnya berulang;fuser
tidak memiliki mode seperti itu dan perlu dipanggil pada setiap file.fuser
works akan mendaftar. Cobafuser /var/log/*
, jika ada log yang terbuka, ia akan memberi tahu mana dan siapa yang membuka. Jika wildcard sederhana, tidak akan berfungsi,find
dengan atau tanpaxargs
akan melakukan pekerjaan.lsof
tidak ada di jalur saya sementarafuser
, memungkinkan saya untuk menemukan proses ID menyinggung untuk membunuh, jadi +1 +1 terima kasih.Ini solusinya:
ls -a
.xyz
filevi .xyz
dan lihat apa isi dari file tersebutps -ef | grep username
kill -9 job_ids
- di mana job_ids adalah nilai kolom ke-2 dari konten yang disebabkan kesalahan yang terkait di kolom ke-8sumber
Saya memiliki masalah yang sama, membangun satu liner dimulai dengan rekomendasi @camh:
The
awk
perintah meraih PID. Thetail
perintah menghilangkan sial pertama entri: "PID". Saya terbiasa-9
membunuh, orang lain mungkin memiliki opsi yang lebih aman.sumber
Saya mengalami masalah ini ketika tes otomatis membuat ramdisk. Perintah yang disarankan dalam jawaban lain,
lsof
danfuser
, tidak membantu. Setelah tes saya mencoba melepasnya dan kemudian menghapus folder. Saya benar-benar bingung sejak lama karena saya tidak bisa menghilangkannya - saya terus membuat "Perangkat atau sumber daya sibuk" !Secara tidak sengaja saya menemukan cara untuk menyingkirkan ramdisk. Saya harus meng-unmount-nya berkali-kali dengan yang saya jalankan
mount
perintah, yaitusudo umount path
Karena fakta bahwa itu dibuat menggunakan pengujian otomatis, itu dipasang berkali-kali, karenanya mengapa saya tidak bisa menghilangkannya hanya dengan melepasnya setelah pengujian. Jadi, setelah saya unmount secara manual berkali-kali akhirnya menjadi folder biasa lagi dan saya bisa menghapusnya.
Semoga ini bisa membantu orang lain yang menemukan masalah ini!
sumber
Saya sering mengalami ini di server yang memiliki sistem file jaringan NFS. Saya berasumsi itu ada hubungannya dengan sistem file, karena file-file tersebut biasanya dinamai seperti
.nfs000000123089abcxyz
.Solusi khas saya adalah mengubah nama atau memindahkan direktori induk file, lalu kembali lagi dalam satu atau dua hari dan file tersebut akan dihapus secara otomatis, di mana saya bebas untuk menghapus direktori.
Ini biasanya terjadi di direktori tempat saya menginstal atau mengkompilasi pustaka perangkat lunak.
sumber
Mengupas pertanyaan Prabhat di atas, saya memiliki masalah ini di macos high sierra ketika saya terdampar proses encf, me-reboot menyelesaikannya, tapi ini
Tunjukkan pada saya proses dan PID (kolom dua).
memperbaikinya.
sumber
-15
?Jika server Anda dapat diakses, Coba
Atau, lakukan umount dan mount lagi, coba
umount -l
: lazy umount jika menghadapi masalah pada umount normal.Saya juga punya masalah ini di mana
lsof +D path
: tidak memberikan outputps -ef
: tidak memberikan informasi yang relevansumber