domingo, 21 de abril de 2013

Archivos, directorios y unidades de almacenamiento

Resto de entradas con intenciones didácticas en la etiqueta Aprendizaje.

Creo que ya va siendo hora de saber lo que tenemos entre manos cuando entramos en el terminal de Ubuntu y empezamos a operar con comandos. Como en Windows, la información está contenida en ficheros, los cuales están guardados en directorios. La diferencia es que en los sistemas GNU/Linux todo tiene tratamiento de fichero: los propios archivos, los directorios, las unidades de almacenamiento, las unidades extraíbles y hasta los comandos u órdenes. Todo es tratado como si fuera un fichero o archivo y todo se ubica en directorios específicos.

También conviene saber que el disco C:/ de Windows no existe como tal. Lo que tendremos es el directorio raíz, representado por el símbolo /. De ahí cuelgan el resto de directorios y subdirectorios.

Dispositivos

Para aprender a manejarnos dentro del sistema jerarquizado de datos debemos entender las diferencias que existen con Windows. En el anterior post ya deslicé que los discos duros no se llaman exactamente igual, así que vamos a empezar por ahí. Trataré de explicar esquemáticamente como reconocer cada dispositivo.
/dev/sda: es el primer disco duro, si es el único no encontrarán otro.
/dev/sda1: es la primera partición del primer disco duro.
/dev/sda2: es la segunda partición del primer disco duro.
(etc...)
/dev/sdb: es el segundo disco duro, en caso de haberlo.
/dev/sdb1: es la primera partición del segundo disco duro.
/dev/sdb2: es la segunda partición del segundo disco duro.
(y así con todo...)
Como vemos, cada dispositivo de almacenamiento está contenido en el directorio dev que cuelga del directorio raíz /.
/media/cdrom: la unidad de CD/DVD.
/media/dispositivoUSB: los pendrives que insertemos en el puerto USB, que recibirán un nombre distinto según el caso.
Es estos dos casos, la unidad CD/DVD y los dispositivos USB serán montados en el directorio /media.

El montaje equivale a crear un acceso desde un directorio a un dispositivo. Si no tenemos un disco duro montado no podremos visualizar su contenido aunque nos aparezca listado en pantalla. Podemos tener conectado un dispositivo pero no necesariamente tiene que estar montado; es como dejar la televisión en modo de espera.

Directorio /home

Este directorio se crea durante la instalación de la distribución y equivale al Mis Documentos de Windows. Si usted ha creado un usuario llamado FelipeLotas, entonces dentro de /home habrá un directorio llamado /FelipeLotas, con la ruta absoluta /home/FelipeLotas. Aprovecho este ejemplo para subrayar que GNU/Linux diferencia entre mayúsculas y minúsculas, con lo que para su sistema Hola es algo distinto de hola. Téngalo en cuenta porque no hacerlo le puede suponer más de un soponcio.

En fin, que el directorio home es donde usted va a guardar todo su material como usuario. y no solo usted; a cualquier usuario nuevo le será creado un directorio personal dentro de home. GNU/Linux es un sistema multiusuario pensado para el uso compartido.

Moverse por los directorios

Con el comando cd (change directory) podemos desplazarnos a través de los directorios.
cd /: para ir al directorio raíz.
cd ..: para subir un nivel dentro del árbol de directorios.
cd -: para ir al directorio previo, sea o no parte del árbol de directorios actual.
cd: para volver al directorio personal del usuario en /home. Equivale a cd ~.
Con estas cuatro opciones del comando cd tenemos suficiente para navegar por el entramado de directorios de nuestro sistema de archivos.

Hablar del directorio home da pie al vídeo de The Mission "Coming home" que realizaron en 1996.


sábado, 20 de abril de 2013

Descripción del prompt de comandos del terminal

Resto de entradas con intenciones didácticas en la etiqueta Aprendizaje.

Dado que vamos a utilizar mucho el terminal de comandos, y como un novato en GNU/Linux no tiene por qué conocer estas cosas, voy a explicar qué es el prompt de comandos. Se trata de esa línea de texto que aparece siempre cuando se abre una terminal y a continuación de la cual está el cursor parpadeando, esperando a que empecemos a introducir órdenes. En mi caso tiene este aspecto:

paco@paco-pc:~$

Por defecto viene toda la línea en el mismo color pero se puede cambiar para distinguir cada fin de comando y comienzo de otro. Visualmente es una buena ayuda (hablé de como hacerlo en esta tuitentrada).

Bien, el primer "paco" que ven es el nombre del usuario habitual del PC, que soy yo, y es un dato que se introdujo en la instalación de Ubuntu (¿lo recuerdan de este post?). Separado por una arroba tenemos el hostname, el nombre descriptivo que, también durante la instalación, le dimos al ordenador. Después van dos puntos y a continuación el símbolo tilde ~. Este símbolo ya tiene su importancia porque nos indica que estamos posicionados en nuestro directorio personal. Probemos a ver donde estamos tecleando el comando pwd:

paco@paco-pc:~$ pwd
/home/paco

paco@paco-pc:~$

Estamos en el directorio /home/paco, es decir, en el directorio paco que cuelga de home que, a su vez, cuelga del directorio raíz, representado por el símbolo /. Es el directorio donde la terminal siempre entra por defecto y que tiene el nombre del usuario, y eso es justo lo que nos indica la tilde. Si cambiamos de directorio, la tilde desaparece:

paco@paco-pc:~$ cd ..
paco@paco-pc:/home$

paco@paco-pc:~$ su
Contraseña:root@paco-pc:/home/paco#

root@paco-pc:/home/paco# exit
paco@paco-pc:~$

Hemos subido un nivel en la jerarquía de directorios con cd .., nos hemos posicionado en /home y, tachán, ya no hay tilde.

Por último está el símbolo del dólar, el cual nos indica que somos un usuario sin privilegios. Cualquier usuario tendrá el símbolo del dolar al final de su línea de prompt salvo el superusuario o usuario root. Para verlo tecleamos el comando su (super user) para loguearnos como root:

Tras pedirnos la contraseña e introducirla ya seremos usuario root, lo cual es representado por el símbolo almoadilla en lugar del dólar. Tengan cuidado con lo que hacen a partir de ese momento porque las cantadas como root se pagan ya que tendrán acceso ilimitado al sistema, tanto para lo bueno como para lo malo. Para salir del modo root hay que teclear exit.

Parece algo simple pero es conveniente conocerlo.

jueves, 18 de abril de 2013

Pongamos en español nuestro Libre Office

Libre Office es la suite ofimática que traen por defecto la mayoría de distribuciones GNU/Linux. Lo normal es que no haya problema en encontrarla en castellano, pero hay casos en que no es así. En mi netbook con Lubuntu instalado viene en inglés, así que he buscado la manera de ponerlo en español. Y ha sido más fácil de lo esperado. Basta con que cierren Libre Office e introduzcan en la terminal el siguiente comando:

sudo apt-get install libreoffice-l10.es

La próxima vez que lo abran se encontrarán con todo traducido. Que lo disfruten.

viernes, 12 de abril de 2013

Como salvar los muebles ante un cuelgue vía terminal

Mal que nos pese a los usuarios de GNU/Linux, los ordenadores con este sistema también se cuelgan. Lo bueno es que hay formas de resolver la cuestión y volver a retomar nuestra tarea cotidiana sin tener que reiniciar, pero para eso necesitamos el terminal de comandos.

Por ejemplo, la herramienta de descarga de música Nicotine lleva varios días dándome problemas. Se cuelga al realizar una búsqueda y, a veces, me bloquea el PC completo. ¿Qué hacer para salvar la situación?

Lo que tenemos que hacer es pulsar Ctrl + Alt + F2, así accedemos a la terminal en modo pantalla completa, sin rastro de la interfaz gráfica. No nos asustemos que la cosa es fácil. Se nos pedirá el nombre de usuario y después la contraseña; una vez introducidos aparecerá el prompt de comandos, del que ya hablé en el anterior post.

Ahora es el momento de actuar. Tecleamos en comando top, que sirve para monitorizar procesos activos, es decir, veremos un listado de todos los programas que se encuentren en ejecución aunque estén interrumpidos, como es el caso. El aspecto que nos mostrará será parecido a este:

paco@paco-pc:~$ top



En la columna más a la derecha podemos ver los procesos activos. Localizamos el que nos está fastidiando (en mi caso es Nicotine) y buscamos en la primera columna su PID (número identificador de proceso), que para Nicotine es el 4686.

Una vez conseguido este dato pulsamos la letra q para salir del comando top y volver a la línea de comandos. A continuación vamos a matar ese proceso con el comando kill, anteponiendo el comando sudo para disponer de privilegios de superusuario.

paco@paco-pc:~$ sudo kill 4686
[sudo] password for paco:

paco@paco-pc:~$


Y el proceso problemático ha dejado de ser una molestia. Para volver a la interfaz gráfica pulsamos Ctrl + Alt +F7 y como si no hubiera sucedido nada.

Hemos visto comandos que no tenía previsto mencionar tan pronto, pero resultan útiles para solventar la papeleta de una aplicación que, al colgarse, bloquea todo el sistema. Uno de ellos era kill, que me sirve para dar paso al vídeo de 30 Seconds To Mars precisamente llamado "The Kill".

jueves, 11 de abril de 2013

Introduciéndonos en la shell de Ubuntu

Resto de entradas con intenciones didácticas en la etiqueta Aprendizaje.

Es la hora de la verdad, ya hemos instalado nuestro primer Linux. Lo tenemos todo reluciente ahí, luciendo en nuestro monitor. ¿A que no es tan distinto de Windows?

Lo primero antes de empezar a funcionar en Ubuntu, o en la distribución que uno escoja, es familiarizarse con el entorno. Hay cosas que cambian de nombre, otras que resultarán completamente nuevas y algunas, las habrá, que se echarán de menos. Podemos empezar afirmando que en GNU/Linux TODO tiene nombre, hasta la tontería más boba recibe algún tipo de denominación. Por ejemplo, lo que en Windows es simplemente el explorador de archivos en Ubuntu, openSUSE o Fedora es Nautilus, Dolphin o Konqueror, dependiendo de si estamos entornos GNOME o KDE; la ventana de comandos o shell tiene variantes como bash, dash, sh o ksh; los programas de instalación y configuración en sistemas derivados de Debian se llaman apt, aptitude y dpkg; en openSUSE el software responsable de la configuración y mantenimiento del sistema atiende por YaST; los derivados de Red Hat como Fedora utiliza la herramienta yum... En fin, es algo que iremos viendo poco a poco.

Pero lo que pretendo es que vayamos cogiendo soltura con el terminal. Los menús y el entorno gráfico son tan intuitivos como en Windows así que lo que merece atención es la línea de comandos a través del terminal.

Al terminal se le denomina también ventana de shell. Una shell es un software que permite interactuar con el sistema por medio de órdenes o comandos, y visualmente es una ventana con un prompt (línea que representa el nombre del usuario que uno haya escogido y el localhost o nombre que se haya dado al PC separados por una arroba, seguido de dos puntos, una tilde y el símbolo del dólar). Esto puede cambiar según la distribución, pero ya he dicho que vamos a centrarnos en Ubuntu. Así es como se verá nuestro prompt:



nombre_de_usuario@localhost:~$

La ventana de comandos, terminal o shell se parecen al antiguo MS-DOS pero conviene recordar que UNIX en anterior a que Bill Gates pensara en inventar MS-DOS.

Hay varios tipos de shell, que responden de forma distinta en función de los parámatros bajo los que hayan sido creadas. La más popular es bash, pero existen otras como sh (versión anterior de bash), tschcshksh y zsh. Yo he probado alguno otra y... mejor que quedo con bash. Si quisiéramos cambiar a otra utilizaríamos el comando chsh (change shell):



:~$ chsh
nombre_de_shell
:~$

Asumamos que tras terminar de teclear una línea pulsamos la tecla enter.Las shells instaladas se encuentran en el directorio /binPodemos ver un listado de ellas instaladas listando el archivo /etc/shells con ayuda del comando cat:



:~$ cat /etc/shells
# /etc/shells: valid login shells
/bin/csh
/bin/sh
/usr/bin/es
/usr/bin/ksh
/bin/ksh
/usr/bin/rc
/usr/bin/tcsh
/bin/tcsh
/usr/bin/esh
/bin/dash
/bin/bash
/bin/rbash
:~$ 

También podemos cambiarla de una sola vez, ejecutando el comando con la opción -s y, a continuación, escribiendo la ruta de la shell que deseamos, por ejemplo, sh.


:~$ chsh -s /bin/sh
:~$

Si quisiéramos volver a bash no tenemos más que cerrar la terminal. Cuando la volvamos a abrir volveremos a estar con la shell bash. O podemos volver a ejecutar cualquiera de los comandos anteriores. Este:


:~$ chsh
nombre_de_shell
:~$


Y este otro:


:~$ chsh -s /bin/bash
:~$

Son conceptos durillos de asimilar para un recién llegado, pero si queremos exprimir nuestro Linux hay que empezar a pegarse con ellos.
Y hablando de pegar, Ian Dury pedía al frente de los Blockheads que le golpearan con un palo rítmico a finales de lo 70 en este mítico tema.


domingo, 7 de abril de 2013

Instalemos nuestro primer Linux: Ubuntu


Resto de entradas con intenciones didácticas en la etiqueta Aprendizaje.

Desde que comencé este blog he venido repitiendo que Ubuntu ha sido la distribución GNU/Linux que me ha venido acompañando desde que tomé contacto con este sistema informático. Por ello, será mi principal referencia a la hora de trasladar aquí mi proceso de aprendizaje, además de por ser la distro más popular y una de las más indicadas para aprender a desenvolverse. La última instalación que he tenido el placer de realizar ha sido la de la distribución de origen alemán openSUSE 12.2, así que por un momento dudé en cual trasladar aquí dado que ambas se instalan fácil y de manera muy similar. Pero no se si me pondré al día con openSUSE, así que vamos a seguir con el guión y darle cancha a Ubuntu. En otro momento quizá cuelgue un post sobre como instalar openSUSE en una máquina virtual.

Primeramente nos tenemos que hacer con una copia de la distribución en formato .ISO de imagen de DVD, la cual podemos descargar desde su página oficial. Una vez descargada, se "quema" la imagen en un disco DVD con un programa tipo Nero. Una vez hecho esto, debemos reiniciar el equipo con el DVD introducido en el lector. Lo normal es que el PC busque el sistema operativo primero en el DVD y luego en el disco duro, o así suele venir configurado por defecto en el BIOS, el software que trae cada ordenador y que guarda datos básicos de funcionamiento. Si no es así, habrá que entrar en el menú del BIOS pulsando F11 al arrancar y, en el menú correspondiente (que se tendrá que llamar Boot o similar), seleccionar la unidad CD/DVD como la primera en el orden de arranque. Si en lugar de quemar un disco DVD lo hemos hecho en un pendrive se hace lo mismo, pero seleccionando el puerto USB.

Bien, antes de seguir diré que no voy a añadir capturas de pantalla del proceso por la sencilla razón de que no he hecho una instalación de Ubuntu recientemente, así que no dispongo de ellas. Confío en que los pasos que voy a describir sean suficientes para dejar claras las cosas. La instalación de Ubuntu, como ya he apuntado, es sencilla y no debería entrañar problemas, pero si se presentan dudas hay material en esa joya que es Internet donde podrán encontrar pormenores que quizá en este post no se vayan a tratar.

Sigamos. En la primera pantalla lo primero que hay que hacer es elegir idioma. Esto no supone problema alguno, espero. Al mismo tiempo se nos da la opción de simplemente probar Ubuntu o instalarlo directamente. Si optamos por lo primero, entraremos en modo LiveCD, esto es, Ubuntu arrancará y se abrirá desde el DVD y podremos movernos a lo largo y ancho de él hasta decidir que, o bien no nos gusta y nos echamos atrás o bien lo instalamos en ese mismo momento con una opción que se nos ofrecerá desde el escritorio.

Nosotros hemos decidido que lo instalamos, así que le damos a "Instalar Ubuntu" y así entramos en materia. Seguidamente el sistema chequea las capacidades del equipo, si tiene conexión a Internet, si tiene espacio suficiente en disco duro, si está...ejem...conectado a la red... El programa de instalación recomienda al menos 2,6 Gb; lo normal es que tengamos bastantes más salvo que tengamos el PC absolutamente petado de chorraditas.

Nos preguntará si queremos descargar actualizaciones mientras se instala, y le diremos que sí. Esto es porque la versión que en ese momento está disponible ha podido ser superada ya, aunque no se haya publicado otra nueva versión oficial. Las actualizaciones en GNU/Linux son constantes, y no esperan al lanzamiento de una nueva versión.

También nos preguntará si queremos instalar software "de terceros", es decir, software privativo. Le diremos que sí porque será necesario para reproducir archivos multimedia, por ejemplo. Formatos como MP3 o Flash no son libres.

Luego viene la parte en la que debemos asignar las particiones en las que se instalará Ubuntu. parece complicado pero no lo es. Tendremos tres opciones:

  - Borrar y usar el disco entero. No hay mucho más que explicar, ¿verdad? Es la usada cuando Ubuntu va a ser el único sistema operativo instalado en el equipo y se lleva por delante todo lo que haya en el disco duro.

  - Instalar junto a otros. Justo, a eso me refería. Si ya tiene Windows instalado, esta es su opción. Ubuntu lo detectará y usted solo tendrá que definir el tamaño de disco que le quiere otorgar a Ubuntu, en función del espacio libre que le quede. Si este es el caso, Ubuntu creará automáticamente dos particiones, la partición raíz (representada por el símbolo / y que equivale al disco C: de Windows) y una partición de intercambio, comúnmente denominada swap, para usar en caso de que se quede sin memoria RAM. De este modo, al iniciar el ordenador nos aparecerá un menú de texto en el que podremos elegir con qué sistema operativo queremos trabajar.

  - Especificar opciones manualmente: Si es usted nuevo, no le recomiendo esta alternativa ya que es aconsejable saber de que le habla el programa de instalación cuando le haga determinadas preguntas. Vamos a dejarla y a suponer que ha escogido una de los dos opciones anteriores.

Lo que viene a continuación es aceptar el tamaño de disco que hemos determinado. después tendremos la oportunidad de elegir nuestra configuración de zona (o sea, el lugar donde vivimos para determinar la hora o la información meteorológica) y el idioma del teclado.

Seguidamente podremos introducir el usuario, el nombre del equipo, el nombre del usuario que manejará el PC y su contraseña. El usuario es el dueño del equipo y puede ser tanto su nombre como cualquier nombre que se invente. Pongamos que se llama Pepe López. El nombre del equipo o hostname se supone que ha de describir nuestra máquina de algún modo, y no es baladí porque lo vamos a ver cada vez que abramos el terminal de comandos, que vamos a utilizar mucho. Llamémosle por ejemplo ubuntu-pc. El nombre de usuario se corresponderá con el identificativo de la persona que vaya a trabajar con el ordenador. Si el propietario es Pepe López y también él va a ser el usuario que lo maneje, un nombre de usuario podrá ser pepelopez. Así de simple. La contraseña que introduzca a continuación será la del usuario pepelopez. Podemos determinar que sea o no necesaria para entrar en el sistema cada vez que lo iniciemos.

Una vez hecho todo esto, ya solo queda esperar a que se copien los archivos. Cuando termine el proceso, Ubuntu estará instalado y listo para funcionar.