Không thể xóa tệp - không có tệp hoặc thư mục như vậy


12

Tôi đã xóa nó một lần, nhưng nó vẫn còn đó :)

Làm thế nào tôi có thể xóa một tập tin ở đó nhưng hệ thống nói là không có?

Tab quyền - đã thử thay đổi nó, nhưng nó sẽ tự động thiết lập lại Đây là những gì xảy ra khi tôi nhấp vào "Xóa"


Đây là một cảnh cáo. Nó nói gì nếu bạn chọn "Xóa"?
Marty Fried

Nhấp chuột phải vào tệp, chọn Thuộc tính, mở tab Quyền. Hãy chụp ảnh màn hình và đăng nó ở đây.
Eric Carvalho

Bạn có thể di chuyển các tập tin khác vào thùng rác? Là tập tin bạn đang xóa trên cùng một hệ thống tập tin với hệ thống tập tin nhà của bạn? Có thư mục ~ / .Trash / tồn tại?
John S Gruber

John, tôi có thể di chuyển các tập tin khác vào thùng rác một cách bình thường, chỉ điều này mang lại cho tôi rắc rối.
Valeriu

Bạn đã cố gắng để xóa nó từ thiết bị đầu cuối? sudo rm panorama.jpg
David M. Sousa

Câu trả lời:


2

Tôi đã từng gặp vấn đề tương tự. Đó là một vấn đề trong các mục chỉ mục của phân vùng. Tôi đã giải quyết nó bằng cách khởi động Windows nếu hệ thống của bạn khởi động kép hoặc chèn CD trực tiếp của Windows XP hoặc Windows 7, sau đó thực hiện các bước sau:

  1. Tìm kiếm KHUYẾN MÃI rằng: cmdnhấp chuột phải -> Chạy với tư cách quản trị viên.
  2. chkdsk /f/x D: (trong đó D là ký tự ổ đĩa của bạn).
  3. Nhấn Y nếu nó yêu cầu Y / N
  4. Kiểm tra ổ đĩa của bạn cho các tập tin mà bạn muốn xóa. Có lẽ nó bị xóa hoặc bạn có thể xóa nó.

Làm việc 100%


2

Cảnh báo: Những hướng dẫn này sẽ yêu cầu một để sử dụng debugfs. Chúng có thể gây mất dữ liệu.

Chúng được điều chỉnh theo vấn đề ban đầu và có thể hoặc không thể chính xác cho bất kỳ khách truy cập nào trong tương lai trên trang này. Bất kỳ mất dữ liệu có thể không thể khắc phục hoặc thậm chí trầm trọng hơn fsck.

Nó có thể là một inode bị mất. Vui lòng chạy ls -liđể có được danh sách các số inode, sau đó bạn có thể thử kết xuất inode được tham chiếu. Ví dụ: nếu bạn ls -litrông như sau:

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---

sau đó số inode là 4980758 như được hiển thị trong danh sách dưới dạng cột đầu tiên.

Sau đó bạn có thể thử đổ nút inode. Xin vui lòng đọc toàn bộ bài viết trước khi làm bất cứ điều gì .

  1. Bắt đầu debugfsvới quyền root:

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

    và đưa ra lệnh open /dev/sda1với thiết bị khối chính xác cho phân vùng của bạn.

  2. Sau đó, đưa ra lệnh để kết xuất inode có số bạn đã nhận trước đó:

    cat <4980758>
    

    sử dụng <>xung quanh số inode.

  3. Nếu nó đọc một số văn bản ngẫu nhiên, đóng thiết bị đầu cuối và mở lại. Chạy debugfslại và ra openlệnh một lần nữa.

  4. Bây giờ, bạn có thể cố gắng để xóa các tập tin. Điều này có thể dẫn đến tham nhũng hệ thống tập tin nghiêm trọng.

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

Lưu ý rằng điều này có thể được thực hiện ngay cả khi nó chỉ ra tệp không bao giờ có inode. Hãy thử từng lệnh một, theo thứ tự hiển thị ở trên. Thoát debugfs và kiểm tra nếu tập tin tồn tại. Nếu không, bắt đầu lại nhưng làm theo hướng dẫn tiếp theo.

Tạo một bản sao lưu nếu có thể!


Không hoạt động cho hệ thống tập tin NTFS của tôi
Suici Doga

@SuiciDoga debugfschỉ dành cho các loại hệ thống tập tin ext2, ext3 và ext4.
Phục hồi Monica - ζ--

2

Tôi biết điều này đã cũ, nhưng tôi gặp vấn đề tương tự như của bạn, chỉ với một thư mục, không phải với một tập tin. Không có phương pháp nào được đề xuất ở đây làm việc.

Tôi quản lý để giải quyết vấn đề bằng cách tạo một thư mục ở cùng vị trí và có cùng tên với thư mục tôi không thể xóa. Thư mục đã được tạo chính xác và nó "thay thế" thư mục không tồn tại. Sau đó, tôi chỉ cần xóa thư mục mới và vấn đề đã biến mất. Đơn giản như vậy.


giải pháp dễ nhất ở đây nếu điều này thực sự thoát khỏi toàn bộ vấn đề.
đèn

0

chỉ cho chúng tôi thiết bị đầu cuối .... làm một ll | grep panoramavà cho chúng tôi thấy rằng; thêm nó vào câu hỏi của bạn ...

Đề nghị của tôi là làm root rm -f panorama.jpg .

Trong người đàn ông của rm tôi tìm thấy điều này:

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

Đã thử rằng nhiều lần, cả với -f và - Force Nó không giúp được gì!
Valeriu

0

Đăng nhập lần đầu với quyền root sudo -s

Bạn có thể thử thực hiện rm -v <file>và xem đầu ra dài dòng để xem những gì đang xảy ra trong khi nó đang cố gắng xóa tệp. Kiểm tra các tùy chọn cho lệnh dưới đây.

Nếu thất bại, bạn có thể sử dụng tùy chọn bắt buộc như mọi người khác đã nói. Bạn cũng có thể thử xóa toàn bộ thư mục bằng cách buộc loại bỏ đệ quy:rm -rfv **full directory address here**



Từ Hướng dẫn lệnh UNIX:

TÓM TẮC

   rm [OPTION]... FILE...

SỰ MIÊU TẢ

   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.

LỰA CHỌN

   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

Nhìn vào ảnh chụp màn hình của bạn, tôi thấy bạn có nhóm được đặt thành root. Tôi sẽ thử sử dụng chown và xem nó có khắc phục được sự cố không.

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

Thay thế [tên người dùng] bằng tên người dùng của bạn.

Bạn sẽ nhận được một vài lỗi.

thí dụ


mywebslave, tôi đã làm những gì bạn đề xuất, cho tôi thấy cùng một 'Quyền bị từ chối' như trong ảnh chụp màn hình của bạn. Vẫn không thể xóa tập tin chết tiệt.
Valeriu

0

Các ký tự không in trong tên tệp có thể gây ra các vấn đề như vậy - như khoảng trắng. Hãy thử các tùy chọn tương tác của rm, và nói 'Y' để các tập tin bạn muốn xóa"
rm -i '* pan *' Lưu ý việc sử dụng * s để phù hợp với bất kỳ (kể cả phi printint) ký tự.
Có thể là các inode có đã bị xóa, nhưng không phải là mục nhập thư mục. Hãy thử ls -i để xem các nút. fsck hệ thống tệp để khắc phục loại sự cố này.


Thật là buồn cười! Đây là đầu ra: pastebin.com/kjCyX0yB
Valeriu


0

Như ubfan1 đã nói, các ký tự không in trong tên tệp có thể gây ra các vấn đề như vậy.

  1. chạm
  2. rm

làm việc cho tôi vì 'chạm' đã ghi đè tệp bị hỏng.



0

Linux Mint 18.3 Tệp không tồn tại của tôi là filename.pdf.crdoad¨ Nó xuất hiện trên máy tính để bàn của tôi dưới dạng gói, tức là tệp zip trong Windows speak. Tôi đã nhấp chuột phải, Properties, Open with, không hiển thị ứng dụng nào, vì vậy tôi đã đổi nó thành Open With ¨Archive Manager¨. Ngay lập tức tập tin biến mất khỏi máy tính để bàn của tôi. kb

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.