Thursday, April 17, 2014

Comandos Básicos parte 1



Guía de Comandos GNU/LINUX

Comandos: órdenes que el usuario ejecuta en una consola de texto desde el prompt. Este indica que el intérprete está listo para trabajar. Al tipear una orden, el intérprete de comandos (en nuestro caso bash), lo transforma en una pregunta entendible para el kernel y transforma la respuesta que el núcleo da en "algo-entendible" para nosotros.

Bash, actúa como un intérprete entre el kernel y el usuario.

Los comandos tienen modificadores que brindan más información al usuario de lo que arroja cada comandopor sí sólo.

El usuario necesita de información específica u ordenada de una determinada manera así que por lo general, da mucho uso a cada una de las opciones disponibles.


Comando pwd (Print Working Directory)
Lo primero que tenemos que conocer es donde estamos posicionados en el sistema. El prompt muestra toda la ruta sino el último directorio. Es conveniente saber en qué directorio estamos a partir de "/",
la raíz del sistema operativo.

Tenemos que recordar que inmediatamente después del login nos posicionamos en directorio home.
En el ejemplo que mostraremos a continuación el directorio en el que estamos es /root ya que nos hemos logueado como superusuario (root).

Ejemplo de Comando pwd: Imprimir directorio de trabajo.

equipo1:~# pwd
/root

Ahora que ya sabemos dónde estamos, es posible que deseemos movernos a otro Directorio, entonces debemos usar el comando cd (cambiar de directorio).


Comando cd (Change Directory)
El comando cd nos permite dirigirnos hacia el directorio que nosotros queramos.

En el ejemplo vamos a ir a /tmp:

equipo1:~# cd /tmp
equipo1:/tmp#

Si tipeamos cd volvemos siempre a nuestro home, no importa cuán lejos estemos de él.
Ejemplo:

equipo1:/tmp# cd <enter>
equipo1:~#

Modificadores del comando cd

equipo1:~# cd -

Este modificador hace que el usuario siempre se mueva entre los últimos dos directorios visitados.


Comando ls (list)
Este comando permitirá ver el contenido que presenta un directorio.
Para eso nos muestra la información con colores a fin de que podamos identificar lo que contiene.

equipo1:/var/log/apache2# cd /
equipo1:/# ls

equipo1:/# ls
bin boot cdrom dev etc home initrd.img lib lost+found media
opt proc root sbin selinux srv sys tmp usr var vmlinuz

Aquí nos muestra el contenido del directorio / en color azul porque son directorios.
COLORES
Blanco    Archivos de textos o binarios no ejecutables
Verde     Archivos de textos ejecutables (scripts) o binarios ejecutables
Celeste   Links Simbólicos
Rojo       con letras blancas parpadeantes Links simbólicos rotos
Amarillo  Dispositivos
Violeta    Archivos de imagenes o archivos temporales


Práctica
Realizar un ls de los siguientes directorios, identificando los colores que los objetos poseen.
/var/log/apache2
/etc/init.d
/etc/rc1.d
/dev
/usr/share/apache2/icons

El comando ls presenta muchos modificadores. A continuación veremos algunos de ellos con ejemplos.
En este sistema operativo podemos ver que tanto los archivos como los directorios pueden tener varios puntos pero cuando el punto está adelante los transforma en ocultos. Ejemplo .hola no se verá con un ls
normal, al utilizar el modificador "a" podemos ver todos los archivos ocultos que se encuentran en ese
directorio.

¿Por qué queremos tener archivos ocultos?
Generalmente los archivos ocultos son los que contienen información acerca de configuraciones.
Al no ser visibles fácilmente podemos garantizar que no serán borrados en forma accidental.
Veamos un ejemplo:

Ejecutemos un ls simple y después ejecutemos un ls -a para ver la diferencia.

equipo1:~# ls
apt.txt dbootstrap_settings instalar install-report.template

equipo1:~# ls -a
. .gconf .profile instalar .gconfd .ssh install-report.template .aptitude
.gnome .viminfo .bash_history .gnome2 apt.txt .bashrc .gnome2_private
dbootstrap_settings

Aquí podemos ver la diferencia: la mayoría de los archivos precedidos por un ̈ . ̈ (punto) son archivos de
configuración. Si aparecieran de esta forma podrían ser borrados sin querer. De este modo quedan
resguardados.
Otra opción interesante es el parámetro -l
Al listar con el modificador -l obtenemos la mucha información de los archivos y directorios.


Comando du (disk usage)
El comando du nos dice qué espacio ocupa cada archivo en el disco y también cuál es el total del directorio.
Podemos usar el parámetro h para que nos muestre la unidad de medida que está usando.
Ejemplo:

equipo1:~# du -h /etc/samba
16K /etc/samba/

En este ejemplo obtenemos la información de cuánto ocupa el directorio /etc/samba en el disco.
Veamos otra opción interesante

equipo1:~# du -h /etc/samba/*
4.0K /etc/samba/gdbcommands
8.0K /etc/samba/smb.conf

Al usar el * nos muestra cuál es el peso de cada uno de los archivos que se encuentran en el directorio
pasado como argumento


Comando df (disk free)
Este comando nos permite ver el espacio libre que nos queda por file system (particiones) y cuánto
es el usado. Si a esto le agregamos el parámetro h lo podremos observar con unidades.
Ejemplo:

equipo1:/$ df -h
Filesystem        Size       Used    Avail     Use%      Mounted on
/dev/hda1        5.6G      3.5G    1.9G      66%       /
tmpfs               126M       0       126M      0%       /lib/init/rw


Comando history
Este comando nos permite observar cuáles comandos que hemos usado. Para darnos esta
información el comando history lee lo que dice el archivo oculto .bash_history que se encuentra en los
homes de los usuarios. (Permanece oculto para que los usuarios no lo borren accidentalmente, si eres root este no se borra tan facilmente)

equipo1:~# history
1 vi /boot/grub/grub.conf
2 init 6
mount –t ext2 /dev/hdb2 /temp/aux
4 cd /boot/grub
5 vi grub.conf
6 man grub
7 man grub.conf
8 vi grub.conf
9 init 6
10 cd /tmp
11 ls


digamos que tenemos un comando muy largo que no queremos volver a tipear o que sea algo fastidioso para nosotros (comando de la linea 3), todo lo que tenemos que hacer para volver a ejecutarlo es lo siguiente:
pasando el sigbolo ! y el numero de la linea del comando que ya tipeamos

equipo1:~# !3


Comando mkdir (make directory)
Con este comando creamos nuevos directorios vacios. En este ejemplo veremos cómo hacerlo.

equipo1:~# mkdir nuevodir

Con la opción mkdir -p podemos crear un árbol completo de directorios:
equipo1:~# mkdir -p dir1/dir2/dir3
La línea de comandos anterior nos permite crear el siguiente árbol:
/
|------/dir1
               |-----/dir2
                              |------/dir3


Comando rmdir (Remove directory)
El comando rmdir permite borrar directorios, si los mismos cumplen con la condición de encontrarse vacios.

equipo1:~# rmdir nuevodir

También podemos usar la opción rmdir -p para borrar un árbol de directorios cumpliendo con la condición
también de vacios. Si los directorios contienen archivos, tendremos que utilizar el comando rm que veremos despues.

equipo1:~# rmdir -p dir1/dir2/dir3


Comando cp (copy)
El comando cp se usa para copiar archivos. Veamos su aplicación:
Digamos que creamos un directorio para almacenar nuestros archivos de configuración (guardar respaldos) y vamos a copiar alli el archivo donfiguracion de samba.

equipo1:~/FolderRespaldos# cp /etc/samba/smb.conf .
#pasamos el comando cp (copy) la direccion del archivo que vamos a copiar (/etc/samba/smb.conf) y por ultimo un punto (.) el punto indica que queremos copiar el archivo al directorio donde estamos ubicados asi que "no olvides poner el punto"

si en dado caso queremos cambiarle el nombre a nuestra copia del archivo smb.conf hacemos:

equipo1:~/FolderRespaldos# cp /etc/samba/smb.conf ./smb.conf.bak


Comando mv (move)(cambiar nombres de archivos/directorios)
Este comando se utiliza para renombrar archivos ya que hace una réplica del original pero le cambia el
nombre.

equipo1:~# mv smb.conf.bak httpd.conf


Comando rm (remove)
Cuando queremos borrar archivos tenemos que usar este comando. Debemos tener en cuenta que desde la línea de comandos no tenemos papelera de reciclaje, y tampoco hay un undelete, así que
cuando borramos, nunca más podemos recuperar el archivo original.

equipo1:~/prueba# rm smb.conf
<Nos preguntará:>
rm remove: `smb.conf.bak'? y   

tipeamos Y ó N, si tipeamos Y nunca mas volveremos a ver el archivo.

para borrar directorios completos tenemos que pasar un parámetro de recursividad -r o -f, la diferencia es que -r pregunta si Realmente queremos borrar, mientras que -f es mas agresivo.

equipo1:~/ mkdir /home/miUsuario/MisArchivosBackUp
equipo1:~/ rm -f /home/miUsuario/MisArchivosBackUp

ultima advertencia: si usas este comando como root.... cuidado con lo que haces


por ultimo:

Comando touch
El comando touch se utiliza para la creación de archivos vacíos. Si ya existan bajo el
mismo nombre, los actualiza cambiándoles la fecha de creación en el sistema.
Ejemplos del comando:

equipo1:~# touch uno
equipo1:~# touch dos
equipo1:~# touch tres
equipo1:~# touch cuatro

No comments:

Entradas populares.