No se puede eliminar el archivo: no existe tal archivo o directorio

0

Problema:

Tengo un archivo en una partición NTFS que no puedo eliminar ni mover. Puedo ver el archivo. Esto también me impide leer ese directorio mientras estoy dentro de Windows. Me sale el error; "El archivo o directorio está dañado e ilegible" al intentar acceder a este directorio dentro de 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

Si trato de editar el archivo con vimveo ".piw?PageNum=0" [Permission Denied]en la parte inferior izquierda.

Si intento modificar los permisos, aparece el siguiente error:

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

Más información:

Esta es una segunda unidad que contiene una partición. La partición se creó dentro de Windows 10. Esta partición no contiene mi Windows C Drive: esta unidad está completamente separada de mi raíz Linux y de otras particiones de Windows.

[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

Aún más información:

Mientras estoy dentro de Windows no puedo cambiar al vardirectorio. Recibo el mensaje: The file or directory is corrupted and unreadable.puedo ver y modificar en cualquier otro lugar de la unidad.

El archivo fue creado inicialmente, probablemente, con un wgetcomando fallido .

El archivo está ahí y puedo cathacerlo STDOUT. Los contenidos son HTML de una página web de patentes de EE. UU.

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

Aquí está la información del sistema operativo y 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

Nota final:

También intenté ejecutar desmontando el disco y ejecutándolo ntfsfix. Esto no ayudó.

¡Gracias!


Actualizar

Me chmod 777'd la vardir ... Entonces corrió chown -R root:root var, recibió este error: chown: changing ownership of 'var/.piw?PageNum=0': Input/output error... entonces ... buscando en el directorio:

[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 ... creo que la unidad es solo jacked<- término técnico


Segunda actualización

Después de ejecutar el chownen el directorio mencionado anteriormente, reinicié en Windows. Durante la carga de Windows, declaró que era checking the drive for consistency(o algo de ese idioma) Anywho ... funciona ahora. El archivo se ha ido y puedo leerlo en Windows.

Información adicional que puede ser útil para otros:

Tengo dos unidades con los mismos archivos; una unidad de respaldo interna y una unidad de respaldo externa. Ambos son NTFS y varno se pudo acceder a ambos directorios en Windows. Después de resolver el problema con la unidad interna, descubrí que al eliminar los archivos con nombre "tontos" también se resolvió el problema en la unidad externa. Ejemplo:

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

Por alguna razón, tal vez porque no ejecuté ntfsfix, en la unidad externa pude eliminar esos dos "archivos problemáticos" y luego leer ese directorio en Windows.

¡Gracias a todos!

varlogtim
fuente

Respuestas:

0

Esto parece haber sido una combinación de un nombre de archivo divertido:

.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

... y luego un ntfsfix...

La solución eventual fue perder el tiempo con los permisos y la propiedad del archivo, luego reiniciar en Windows (que verificó la coherencia del disco).

varlogtim
fuente