Gracias por comentar.

Este Blog cuenta con detección automática de spam para los comentarios. Además, hasta que yo no los lea no se publicaran...

Buscar en este blog

lunes, 29 de septiembre de 2008

Comandos basicos para el Terminal

Una de las cosas mas "cansinas" para el que comienza a usar Ubuntu o cualquier otra distribución de Linux es el tener que teclear tanto comando en el Terminal para instalar lo que sea.

¿Y que es un Terminal? Un terminal es una forma de acceder al sistema sin utilizar la interfaz gráfica, es decir, realizar todo tipo de tareas en formato texto. La forma de utilizar el sistema de este modo es mediante órdenes.

Para acceder a una terminal se puede hacer de dos formas, una es con una aplicación como el terminal de GNOME. Otra forma es salirse del entorno gráfico y acceder a un entorno completamente en modo texto, algo así como entrar en sólo símbolo de sistema en Windows 98. Para esto último debemos teclear Control+Alt+F1. Linux proporciona por defecto seis terminales de este tipo, de Control+Alt+F1 a Control+Alt+F6. Si queremos volver al modo gráfico lo hacemos con Control+Alt+F7.

¿Y cuales son los comando básicos?
  • man (manual): manual
  • –help (ayuda): muestra cierta ayuda más resumida.
  • ls (list): listar
  • clear (clear): despejar, limpiar
  • cd (change directory): cambiar de directorio
  • mkdir (make directory): Hacer directorio
  • rm (remove): borrar
  • cp (copy): copiar
  • mv (move): mover
  • find (find): encontrar
  • ps (process status): estado de los procesos
  • kill (kill): matar
  • sudo (super-user do): hacer como superusuario
  • passwd (password): Cambiar contraseña
  • su (super-user): superusuario
  • apt (advanced packets tool): herramienta avanzada de paquetes. Nos permite actualizar e instalar...
  • aptitude (aptitude): aptitud, habilidad. Es una versión, gráfica y en modo texto mejorada de apt.
  • alien (Alien): de otro país, de otro planeta. Nos permite transformar un paquete de un gestor de paquetes determinado en otro.

A continuación os comento con mas detalles estos comandos. Por cierto, delante de los ejemplos he puesto "$" el último símbolo que aparece en nuestro Terminal:

man (manual: manual) Cuando desconozcáis cómo se usa y qué argumentos tiene un comando o aplicación tan sólo tenéis que escribir en consola:

$ man nombre

En ocasiones la información que nos ofrece man puede llegar a ser excesiva. Casi todos los comandos y aplicaciones aceptan el argumento “–help” para que muestre cierta ayuda más resumida. Por ejemplo con aptitude:

$ aptitude –help

ls (list: listar). Nos muestra el contenido de la carpeta:
Para mostrar todos los archivos y carpetas, incluyendo los ocultos.

$ ls -a

Para mostrar los archivos y carpetas junto con los derechos que tiene, lo que ocupa...

$ ls -l

Para mostrar todos los archivos y carpetas, incluyendo los ocultos junto con los derechos que tiene, lo que ocupa, etc (l+a=la).

$ ls -la

cd (change directory: cambiar de directorio):
Te lleva a tu carpeta personal directamente y estés donde estés.

$ cd

Nos llevará a esa carpeta (apt) directamente.

$ cd /etc/apt

mkdir(make directory: Hacer directorio). Crea una carpeta con el nombre que le indiquemos. Podemos indicarle toda la ruta que le precede al directorio que queremos crear, o si estamos ya en la carpeta que lo va a contener basta con poner tan sólo el nombre.
Crea una carpeta llamada pepino en /home/tu_cuenta/

$ mkdir /home/tu_cuenta/pepino

Crea una carpeta llamada pepino.

$ mkdir pepino

rm (remove: borrar). Borra el archivo o la carpeta que le indiquemos. Como antes se puede indicar la ruta completa o el nombre del archivo. Esto a partir de ahora lo vamos a obviar, creo que ya ha quedado claro con los dos comandos anteriores.
Borra nombre_archivo

$ rm nombre_archivo

Para borrar una carpeta vacía.

$ rm nombre_carpeta

Para borrar una carpeta que contiene archivos y/o otras carpetas que pueden incluso contener más.

$ rm -r nombre_carpeta

Otras opciones: “-fno pide una confirmación para eliminar o “-v” va mostrando lo que va borrando.

cp (copy: copiar) Copia el archivo indicado donde le digamos. Aquí podemos también jugar con las rutas, tanto para el fichero origen, como en el del destino. También podéis poner el nombre que le queréis poner a la copia.

mv (move:mover) Es igual que el anterior, sólo que en lugar de hacer una copia, mueve directamente el archivo con el nombre que le indiquemos, puede ser otro distinto al original.

$ mv /etc/pepino.html /home/tu_carpeta/pepino.html

Otro uso muy práctico que se le puede dar es para renombrar un archivo. Basta con indicar el nuevo nombre en el segundo argumento con la misma ruta del primero. En este ejemplo suponemos que ya estamos en la carpeta que lo contiene.

$ mv pepino.html ese_pepino.html

find (find: encontrar). Busca el archivo o carpeta que le indiques.
Buscaría en todos los sitios las carpetas y archivos que se llamen pepino.

$ find / -name pepino

Buscaria en la carpeta /var

$ find /var -name pepino

Si no estamos muy seguros del nombre podemos indicárselo con comodines, el nombre de lo que buscamos contiene “pepi” y buscaría en la carpeta /var.

$ find /var -name *pepi*

clear (clear: despejar). Limpia la pantalla/consola dejándola como si acabáramos de abrirla.

ps (process status: estado de los procesos). Nos muestra lo que queramos saber de los procesos que están corriendo en nuestro sistema. Cada proceso está identificado con un número llamado PID.
Nos mostrará un listado de todos los procesos, su PID a la izquierda y su nombre a la derecha.

$ ps -A

Nos da gran cantidad de información, sobre el usuario que inició un proceso, cuantos recursos del sistema consume el proceso ( mostrado en las columnas %CPU, %MEM, VSZ y RSS ) y la fecha de inicio del proceso.

$ ps auxw

kill (kill: matar). Elimina el proceso que le indiquemos con su PID (que es el número que lo identifica entre todos los procesos que se ejecutan en el sistema y que además es único). Hay veces en las que un programa colapsa y se produce un error, esto implica que el programa afectado deje de funcionar o afecte el correcto funcionamiento del sistema. Es por esto que nosotros tenemos a nuestra disposición la opción de matar o reiniciar un proceso gracias al comando kill. Este programa sencillamente se encarga de matar un proceso o de reiniciarlo si es que hemos efectuado algunos cambios en el sistema o en el programa en sí.
Elimina el proceso cuyo PID es 9.
$ kill -9

sudo (super-user do: hacer como superusuario). La cuenta de usuario en Ubuntu es relativamente normal. Tiene derechos de administrador a medias. Me explico, los tiene, pero cada vez que se haga algo importante y de riesgo para el sistema, hay que hacerlo mediante el prefijo “sudo” y escribiendo después la contraseña.

passwd (password: contraseña). Con este comando podremos cambiar la contraseña de nuestra cuenta. Primero nos pedirá la contraseña actual como medida de seguridad. Después nos pedirá que introduzcamos dos veces seguidas la nueva contraseña.

su (super-user: superusuario). Mediante su podremos loguearnos como superusuario. Tras escribirlo nos pedirá la contraseña de root y estaremos como administrador. Podremos hacer todo lo que queramos.

sudo passwd. Cambiar la contraseña de root. No es un comando propiamente dicho. Gracias a la unión de estos dos comandos podréis cambiar la contraseña de root (la del super-usuario).

apt (advanced packets tool: herramienta avanzada de paquetes). Nos permite comprobar actualizaciones, actualizar todo el sistema. También nos ofrece funcionalidad para buscar, descargar e instalar paquetes con una sola orden.
Este comando Actualiza los repositorios que son los que contienen los paquetes. Los repositorios son como las direcciones que contienen nuestros paquetes. apt-get update lo que hace es actualizar el listado de todos esos paquetes, con la dirección de dónde obtenerlos para que a la hora de hacer la búsqueda y su posterior descarga sea más rápida haciéndolo en nuestro ordenador.

$ apt-get update

Este Actualiza nuestro sistema con todas las posibles actualizaciones que pudiera haber. La actualización no se realiza sólo sobre el propio sistema operativo, sino también sobre las aplicaciones que estén contenidas en los repositorios. Una útil forma de estar siempre al día.

$ apt-get upgrade

Localizado el nombre del paquete que queremos descargar e instalar, este comando se encargará del proceso. Buscará en nuestro índice (el que se crea con update) de dónde tiene que descargarse el paquete, lo hace y posteriormente lo instala.

$ apt-get install nombre_paquete

Elimina
el paquete especificado del sistema. Admite el argumento “–purge” (corchetes = opcional) para que borre también los ficheros de configuración.

$ apt-get remove [--purge] nombre_paquete

Elimina paquetes que han quedado inservibles tras realizar algún apt-get remove, los llamados huérfanos. Normalmente tras hacer este último te avisa en un mensaje que lo realices.

$ apt-get autoremove

Todos estos comandos necesitan tener privilegios de administración, así que si no los usáis como root, debéis agregar primero el conocido “sudo”.

aptitude (aptitude: aptitud, habilidad). En el fondo juega con las siglas de apt para crear aptitude. Es una versión, gráfica y en modo texto, mejorada de apt. Este ultimo es quizá el más extendido al ser el que vio la luz primero. Necesitaréis usarlo con el sudo delante si no estáis como administrador.
apt cuando instala algo te puede realizar una sugerencia para que instales algo más que te podría venir bien, pero no lo hace. Hay programas que a la vez usan otros para algunas de sus funciones u opciones. apt no instalaría los segundos, como mucho te avisaría. Sin embargo aptitude que lo instalará porque sabe que de alguna forma es indispensable para el que has pedido.
De la misma forma, si con apt instalas luego ese programa que es usado por otro, cuando desinstalas el principal, no se desinstalará el secundario, aunque éste ya no tenga mucho sentido que esté instalado, y lo mismo sucede con librerías. aptitude está capacitado para desinstalar lo que él mismo ha instalado como recomendación. Te deja el sistema más limpio tras las desinstalaciones.

Para abrir el interfaz gráfico de aptitude.

$ aptitude

también se puede usar exactamente igual que apt, pero con las características que he comentado de aptitude:
$ aptitude search nombre_paquete
$ aptitude install nombre_paquete
$ aptitude remove nombre_paquete
$ aptitude purge nombre_paquete
$ aptitude update
$ aptitude upgrade

alien (Alien: de otro país, de otro planeta). Nos permite transformar un paquete de un gestor de paquetes determinado en otro. Por ejemplo podemos pasar de un .deb (Debian) a un .rpm (Red Hat) y viceversa. Las extensiones soportadas son:
  • * deb (Debian)
    * rpm (Red Hat)
    * slm (Stampede)
    * tgz (Slackware)
    * pkg (Solaris)

    Su uso es sencillo. Lo que debemos saber es el argumento que transformará el paquete original en la extensión objetivo:

    * “–to-deb” o “-d” para transformar a .deb
    * “–to-rpm” o “-r” para transformar a .rpm
    * “–to-tgz” o “-t” para transformar a .tgz
    * “–to-pkg” o “-p” para transformar a .pkg
    * “–to-slp” para transformar a .slp

    Como ejemplo, pasaremos un supuesto paquete de Red Hat llamado “pepino.rpm” a “pepino.deb”:

    $ alien -d pepino.rpm

Fuentes:
http://ubunturoot.wordpress.com/2007/11/06/comandos-basicos-para-linux/
http://www.guia-ubuntu.org/index.php?title=Terminal
y un poquito de aqui http://www.slackware.cl/docs/guia/arreglo/cap_4_4.html

No hay comentarios: