問題:

問題:

問題:

NTFS パーティションに、削除または移動できないファイルがあります。ファイルを表示することはできます。このため、Windows 内でそのディレクトリを読み取ることもできません。Windows 内でこのディレクトリにアクセスしようとすると、「ファイルまたはディレクトリが壊れているため、読み取れません」というエラーが表示されます。

[root@ziggurat var]# ls -al .piw\?PageNum\=0 
-rw-r--r-- 0 ttucker root 2016 Jan 28 08:56 '.piw?PageNum=0'

[root@ziggurat var]# rm -i .p*
rm: remove regular file '.piw?PageNum=0'? y
rm: cannot remove '.piw?PageNum=0': No such file or directory

[root@ziggurat var]# mv .piw\?PageNum\=0 derp
mv: cannot move '.piw?PageNum=0' to 'derp': No such file or directory

ファイルを編集しようとすると、左下にvim表示されます。".piw?PageNum=0" [Permission Denied]

権限を変更しようとすると、次のエラーが発生します。

[root@ziggurat var]# chmod 777 .piw\?PageNum\=0 
chmod: cannot access '.piw?PageNum=0': Input/output error

詳しくは:

これは、1 つのパーティションを含む 2 番目のドライブです。パーティションは Windows 10 内で作成されました。このパーティションには私のものは含まれていません。Windows C Driveこのドライブは、Linux ルート パーティションおよび Windows oot パーティションとは完全に分離されています。

[root@ziggurat var]# pwd
/mnt/storage/ttucker/var

[root@ziggurat var]# df -h /mnt/storage/
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       932G  197G  736G  22% /mnt/storage

[root@ziggurat var]# fdisk -l /dev/sda
Disk /dev/sda: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 91985B34-E4D8-4F7B-ABF4-7F2E27482077

Device     Start        End    Sectors   Size Type
/dev/sda1   2048 1953523711 1953521664 931.5G Microsoft basic data

さらに詳しい情報:

Windows 内では、ディレクトリに切り替えることができませんvar。次のメッセージが表示されます:The file or directory is corrupted and unreadable.ドライブ内の他の場所では、表示および変更できます。

ファイルは、おそらく、最初に、誤ったwgetコマンドで作成されました。

ファイルはそこにあり、私はcatそれをできますSTDOUT。内容は米国特許ウェブページの HTML です。

[root@ziggurat var]# cat .piw\?PageNum\=0 
<!-- PageNum=0  -->
<!-- NumPages=0 -->
<HTML>
  <HEAD><TITLE>Patent Images</TITLE></HEAD> 
  <BODY TOPMARGIN="0" leftmargin="0" MARGINWIDTH="0" MARGINHEIGHT="0" >
... clipped for brevity ...
  </BODY>
</HTML>

OS と ntfs-3g の情報は次のとおりです。

[root@ziggurat var]# pacman -Ss ntfs
extra/ntfs-3g 2016.2.22-1 [installed]
    NTFS filesystem driver and utilities

[root@ziggurat var]# uname -a
Linux ziggurat 4.9.6-1-ARCH #1 SMP PREEMPT Thu Jan 26 09:22:26 CET 2017 x86_64 GNU/Linux

最後に:

また、ドライブをアンマウントして実行してみましたが、ntfsfix効果はありませんでした。

ありがとう!


アップデート

私はディレクトリchmod 777を持っていましたvar...その後、実行したところchown -R root:root var、次のエラーが発生しました: chown: changing ownership of 'var/.piw?PageNum=0': Input/output error...その後...ディレクトリ内を検索しました:

[root@ziggurat var]# ls -ltra
ls: cannot access '.piw?PageNum=0': Input/output error
total 3116333
-????????? ? ?       ?             ?            ? '.piw?PageNum=0'
-rw-r--r-- 1 ttucker root     250910 Jan 28 08:56  0.pdf
....

うーん...ドライブはただjacked<--専門用語だと思う


2回目の更新:

chown上記のディレクトリで を実行した後、Windows を再起動しました。Windows のロード中にchecking the drive for consistency、(またはその言語の何か) と表示されました。とにかく... 今は動作します。ファイルは消え、Windows で読み取ることができます。

他の人に役立つ可能性のある追加情報:

同じファイルが入っているドライブが 2 つあります。内部バックアップ ドライブと外部バックアップ ドライブです。どちらも NTFS で、varWindows では両方のディレクトリにアクセスできませんでした。内部ドライブの問題を解決した後、"おかしな" 名前のファイルを削除すると、外部ドライブの問題も解決することがわかりました。例:

-rwxrwxrwx 1 root root       2016 Dec 31 22:31 '.piw?PageNum=0'
-rwxrwxrwx 1 root root       8379 Dec 31 22:32 '.piw?PageNum=0&docid=01111111&IDKey=DE3F91CB19BB%0D%0A&HomeUrl=http%3A%2F%2Fpatft.uspto.gov%2Fnetacgi%2Fnph-Parser%3FSect1%3DPTO1%2526Sect2%3DHITOFF%2526d%3DPALL%2526p%3D1%2526u%3D%25252Fnetahtml%25252FPTO%25252Fsrchnum.htm%2526r%3D1%25'

何らかの理由で、おそらく外付けドライブで を実行しなかったためntfsfix、これらの 2 つの「問題のあるファイル」を削除して、Windows でそのディレクトリを読み取ることができました。

皆さんありがとう!

答え1

これは、面白いファイル名の組み合わせだったようです:

.piw?PageNum=0&docid=01111111&IDKey=DE3F91CB19BB%0D%0A&HomeUrl=http%3A%2F%2Fpatft.uspto.gov%2Fnetacgi%2Fnph-Parser%3FSect1%3DPTO1%2526Sect2%3DHITOFF%2526d%3DPALL%2526p%3D1%2526u%3D%25252Fnetahtml%25252FPTO%25252Fsrchnum.htm%2526r%3D1%25

...そしてその後ntfsfix...

最終的な解決策は、ファイルの権限と所有権をいじってから、Windows を再起動することです (これにより、ディスクの整合性がチェックされます)。

関連情報