Ausgabe:
Ich habe eine Datei auf einer NTFS-Partition, die ich weder löschen noch verschieben kann. Ich kann die Datei anzeigen. Dies verhindert jedoch auch, dass ich dieses Verzeichnis in Windows lese. Wenn ich versuche, in Windows auf dieses Verzeichnis zuzugreifen, erhalte ich die Fehlermeldung: „Die Datei oder das Verzeichnis ist beschädigt und nicht lesbar.“
[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
Wenn ich versuche die Datei zu bearbeiten, vim
sehe ich ".piw?PageNum=0" [Permission Denied]
unten links.
Wenn ich versuche, die Berechtigungen zu ändern, erhalte ich die folgende Fehlermeldung:
[root@ziggurat var]# chmod 777 .piw\?PageNum\=0
chmod: cannot access '.piw?PageNum=0': Input/output error
Mehr Informationen:
Dies ist ein zweites Laufwerk, das eine Partition enthält. Die Partition wurde in Windows 10 erstellt. Diese Partition enthält nicht meine Windows C Drive
- dieses Laufwerk ist vollständig von meinen Linux-Root- und Windows-OOT-Partitionen getrennt.
[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
Noch mehr Informationen:
Während ich in Windows bin, kann ich nicht in das Verzeichnis wechseln var
. Ich erhalte die Meldung: The file or directory is corrupted and unreadable.
Ich kann alle anderen Verzeichnisse auf dem Laufwerk anzeigen und ändern.
Die Datei wurde ursprünglich wahrscheinlich mit einem verpfuschten wget
Befehl erstellt.
Die Datei ist da und ich kann cat
sie auch STDOUT
. Der Inhalt ist HTML von einer US-Patent-Webseite.
[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>
Hier sind die Betriebssystem- und NTFS-3G-Informationen:
[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
Schlussbemerkung:
Ich habe auch versucht, umount's auf dem Laufwerk auszuführen und ntfsfix
darauf zu laufen. Das hat nicht geholfen.
Danke!
Aktualisieren
Ich chmod 777
habe das var
Verzeichnis ... ausgeführt chown -R root:root var
und diesen Fehler erhalten: chown: changing ownership of 'var/.piw?PageNum=0': Input/output error
... dann ... im Verzeichnis nachgesehen:
[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
....
Ugh... ich glaube, das Laufwerk ist einfach jacked
<-- Fachbegriff
Zweites Update:
Nachdem ich das chown
in dem oben genannten Verzeichnis ausgeführt hatte, startete ich Windows neu. Während des Ladens von Windows wurde angezeigt, dass es checking the drive for consistency
(oder etwas in dieser Sprache) war. Wie auch immer ... jetzt funktioniert es. Die Datei ist weg und ich kann sie in Windows lesen.
Zusätzliche Informationen, die für andere hilfreich sein könnten:
Ich habe zwei Laufwerke mit denselben Dateien darauf: ein internes Backup-Laufwerk und ein externes Backup-Laufwerk. Beide sind NTFS und auf beide var
Verzeichnisse konnte in Windows nicht zugegriffen werden. Nachdem ich das Problem mit dem internen Laufwerk gelöst hatte, stellte ich fest, dass das Löschen der „doof“ benannten Dateien das Problem auch auf dem externen Laufwerk löste. Beispiel:
-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'
Aus irgendeinem Grund, vielleicht weil ich es nicht ausgeführt habe ntfsfix
, konnte ich auf dem externen Laufwerk einfach diese beiden „Problemdateien“ löschen und dann das Verzeichnis in Windows lesen.
Danke an alle!
Antwort1
Dies scheint eine Kombination aus einem lustigen Dateinamen gewesen zu sein:
.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
... und dann ein ntfsfix
...
Die endgültige Lösung bestand darin, mit den Dateiberechtigungen und -eigentümern herumzuspielen und dann Windows neu zu starten (wobei die Festplatte auf Konsistenz geprüft wurde).