Tidak dapat menghapus file - tidak ada file atau direktori tersebut


12

Saya menghapusnya sekali, tapi hantu itu masih ada :)

Bagaimana saya bisa menghapus file yang ada tetapi sistem mengatakan tidak ada?

Tab Izin - mencoba mengubahnya, tetapi akan mengatur ulang sendiri secara otomatis Inilah yang terjadi ketika saya mengklik "Hapus"


Ini peringatan. Apa isinya jika Anda memilih "Hapus"?
Marty Fried

Klik kanan file, pilih Properties, buka tab Izin. Silakan ambil tangkapan layar dan poskan di sini.
Eric Carvalho

Bisakah Anda memindahkan file lain ke tempat sampah? Apakah file yang Anda hapus pada sistem file yang sama dengan sistem file rumah Anda? Apakah direktori ~ / .Trash / ada?
John S Gruber

John, aku bisa memindahkan file lain ke tempat sampah secara normal, hanya saja ini yang memberiku masalah.
Valeriu

Apakah Anda mencoba menghapusnya dari terminal? sudo rm panorama.jpg
David M. Sousa

Jawaban:


3

Saya tahu ini sudah lama, tetapi saya memiliki masalah yang sama seperti milik Anda, hanya dengan folder, bukan dengan file. Tidak ada metode yang disarankan di sini yang berfungsi.

Saya berhasil memecahkan masalah dengan membuat folder di posisi yang sama dan dengan nama yang sama dengan yang saya tidak bisa hapus. Folder itu dibuat dengan benar dan "menggantikan" yang tidak ada. Lalu saya cukup menghapus folder baru dan masalah itu hilang. Sederhana seperti itu.


solusi termudah di sini jika ini benar-benar menghilangkan seluruh problemo.
lightsout

2

Saya memiliki masalah yang sama. Itu masalah dalam entri indeks partisi. Saya menyelesaikannya dengan memulai Windows jika sistem Anda adalah dual boot atau menyisipkan live CD Windows XP atau Windows 7, dan kemudian lakukan langkah-langkah berikut:

  1. Cari PROMAND PROMPT yang: cmdklik kanan -> Jalankan sebagai administrator.
  2. chkdsk /f/x D: (di mana D adalah huruf drive Anda).
  3. Tekan Y jika meminta Y / N
  4. Periksa drive Anda untuk file yang ingin Anda hapus. Mungkin itu dihapus atau Anda bisa menghapusnya.

100% berfungsi


2

Peringatan: Instruksi ini akan membutuhkan satu untuk digunakan debugfs. Mereka dapat menyebabkan kehilangan data.

Mereka disesuaikan dengan masalah asli dan mungkin atau mungkin tidak akurat untuk setiap pengunjung di masa depan di halaman ini. Kehilangan data apa pun mungkin tidak dapat diperbaiki atau bahkan diperburuk olehfsck .

Mungkin inode yang hilang. Silakan jalankan ls -liuntuk mendapatkan daftar nomor inode, maka Anda dapat mencoba untuk membuang inode yang direferensikan. Misalnya, jika Anda ls -literlihat seperti berikut:

rarkenin@ubuntu-alt-64-vbox-1:~$ ls -li
total 58672
4980758 -rwxr-xr-x 2 rarkenin rarkenin     4096 Sep 23 18:45 panorama.jpg
---SNIP---

maka nomor inode adalah 4980758 seperti yang ditunjukkan dalam daftar sebagai kolom pertama.

Anda kemudian dapat mencoba untuk membuang inode. Silakan baca seluruh posting sebelum melakukan sesuatu .

  1. Mulai debugfssebagai root:

    rarkenin@ubuntu-alt-64-vbox-1:~$ sudo debugfs
    [sudo] password for rarkenin: 
    debugfs 1.42 (29-Nov-2011)
    debugfs:  
    

    dan berikan perintah open /dev/sda1dengan perangkat blok yang benar untuk partisi Anda.

  2. Kemudian, berikan perintah untuk membuang inode yang nomornya sudah Anda peroleh sebelumnya:

    cat <4980758>
    

    menggunakan <dan >sekitar nomor inode.

  3. Jika itu membaca teks acak, tutup terminal dan buka lagi. Jalankan debugfslagi dan berikan openperintah lagi.

  4. Sekarang, Anda dapat mencoba menghapus file. Ini dapat mengakibatkan kerusakan sistem file yang parah.

    debugfs: rm [filename]
    
    debugfs: unlink [filename]
    
    debugfs: kill_file [filename]
    
    debugfs: kill_file <inode>
    

Perhatikan bahwa ini dapat dilakukan walaupun ternyata file tersebut tidak pernah memiliki inode. Coba perintah satu per satu, dalam urutan yang ditunjukkan di atas. Keluar dari debugfs dan periksa apakah file itu ada. Jika tidak, mulai lagi tetapi ikuti instruksi selanjutnya.

Buat cadangan jika memungkinkan!


Tidak berfungsi untuk sistem file NTFS saya
Suici Doga

@SuiciDoga debugfshanya ditujukan untuk tipe filesystem ext2, ext3, dan ext4.
Reinstate Monica - ζ--

0

tunjukkan terminalnya .... lakukan ll | grep panoramadan tunjukkan pada kami; tambahkan ke pertanyaan Anda ...

Saran saya adalah lakukan sebagai root rm -f panorama.jpg .

di man rm saya menemukan ini:

-f, --force
              ignore nonexistent files, never prompt

Mencoba itu berkali-kali, baik dengan -f dan --force Itu tidak membantu!
Valeriu

0

Pertama masuk sebagai root dengan sudo -s

Anda dapat mencoba melakukannya rm -v <file> dan melihat output verbose untuk melihat apa yang terjadi ketika mencoba menghapus file. Lihatlah opsi untuk perintah di bawah ini.

Jika gagal, Anda dapat menggunakan opsi gaya seperti yang dikatakan orang lain. Anda juga dapat mencoba menghapus seluruh direktori dengan memaksa penghapusan rekursif:rm -rfv **full directory address here**



Dari Panduan Perintah UNIX:

RINGKASAN

   rm [OPTION]... FILE...

DESKRIPSI

   rm removes each file. By default, it does not remove directories.

   If a file is unwritable, the standard input is a tty,  and  the  -f  or
   --force  option is not given, rm prompts the user for whether to remove
   the file.  If the response is not affirmative, the file is skipped.

PILIHAN

   Remove (unlink) the FILE(s).

   -f, --force
      ignore nonexistent files, never prompt

   -i, --interactive
      prompt before any removal

   --no-preserve-root do not treat '/' specially (the default)

   --preserve-root
      fail to operate recursively on '/'

   -r, -R, --recursive
      remove directories and their contents recursively

   -v, --verbose
      explain what is being done

   --help display this help and exit

   --version
      output version information and exit

   By default, rm does not remove directories.  Use the --recursive (-r or
   -R)  option to remove each listed directory, too, along with all of its
   contents.

   To remove a file whose name starts with a '-', for example '-foo',  use
   one of these commands:

      rm -- -foo

      rm ./-foo

   Note  that  if  you  use rm to remove a file, it is usually possible to
   recover the contents of that file.  If you want more assurance that the
   contents are truly unrecoverable, consider using shred.

0

Melihat screenshot Anda, saya melihat Anda memiliki grup ditetapkan sebagai root. Saya akan mencoba menggunakan chown dan melihat apakah itu memperbaiki masalah.

sudo chown -hR [username]:[username] /home/[username]

Mengganti [nama pengguna] dengan nama pengguna Anda.

Anda akan mendapatkan beberapa kesalahan.

contoh


mywebslave, saya melakukan apa yang Anda sarankan, menunjukkan 'Izin ditolak' yang sama seperti pada tangkapan layar Anda. Masih tidak bisa menghapus file sialan itu.
Valeriu

0

Karakter yang tidak dicetak dalam nama file dapat menyebabkan masalah seperti itu - seperti spasi. Coba opsi interaktif rm, dan ucapkan 'Y' ke file yang ingin Anda hapus "
rm -i" * pan * "Perhatikan penggunaan * s untuk mencocokkan karakter (bahkan non-cetak) apa pun.
Bisa jadi inode memiliki telah dihapus, tetapi bukan entri direktori. Coba ls -i untuk melihat inodes. fsck sistem file untuk memperbaiki masalah semacam ini.


Itu lucu! Inilah hasilnya: pastebin.com/kjCyX0yB
Valeriu


0

Seperti yang dikatakan ubfan1, karakter yang tidak dicetak dalam nama file dapat menyebabkan masalah seperti itu.

  1. sentuh
  2. rm

bekerja untuk saya sejak 'sentuh' menimpa file yang rusak.



0

Linux Mint 18.3 File saya yang tidak ada adalah ¨filename.pdf.crdownload¨ Muncul di desktop saya sebagai sebuah paket, yaitu file zip di Windows berbicara. Untuk itu saya lakukan klik kanan, Properties, Open with, yang menunjukkan nol aplikasi, jadi saya mengubahnya menjadi Open With ¨Archive Manager¨. Segera file tersebut menghilang dari desktop saya. kb

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.