Comandos Orden Opciones Argumentos

  1. Bash. Diferencias entre la terminal y lo grafico. Sistema de ficheros.
  2. Como moverse. Login. Clear. Reset. History. Reverse-i-search. Man, help e info. Pipe. Autocompletar.
  3. Comandos: orden, opciones, argumentos.
  4. Descomprimiendo
  5. Editores de textos: nano y vim.
  6. COMO matar procesos rebeldes: kill, killall, xkill.
  7. Archivos de configuracion mas utilizados
  8. Reiniciar servidor grafico (gdm, kdm)
  9. Instalar, desinstalar y actualizar aplicaciones y el sistema (apt-get y aptitude). Instalar .deb. Compilar.
  10. Redes: ifconfig, iwconfig, iwlist, dhclient. nm-tool, ping
  11. Bonus: hacia el infinito y mas alla. MC, mp3, navegador, torrents, mensajeria, videos.
  12. Bash scripting y más enlaces

La sintaxis basica de un comando es la siguiente:
’’’orden opciones argumentos’’’

La orden es el comando en si, el nombre de la aplicacion siendo llamada. Por tanto para abrir el firefox solo hay que poner firefox en la consola.

$ firefox

Cuando una aplicacion monopoliza el uso de la consola se puede cancelar el comando con ’’’CTRL+C’’’. Para que no lo monopolice se tiene que poner el ’’’ampersand (&)‘’’ al final de la orden.

$ firefox &

Si tenemos un fichero de texto que queremos abrir con el editor de textos (gedit) se puede hacer con gedit fichero. Esto funciona con todas las aplicaciones, por ejemplo para abrir imagenes con el gimp es gimp fichero, para abrir un video con el vlc es vlc fichero, para escuchar musica con el amarok es amarok fichero.

Vamos a ver ahora ciertos comandos basicos:

’’’ls’’’: Sirve para listar ficheros. Con ls solo listamos los que estan en la carpeta donde nos encontremos (pwd) para ver el contenido de cualquier otro directorio le daremos la ruta

capo@termitux:~$ pwd
/home/capo
capo@termitux:~$ ls
Desktop  dsc00785.jpg  dsc00786.jpg  dsc00787.jpg  dsc00788.jpg  dsc00789.jpg  elinux6_p45.odp  jack-023bfd01  terka  terka.save  xorgRES.conf
capo@termitux:~$ ls /etc/gimp
2.0

’’’cd’’’: change directory. Sirve para cambiar de directorios. Con cd solo vamos a nuestra home. Con cd .. vamos a la carpeta superior. Para ir a raiz se puede con cd /

’’’cat’’’: imprime en pantalla el texto de un fichero. Ejemplo para ver informacion de nuestro procesador
cat /proc/cpuinfo
Otros comandos similares con ’’’more’’’ y ’’’less’’’. Tienen la misma sintaxis y sirven para lo mismo, solo que nos muestra una pagina a la vez.

’’’touch’’’: simplemente crea un fichero.
touch fichero

’’’free’’’: muestra nuestra memoria ram y swap ocupada y tambien la disponible. Ejemplo:

capo@termitux:~$ free
             total       used       free     shared    buffers     cached
Mem:       2057132     568464    1488668          0      33920     251948
-/+ buffers/cache:     282596    1774536
Swap:       330072          0     330072

’’’top’’’: muestra informacion de lo que se este corriendo en el sistema. Muy util.

top - 22:31:10 up  3:39,  1 user,  load average: 1.54, 1.52, 1.53
Tasks: 104 total,   2 running, 102 sleeping,   0 stopped,   0 zombie
Cpu(s): 14.0%us,  1.8%sy,  0.0%ni, 83.9%id,  0.0%wa,  0.0%hi,  0.3%si,  0.0%st
Mem:   2057132k total,   671280k used,  1385852k free,    38888k buffers
Swap:   330072k total,        0k used,   330072k free,   336696k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 3745 capo      20   0  371m 179m  26m R   18  8.9  41:25.07 firefox-bin
 3678 capo      20   0 32096  14m  10m S    2  0.7   0:04.50 konsole
 3272 root      20   0  345m  51m 7444 S    1  2.6   6:41.38 Xorg
 4240 capo      20   0  2320 1128  872 R    1  0.1   0:00.18 top
    1 root      20   0  2032  700  596 S    0  0.0   0:01.08 init
    2 root      15  -5     0    0    0 S    0  0.0   0:00.00 kthreadd

’’’ps’’’: da una lista con todos los procesos ejecutandose. Para ver todos hace falta poner las opcion aux. Sintaxis: $ ps aux

capo@termitux:/$ ps
  PID TTY          TIME CMD
 3681 pts/0    00:00:00 bash
 4178 pts/0    00:00:00 ps

’’’lspci’’’: da una lista de los diferentes dispositivos PCI. Desde VGA y Audio hasta Ethernet y SD. Es muy util para saber el nombre de los componentes que utilizamos.

capo@termitux:/$ lspci
00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 03)
00:01.0 PCI bridge: Intel Corporation Mobile PM965/GM965/GL960 PCI Express Root Port (rev 03)
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #4 (rev 03)
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 03)
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 03)

’’’head’’’: muestra las 10 primeras lineas. Ejemplo:

capo@termitux:/$  head /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 23
model name      : Intel(R) Core(TM)2 Duo CPU     T9300  @ 2.50GHz
stepping        : 6
cpu MHz         : 800.000
cache size      : 6144 KB
physical id     : 0
siblings        : 2

’’’tail’’’: muestra las 10 ultimas lineas. Ejemplo:
capo@termitux:/$ tail /proc/cpuinfo
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm
bogomips        : 4987.47
clflush size    : 64

’’’dmesg’’’: muestra un log del kernel con informacion de lo que hace nuestro sistema

capo@termitux:/$ dmesg | more
n reserved
system 00:07: ioport range 0x1640-0x164f has been reserved
PCI: Bridge: 0000:00:01.0
  IO window: 7000-7fff
  MEM window: 90000000-930fffff
  PREFETCH window: 80000000-8fffffff

’’’cp’’’: para copiar ficheros. Sintaxis:
cp origen destino
Por ejemplo para hacer un backup de nuestro sources.list

 
 capo@termitux:/$ sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup

’’’mv’’’: para mover o renombrar ficheros. Sintaxis:

 
 capo@termitux:/$ sudo mv /etc/apt/sources.list /media/usb/sources.list

’’’rm’’’: para eliminar ficheros. Hay que tener mucho cuidado porque no lo lleva a la papelera, sino que lo elimina del sistema. Sintaxis:

 capo@termitux:/$ sudo rm ejemplo1.jpg

’’’cal’’’
Si lo ponemos solo nos muestra un calendario del mes en el que estamos. Podemos pedirle el que queramos. $cal 9

 
capo@termitux:/$ cal
     julio 2008
lu ma mi ju vi sá do
    1  2  3  4  5  6
 7  8  9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31

’’’date’’’
Nos muestra la hora y el dia en el que estamos.

 
capo@termitux:/home$ date
sáb jul 12 22:00:13 CLT 2008

’’’uptime’’’
Nos dice hace cuanto esta encendido el ordenador. Muy util para servidores.

capo@termitux:/$ uptime
 22:22:02 up  3:30,  1 user,  load average: 1.86, 1.71, 1.57

’’’wget’’’: para descargar algo de la red. Sintaxis:
wget direccion
Por ejemplo:
 
capo@termitux:~$ wget http://capo.zapto.org/avatar/ukupix.jpg
--2008-07-12 22:24:07--  http://capo.zapto.org/avatar/ukupix.jpg
Resolviendo capo.zapto.org... 200.104.124.87
Connecting to capo.zapto.org|200.104.124.87|:80... conectado.
Petición HTTP enviada, esperando respuesta... 200 OK
Longitud: 10924 (11K) [image/jpeg]
Saving to: `ukupix.jpg'

100%[=============================================================================>] 10.924      52,2K/s   in 0,2s

2008-07-12 22:24:08 (52,2 KB/s) - `ukupix.jpg' saved [10924/10924]

’’’shutdown’’’: apaga el sistema. Requiere permisos de administrador. Es necesario decirle la hora a la que lo queremos apagar. Ejemplo:
sudo shutdown now

’’’reboot’’’: reinicia el sistema. Requiere permisos de administrador. Sintaxis:
sudo reboot

’’’su’’’: cambia de usuario. Sintaxis:
su usuario
Si no le damos ninguna opcion nos permite acceder como root (administrador) y poder realizar todos los cambios que querramos en el sistema. Por una cuestion de seguridad Ubuntu no lo recomienda, prefiriendo el uso del sudo, que le da permisos de administrador solo al comando donde lo pongamos. Por ejemplo, si queremos ver lo que dice el log del sistema

capo@termitux:~$ cat /var/log/syslog
cat: /var/log/syslog: Permiso denegado

Pero en cambio nos lo permite con sudo
capo@termitux:~$ sudo cat /var/log/syslog | more
Jul 12 07:36:30 termitux syslogd 1.5.0#3: restart.
Jul 12 07:36:30 termitux anacron[25726]: Job `cron.daily' terminated
Jul 12 07:36:30 termitux anacron[25726]: Normal exit (1 job run)

’’’sudo’’’: significa que la siguiente linea va a tener permisos de administrador. Un ejemplo grafico:

[[Imagen:Sandwich.png|center|thumb| Un ejemplo de los poderes de magia oscura que nos da el sudo. Hecho por ]]

La primera vez que iniciamos el sudo nos aparece el siguiente mensaje:

We trust you have received the usual lecture from the local System Administrator. It usually boils down to these three things:
  1. Respect the privacy of others.
  2. Think before you type.
  3. With great power comes great responsibility.
Esperamos que haya recibido el sermón usual del Administrador de Sistema. Normalmente se reduce a estas tres cosas:
  1. Respete la privacidad de los otros.
  2. Piense antes de escribir.
  3. Un gran poder conlleva una gran responsabilidad.

Se pueden agregar mas usuarios a sudo modificando el /etc/sudoers . Hay un comando que viene con Ubuntu que sirve para modificarlo con el nano entrando directamente, el visudo. Hay que agregar usuario ALL=(ALL) ALL al final del fichero.
sudo visudo

’’’ps’’’: sirve para listarnos todos los procesos y aplicaciones que esten ejecutandose en ese momento. Suele utilizarse con las opciones aux. Sintaxis:
ps aux

’’’grep’’’: nos muestra solo la linea que nos interesa. Suele utilizarse con | (pipe). Por ejemplo para saber que tarjeta de video (VGA) utilizamos:

capo@termitux:/$  lspci | grep VGA
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8600M GT (rev a1)