Estoy usando wget para reflejar algunos archivos de un servidor a otro. Estoy usando el siguiente comando:
wget -x -N -i http://domain.com/filelist.txt
-x = Porque quiero mantener la estructura del directorio
-N = Marca de tiempo para obtener solo archivos nuevos
-i = Para descargar una lista de archivos de un archivo externo, uno en cada línea.
Pequeños archivos como uno que estoy probando que es una gran descarga de 326 kb muy bien.
Pero otro que es de 5 GB solo descarga 203 MB y luego se detiene (siempre es 203 MB más o menos unos kilobytes)
El mensaje de error que se muestra es:
No se puede escribir en âpath / to / file.zipâ
(No estoy seguro de por qué hay caracteres extraños antes y después. Estoy usando Putty en Windows y esto puede o no tener algo que ver con eso, así que los dejé. Supongo que no).
La respuesta completa es la siguiente: (he reemplazado rutas, ip y nombre de dominio)
--2012-08-31 12: 41: 19-- http://domain.com/filelist.txt Resolviendo domain.com ... MY_IP Conectando a domain.com | MY_IP |: 80 ... conectado. Solicitud HTTP enviada, esperando respuesta ... 200 OK Longitud: 161 [texto / plano] Archivo del servidor no más reciente que el archivo local âdomain.com / filelist.txtâ
--2012-08-31 12: 41: 19-- http://domain.com/path/to/file.zip Conectando a domain.com | MY_IP |: 80 ... conectado. Solicitud HTTP enviada, esperando respuesta ... 200 OK Longitud: 5502192869 (5.1G) [aplicación / zip] Los tamaños no coinciden (local 213004288) - recuperación.
--2012-08-31 12: 41: 19-- http://domain.com/path/to/file.zip Conectando a domain.com | MY_IP |: 80 ... conectado. Solicitud HTTP enviada, esperando respuesta ... 200 OK Longitud: 5502192869 (5.1G) [application / zip] Guardando en: âdomain.com / path / to / file.zipâ
3% [====>
] 213,003,412 8.74M / s en 24sNo se puede escribir en âdomain.com / path / to / file.zipâ
No parece hacer ninguna diferencia si el directorio de ruta ya existe o se crea sobre la marcha.
¿Alguien tiene alguna idea de por qué se detiene y cómo puedo solucionarlo?
Cualquier ayuda con ser más apreciada.
EDITAR: También he intentado simplemente hacer un wget, sin entrada de archivo y cambiar el nombre del archivo. Esta vez se descarga un poco más de 3 gb y luego da el mismo error de escritura.
wget -x -N http://domain.com/path/to/file.zip -O files/bigfile.zip
fuente
-O
opción, así quewget -O test.zip http://link
Respuestas:
Obtendrá este error si no tiene espacio en disco. ejecute df y verá si el directorio en el que está escribiendo está al 100%
fuente
Es un problema con una URL larga. Yo también lo enfrenté. Entonces, usé bit.ly y acorté la url. ¡Funciona de maravilla!
fuente
wget
proceso prospectivo .wget http://dltr.org/skin/frontend/lowes/default/css/custom.css?001
Acabo de agregar una
-
altar
comando después de la tubería después de wgetyo tenía
luego lo cambió a
fuente
Si comienza a guardar un archivo grande y escribe 203 MB, sospecharía que tiene un sistema de archivos completo en el extremo receptor o que la conexión de red se está agotando.
Puede usar df -h en el servidor receptor para ver si el sistema de archivos está lleno
Vea esta respuesta para problemas de tiempo de espera con wget:
/programming/2291524/does-wget-timeout
Además, vuelva a intentar la transferencia que falló y omita la opción de marca de tiempo -N
Además, ejecute ulimit -a para ver si hay un límite de tamaño de archivo en el servidor receptor
fuente
Finalmente lo descubrí y fue un problema espacial. Es un problema con 1and1 Cloud Server, más sobre esto aquí: http://www.mojowill.com/geek/1and1-dynamic-cloud-server-disk-allocation/
fuente
Estaba haciendo algo similar a:
Estaba recibiendo
En mi archivo filelist.txt equivalente tenía una URL como:
Entonces, para depurar, intenté crear el mismo archivo que wget estaba tratando de crear:
¡Viola! Parece que ese
?
fue el problema, pero una buena práctica sería eliminar todos los caracteres especiales de los nombres de archivo, imagine lo&
que hará si no se escapa.fuente