FTP con comandos de Ms-Dos (1)
Introducción al ftp
El protocolo
ftp es el que utilizamos para descargar archivos de la red, o subirlos desde
nuestro ordenador.
Hoy en dia
todos hemos descargado algun archivo usando las utilidades incorporadas al
propio navegador. Basta sustituir la url http:// ... por el protocolo
correcto: ftp:// .... Puedes incluso acceder a sitios de
ftp no anónimo escribiendo en tu navegador ftp://nombreusuario:contraseña@direccionftp.
En este
manual, sin embargo, vamos a echar un vistazo a la forma de trabajar con ftp en
modo consola, con comandos de texto.
¿que para qué? pues para saber como funciona, claro. Y porque necesitaremos
probablemente este conocimiento si algun dia necesitamos ‘ftpear’ en serio.
¿que necesito?
Para esta
primera toma de contacto con el ftp, usaremos lo que la mayoria tenemos a mano:
el programa ftp que viene incluido en las distribuciones de windows. Ya sabes.
Inicias una sesión DOS (inicio, programas, MS-DOS) y a teclear …
primeros pasos
Para iniciar
una sesión ftp necesitamos establecer una conexión con el ordenador servidor,
que es el que maneja el espacio donde estan los archivos que queremos bajar (o
a donde queremos subir los nuestros).
Esta conexión tendrá lugar a través del puerto 21 de nuestro ordenador. Tenemos
dos formas de iniciar la conexión:
a)
escribimos en nuestra ventana de DOS ftp nombredelservidor, por
ejemplo, por que no, ftp
ftp.microsoft.com.
Observa que no es que escribamos ftp dos veces, sino que los servidores
dedicados a transmisión de ficheros se suelen identificar con ftp.nombreservidor.extensión, al igual que por ejemplo los que
albergan paginas webs se identifican como www.loquesea.com.
b)
Entramos primero en el programa ftp escribiendo ftp y pulsando ENTER. El prompt del sistema cambia a ftp >. A continuación escribimos: open ftp.microsoft.com.
En
cualquiera de los dos casos Sabremos que hemos conectado porque vemos un
mensaje de bienvenida. En el ejemplo anterior:
C:WINDOWS>ftp ftp.microsoft.com
Conectado a ftp.microsoft.com.
220
cpmsftftpa03 Microsoft FTP Service (Version 5.0).
Usuario
(ftp.microsoft.com:(none)): anonymous
331
Anonymous access allowed, send identity (e-mail name) as password.
Contraseña:******
230-This is
FTP.MICROSOFT.COM. Please see the
230-dirmap.txt
for more information.
230
Anonymous user logged in.
ftp> _
Vamos a ver
que es todo esto. Lo que esta escrito en negrita corresponde a lo que hemos
escrito nosotros. El resto es la respuesta del servidor:
Iniciamos la
conexión escribiendo ftp
ftp.microsoft.com. El
servidor nos informa que estamos conectados, y su nombre y versión. A
continuación nos da el nombre de usuario. Como aun no estamos identificados
aparecemos como ‘none’.
Tenemos que
identificarnos para entrar, pero ¿como lo hacemos?. Afortunadamente aun
perviven las buenas viejas costumbres, y internet esta lleno de servidores
‘publicos’ que permiten la conexión de usuarios anonimos. Típicamente usaremos
el nombre de usuario anonymous y como contraseña es cortesía introducir
nuestro email (en este caso solo el identificativo, es decir lo que va antes de
la @). Y no, no es necesario usar tu email real. Pero no olvides que te
conectas con tu IP, que se trata de un servicio gratuito que hay que defender,
y por tanto, procura no abusar.
Bien, ya
hemos entrado. En este caso el servidor nos informa donde podemos encontrar un
archivo con instrucciones (los tipicos leeme o README), y de nuestro nombre de
usuario (anonymous)
¿que comandos podemos usar?
Para saber
que comandos tenemos a nuestra disposición, simplemente escribimos help o abreviado, la interrogación ?.
Esta es la respuesta a nuestra petición de ayuda:
ftp> ?
Los comandos se pueden abreviar. Comandos:
!
delete literal prompt send
? debug ls put status
append dir mdelete pwd trace
ascii disconnect mdir quit type
bell get mget quote user
binary glob mkdir recv verbose
bye hash mls remotehelp
cd help mput rename
close lcd open rmdir
ftp>_
Ten en
cuenta que estos son los comandos que en principio nos ofrece nuestro
programa. Dependiendo de los privilegios con los que hayamos entrado,
podremos hacer mas o menos cosas, es decir, tendremos mas o menos comandos a
nuestra disposición, pues es logico, no podemos hacer lo mismo en un servidor
público que, por ejemplo, en un servidor ftp de nuestra web. Y lo normal es que
el servidor disponga de otros comandos adicionales.
Comandos básicos
En la página
anterior vimos los comandos para conectar con un servidor ftp (c:/ftp ftp.nombredeservidor.* o bien desde dentro del programa, ftp> open ftp.elservidor.*), y la necesidad de introducir
nombre de usuario y contraseña; también vimos como ver los comandos de ayuda
disponibles en nuestro sistema (? o bien help, pudiendo pedir ayuda sobre comandos específicos: ? comando, o help comando)
Bien, ya
estamos conectados, vamos a movernos por el servidor. En este caso, ponemos
como ejemplo el servidor ftp de un hosting de páginas web:
C:>ftp
ftp.nexen.net
Conectado a
sauterne.nexen.net.
220 ProFTPD
1.2.0pre10 Server (Sauterne) [sauterne.nexen.net]
Usuario (sauterne.nexen.net:(none)): minombre
331 Password
required for minombre.
Contraseña:************
230 User
minombre logged in.
ftp>
Lo primero
que hacemos es ver donde estamos. Para eso usamos el comando pwd:
ftp> pwd
257 '/' is
current directory.
ftp>
vemos que
estamos en el directorio raiz (no es el verdadero directorio raiz de la máquina
remota, pero si desde nuestro punto de vista de usuarios)
A
continuación, lo lógico es que queramos ver que tenemos a nuestro alrededor.
Para obtener la lista de archivos y directorios, usamos el comando ls:
utilidades
varios
xhtml
blank.html
canciones.js
entrada.html
entradanoframes.htm
estilo.css
estilo2.css
favicon.ico
nu43
innet
phpinfo.php
online.htm
preload.html
scriptind.js
cal
phorum-3.2.1
xml
extensions.php
404.html
226-Transfer
complete.
226 Quotas
off
ftp: 361
bytes received in 0.06Segundos 6.02KB/s.
ftp>
¿que ha
pasado? hay tantos directorios y archivos que ocupan toda la pantalla. Ya
sabemos que aqui no hay scroll. Para ver todos los archivos y directorios
cómodamente, usamos la misma orden, con un modificador:
ls -C:
ftp> ls
-C
200 PORT
command successful.
150 Opening
ASCII mode data connection for file list.
404.html favicon.ico preload.html
blank.html html scriptind.js
cal
images servidor
cal.htm
index.php smil
canciones
innet trucos
canciones.js
manualcss tutoriales
dump-mysql
musica utilidades
entrada.html
mysql varios
entradanoframes.htm
nu43 xhtml
estilo.css
online.htm xml
estilo2.css phorum-3.2.1
extensions.php phpinfo.php
226-Transfer
complete.
226 Quotas
off
ftp: 368
bytes received in 0.06Segundos 6.13KB/s.
ftp>
He ahi la
lista completa de directorios y archivos. Estamos en disposición de bajar y
subir archivos. Pero antes de bajar nada, debemos tener en cuenta que no hemos
especificado en que directorio de nuestro disco duro deben almacenarse las
descargas. Por defecto, se almacenan en el directorio desde el que estemos
trabajando (por ejemplo, si hemos lanzado el ftp desde una sesión típica de
DOS, estaremos en c:/windows, y no nos interesa que las
descargas se almacenen ahi).
Necesitamos cambiar el directorio de trabajo local, con el comando lcd:
ftp> lcd ..
Directorio local ahora C:.
ftp> lcd temp
Directorio local ahora C:temp.
ftp>
Vemos como
con lcd.. (local change directory) subimos en el arbol de directorios de
nuestra máquina (de c:/windows a c:) y luego con lcd temp pasamos al directorio
c:temp.
Bueno, bajamos nuestro primer archivo con la orden get:
ftp> get favicon.ico
200 PORT
command successful.
150 Opening
ASCII mode data connection for favicon.ico (942 bytes).
226 Transfer
complete.
ftp: 942
bytes received in 0.06Segundos 15.70KB/s.
ftp>
Acabamos de
descargar de nuestro servidor el archivo favicon.ico. El
programa nos informa de la velocidad de descarga, tamaño del archivo y tiempo
transcurrido (he escogido un archivo enano). Tambien nos dice el modo en el que
hemos realizado la transferencia: ASCII. Hay dos modos de transferencia.
De momento basta saber que ASCII es apropiado para textos, datos, mientras que BINARY
|