Pregunta La carga de ciertos archivos y carpetas a través de SFTP hace que los nombres sean mayúsculas


Tengo un pequeño conjunto de archivos y carpetas en un directorio en mi computadora que están causando problemas. Cuando los cargo en mi servidor web (Dreamhost) a través de SFTP (usando Transmitir en OSX, una GUI), la mayoría de los archivos y carpetas se transfieren como se esperaba. Pero un par de ellos se convierten a mayúsculas en el host web. Ejemplo: slider.js se convierte en SLIDER.JS

Permisos
644 slider.js en mi máquina local
644 SLIDER.JS en el host web

No estoy seguro de por dónde empezar para depurar este problema, así que si necesita más información, pregunte.

Actualización 30/11/11 5pm EST
- Pude resolver el problema simplemente cambiando el nombre del archivo slider.js a slider2.js y luego de regreso a slider.js. Todavía estoy interesado en descubrir qué estaba causando este problema.
- Utilizando sftp en la línea de comando transfirió los archivos problemáticos sin mayúsculas.
- Tengo un MAC con OSX 10.7.2. No se conocen demasiados detalles sobre el sistema de archivos pero la información está disponible en la [revisión de Ars Technica de OSX 10.7] [1].

En mi investigación adicional encontré que ftp reconoce un case mando. Los detalles siguen:

Alternar mapeo de casos de nombre de archivo de computadora remota durante mget   comandos. Cuando el caso está activado (el valor predeterminado es desactivado), computadora remota   nombres de archivo con todas las letras en mayúsculas están escritos en el   directorio local con las letras asignadas a minúsculas.

¿Podría ser que la [Transmit ftp app] [1] está utilizando incorrectamente este comando? Esto es especulación.


5


origen


¿Hay un patrón? - soandos
¿Qué sistema de archivos está usando localmente para almacenar estos archivos? - Daniel Beck♦
¿Pasa lo mismo cuando usas la línea de comando? sftp ¿programa? sftp user@host, entonces put /path/to/local/slider.js /remote/path/for/uploaded/slider.js, entonces quit. - Daniel Beck♦
Si habilita SSH (Inicio de sesión remoto) en el panel de preferencias Compartir en Preferencias del Sistema y se conecta a localhost usando su nombre de cuenta y contraseña, y cargue de su sistema local a su sistema local, ¿sucede lo mismo? - Daniel Beck♦
Gracias por los comentarios hasta ahora. He agregado algo de información a la pregunta original. - Lokesh Dhakar


Respuestas:


Supongo que su sistema de archivos es HFS + (dado que está utilizando Transmitir en OSX). HFS + tiene 2 sabores, uno es sensible a mayúsculas y el otro no distingue entre mayúsculas y minúsculas (https://apple.stackexchange.com/questions/71357/how-to-check-if-my-hd-is-case-sensitive-or-not) Sin embargo, ambos son preservadores de casos (http://en.wikipedia.org/wiki/Case_preservation) El sabor predeterminado de HFS + no distingue entre mayúsculas y minúsculas. Puedes cambiarlo, pero podría romper algunas aplicaciones, así que no lo recomiendo.

Lo que eso significa en su situación, es que el archivo se crea como "SLIDER.JS" en su sistema de archivos. Puede abrirlo como "slider.js", "Slider.js" y cualquier otra variación de su caso. Sin embargo, cuando lo envía usando su aplicación, es probable que use la versión canónica (conservación de mayúsculas y minúsculas).

Como mencionaste, cambiarle el nombre (supongo que desde el Finder), a "slider2.js", y de vuelta a "slider.js", asegura que el caso preservado ahora está todo en minúsculas.


1