ファイルが存在しないため削除できない、ファイルシステムの破損

ファイルが存在しないため削除できない、ファイルシステムの破損

まあ...これはOS X(hfs +)に関するものですが、最終的にはUnixです。 :血

ファイルシステムエラーのためシステムを起動できません...

fsck.hfsplusが失敗する理由は...

    ...
    ** Checking Catalog file.
       Illegal name
            illegal name is 0xB1 03 0D 03 BB 03 BF 03 B3 03 BF 03 2F 00 C3 03 B5 03 BB 03 2E 00 33 00 37 00 2E 00 74 00 69 00 66 00
            replacement name is 0xB1 03 01 03 BB 03 BF 03 B3 03 BF 03 2F 00 C3 03 B5 03 BB 03 2E 00 33 00 37 00 2E 00 74 00 69 00 66 00
    ....
    ** Repairing volume.
            replacement name already exists
            duplicate name is 0xB1 03 01 03 BB 03 BF 03 B3 03 BF 03 2F 00 C3 03 B5 03 BB 03 2E 00 33 00 37 00 2E 00 74 00 69 00 66 00
            FixIllegalNames - repair failed for type 0x23B 571
    ** The volume Macintosh HD could not be repaired.
    ...

find -mtimeを使用して、実際には存在しない問題のあるファイルを見つけました...

    # ls -lhai
    ls: cannot access USB 프린터 공유: No such file or directory
    ls: cannot access 시동 디스크: No such file or directory
    ls: cannot access 애플 메뉴 선택사항: No such file or directory
    ls: cannot access 인터넷: No such file or directory
    ls: cannot access 파일 관리자: No such file or directory
    total 0
    152704 drwxr-xr-x 1 root root  7 Apr 23 16:49 .
    152677 drwxr-xr-x 1 root root 18 Apr 23 14:55 ..
         ? -????????? ? ?    ?     ?            ? 애플 메뉴 선택사항
         ? -????????? ? ?    ?     ?            ? 시동 디스크
         ? -????????? ? ?    ?     ?            ? 파일 관리자
         ? -????????? ? ?    ?     ?            ? 인터넷
         ? -????????? ? ?    ?     ?            ? USB 프린터 공유

rm -r には結果やエラーはまったくありません。 「ディレクトリが空ではないため」親ディレクトリのrmdirとrm -rfは機能しません。これらのファイルをタッチしてみてください。

    # ls -lhai
    ls: cannot access USB 프린터 공유: No such file or directory
    ls: cannot access 시동 디스크: No such file or directory
    ls: cannot access 애플 메뉴 선택사항: No such file or directory
    ls: cannot access 인터넷: No such file or directory
    ls: cannot access 파일 관리자: No such file or directory
    total 0
    152704 drwxr-xr-x 1 root root  7 Apr 23 16:52 .
    152677 drwxr-xr-x 1 root root 18 Apr 23 14:55 ..
         ? -????????? ? ?    ?     ?            ? 애플 메뉴 선택사항
         ? -????????? ? ?    ?     ?            ? 시동 디스크
         ? -????????? ? ?    ?     ?            ? 파일 관리자
         ? -????????? ? ?    ?     ?            ? 인터넷
         ? -????????? ? ?    ?     ?            ? USB 프린터 공유
    # touch USB\ 프린터\ 공유 
    # ls -lhai
    ls: cannot access 시동 디스크: No such file or directory
    ls: cannot access 애플 메뉴 선택사항: No such file or directory
    ls: cannot access 인터넷: No such file or directory
    ls: cannot access 파일 관리자: No such file or directory
    total 0
     152704 drwxr-xr-x 1 root root  8 Apr 23 17:09 .
     152677 drwxr-xr-x 1 root root 18 Apr 23 14:55 ..
          ? -????????? ? ?    ?     ?            ? 애플 메뉴 선택사항
          ? -????????? ? ?    ?     ?            ? 시동 디스크
          ? -????????? ? ?    ?     ?            ? 파일 관리자
          ? -????????? ? ?    ?     ?            ? 인터넷
    4641964 -rw-r--r-- 1 root root  0 Apr 23 17:09 USB 프린터 공유
    4641964 -rw-r--r-- 1 root root  0 Apr 23 17:09 USB 프린터 공유

同じinodeを持つダブルアイテム...

    # rm -f U*

でも元の状況も思いますね

    # ls -lhai
    ls: cannot access USB 프린터 공유: No such file or directory
    ls: cannot access 시동 디스크: No such file or directory
    ls: cannot access 애플 메뉴 선택사항: No such file or directory
    ls: cannot access 인터넷: No such file or directory
    ls: cannot access 파일 관리자: No such file or directory
    total 0
    152704 drwxr-xr-x 1 root root  7 Apr 23 16:52 .
    152677 drwxr-xr-x 1 root root 18 Apr 23 14:55 ..
         ? -????????? ? ?    ?     ?            ? 애플 메뉴 선택사항
         ? -????????? ? ?    ?     ?            ? 시동 디스크
         ? -????????? ? ?    ?     ?            ? 파일 관리자
         ? -????????? ? ?    ?     ?            ? 인터넷
         ? -????????? ? ?    ?     ?            ? USB 프린터 공유

私が試してみるアイデアはありますか?

答え1

AppleのHFS + fsckでバグを見つけました(または「いつか修正します...」)。最初の試みでファイルが利用できないことを確認したら、ファイルを別の名前に変更する必要があるようです。これにより、いくつかのオプションが残ります。

まず、現在FSで読み取ることができるすべてのデータをバックアップします。理想的には画像を撮って(ビット単位でコピー)処理します。

腐敗はいつもそのようなことが起こるかどうか疑問に思います。いろいろな場所から来ることができますが、最も懸念されるのは悪い記憶です。私はコンピュータでメモリテストを実行します。

印刷されるファイル名はUTF16-LEのように見え、名前をα̍λογο/σελ.37.tif変更しようとしています。άλογο/σελ.37.tif理由は不明です。 Google翻訳では、それがギリシャ語で意味があると言うので、それは正しいようです。それ可能(または)そのうちの1つが機能しますrmmvコマンドラインに提供されたファイル名を16進デコードしてみたい場合があります。xxd -p -rこれまでこれを行いましたが、Mac OS Xでこれを実行できるかどうかはわかりません。この奇妙なファイル名が私の端末、私のWebブラウザ、Stack Exchange、あなたのブラウザを介してコピーして貼り付け、最後に端末にコピーして貼り付けることができるかどうか誰が知っていますか?

/また、ファイル名の;は見えるものとは異なり、実際のスラッシュであることもわかりました。 HFS+がこれを許可するかどうかはわかりません。

とにかく、他のすべての方法がうまくいかない場合は、次の3つを試すことができます。

  1. ファイルシステムをフォーマットしてバックアップから復元します。
  2. HFS + fsckはオープンソースなので、ソースコードをダウンロードして修正できます。
  3. HFS+の仕様を見つけてください(文書化されていることを願っています。HFSもあり、AppleのドキュメントにもHFS+があると思います)。ファイルシステムエディタ(見つかった場合)を使用するか、最悪の場合は16進エディタを使用して問題を解決するか、少なくともファイルを削除します。

最も簡単な編集は、ファイル名の数バイトを変更することです。たとえば、.tif最後から.bad(2E 00 74 00 69 00 66 00)を(2E 00 62 00 61 00 64 00)に簡単に変更できます.その後、fsckを再実行すると一意の名前が生成されます。

関連情報