Banner principal

miércoles, 11 de julio de 2012

Solucionando problemas (I)

Solucionando problemas (I)




Bueno esta entrada trata o intentará entrar en los problemas más comunes de Ubuntu, en un caso más concreto de Ubuntu 12.04 que es la última versión. Aunque muchos de estos problemas ocurren en cualquier versión, la única diferencia son aquellos que ocurran con el escritorio Unity.
Vamos a empezar desde que arranca el ordenador.

Perder el GRUB


Quizás este sea el más desesperante de todos los problemas, que simplemente no arranque.



Para empezar, sólo recordar que el GRUB es un gestor de arranque que le dice a nuestro ordenador donde está el sistema operativo (en que disco o partición), cuales hay y cual ha de arrancar. En sistemas Windows este gestor se llama MBR.

Esto se peude deber a muchas causas, pero las más comunes son.

1.- Haber intentado reinstalar Windows.
2.- Instalar otra distribución de Linux.
3.- Realizar una mala actualización de la distribución, cosa rara pero probable.
4.- Haber instalado un nuevo HDD (disco duro) y que hubiera algún conflicto.
5.- Fallos en el HDD.
6.- Otras causas que merece su atención única. La comunidad ofrece grandes soluciones, hay foros especializados que suelen intentar ayudar de todas las maneras posibles. 

Como consejo que ha de valer para casi todos estos errores, por lo menos hasta el punto 4, tener un CD o USB con una distribucion llamada supergrub disk, ocupa poco más de 3 MB, y ofrece un menú en castellano, y bastante sencillo de usar. En la mayoría de los casos usando la primera opción presentada solucione el problema.

En el caso de que no se tuviera ese CD/USB podemos intentarlo con nuestro Live CD de la distribución, en caso de tenerlo solo hemos de seguir los pasos aquí en el paso 2.2
El enlace es de una wiki sobre Ubuntu, muy a tener en cuenta para guardarlo en favoritos

Ahí también se describe que hacer incluso si no se tuviera un Live CD, como podreís observar no lleva más tiempo que el de copiar y el que tarde propiamente la máquina. 

No arranca el entorno gráfico


Otro gran problema. Todo va bien, llegamos al splash (pantalla de elegir usuario) ponemos contraseña, pero no pasa nada como mucho sólo vemos el escritorio. Y por mucho que reiniciemos, siempre pasa lo mismo.

La versión del 12.04 hay que tener en cuenta con el escritorio Dash, consume bastantes recursos, menos que Windows, pero aún así si tuviésemos una tarjeta gráfica de unos 4 años atrás, puede que no sea capaz de cargar.

Como siempre iremos de soluciones de menos a más.

La primera de toda, es que en el pantalla de selección de usuario escojamos otro tipo de escritorio. Ubuntu 12.04 tiene varios por defecto.

                                                       




Por defecto viene siempre Ubuntu (que es Unity)

Ubuntu-----------------------------> Unity.
Ubuntu 2D------------------------> Unity sin efectos.
Gnome Classic-------------------> Antiguo escritorio modificado de Linux.
Gnome Classic (no effects)----> Lo mismo que lo anterior pero sin efectos.

Este menú puede ir cambiando según el tiempo, ya que podemos añadir/quitar escritorios u otros añadidos a los mismos.
Así que seleccionaremos Ubuntu 2D, por aquello de que así trabajamos con Unity, que es lo que nos interesa.
Si conseguimos entrar, una vez allí podemos comprobar si tenemos los ultimos controladores de la tarjeta gráfica. Si no, toca actualizarlos.
Vamos a configuración del sistema, bien invocándolo desde el Dash o en el menú que está desde donde se apaga el ordenador, y allí está la opción de "configuración de sistema". Una vez allí, seleccionamos "controladores adicionales", buscamos la opción que más se ajuste que normalmente será el utlimo controlador.
Reiniciamos y a ver que pasa. Recordar que cuando volvamos al selector de usuario, debemos de volver a escoger el escritorio normal (Ubuntu) y probar si funciona.
En caso de que no, lo más seguro sea que nuestra tarjeta esté desfasada, ya que hemos podido cargar Unity 2D
Si nada de esto vale, lo único que nos queda es arrancar en "recovery mode" y teclear:

sudo dpkg-reconfigure xserver-xorg


Una vez ahí a seleccionar las opciones para configurar la tarjeta, dependiendo de la tarjeta hay distintas opciones.
Y con esto ya más o menos deberíamos haber solucionado la gran mayoría de los problemas con la tarjeta gráfica.

Para más aclaraciones con estos problemas, ponerlo en comentarios. Puede que tarde en contestar, pero intentaré ayudaros en todo lo que pueda.

THINK AND USE LINUX!!!!!!!





sábado, 30 de junio de 2012

Actualización


Ya hacía algún tiempo que no publicaba nada, porque realmente a nivel usuario pocas cosas han pasado importantes, me refiero a los usuarios newbies (novatos). A excepción de un par de cosillas que expondré ahora.

Ha salido la nueva versión de Ubuntu, el SO con el que trabajamos aquí, la 12.04 "Precise Pangolin", es una (LTS) Long Term Service, vamos que tendremos soporte garantizadas durante 5 años, o lo que es lo mismo, no tendríamos que cambiar de versión para tener lo más actual de nuestro programas y/o repositorios... Guay no?

Más novedades respecto a esta versión y que nos pueden afectar... Pues realmente pocos, más bien la impresión que uno se lleva es que el sistema HUD del que hablamos en anteriores entradas y el Dashboard han cobrado más importancia y más peso.

Recordemos que para invocar al HUD sólo que hay pulsar la tecla ALT y ahí tecleamos la orden que queremos según en el programa que estemos, es para darle más importancia al teclado e ir más rápido que perderse por los menús típico de "archivo, edición, etc.."

Y para el Dashboard, solo hay que pulsar la tecla SUPER-E o Windows, y ahí podemos teclear el archivo a abrir o programa.

En resumen Ubuntu tiene la clara intención de apostar por el escritorio de Unity, y hace por ello. Recordemos que en Ubuntu al igual que cualquiera otra distribución podemos escoger cualquier otro escritorio; KDE, GNOME, XFCE, y un largo etc, todos con sus características. Lo cual lo dejaremos para otra entrada, porque, por si no lo sabíais, se pueden tener varios entornos de trabajo radicalmente distintos y sin embargo comunes al trabajo y programas, la magia de Linux.

Un saludo, y recordar que usar software libre, es libertad.....

jueves, 2 de febrero de 2012

Terminal, ese espacio negro y vacio....



Hablando bash, o lo que es lo mismo manejar la temida terminal

Hace tiempo que no ponía nada, la verdad que con los pasos que he explicado, ya se puede empezar tranquilamente con Linux, ya lo tenéis casi todo resuelto.

Pero a veces, la podemos cagar y la liamos parda, para ello solemos recurrir a Internet a ver si en algún foro nos pueden ayudar. Y seguramente la encontraremos, y casi todo lo que tendremos que hacer sea en terminal, pero no os alarméis, será solo copiar y pegar, y resuelto.

Pero a veces, si nos gusta un poco la informática, nos gusta conocer un poco más profundamente el cacharro que tenemos delante, he ahí el motivo de creación de este post.

La terminal es la más poderosa herramienta de gestión de nuestro SO, con ella podemos hacer todo, TODO. Desde cargarnos el SO, hasta hacer nuestros propios y pequeños programas, y ante tal poder es normal sentir un poco de miedo. "Todo poder conlleva una responsabilidad" esta frase de Spiderman :P Tiene su claro significado aquí.
Los programadores de las distribuciones de Linux han pensado en todo y han puesto un par de seguros para que no te cargues el SO a la primera de cambio.

1.- Para hacer algo de administración has de ser "sudo" (superuser do), eso se hace escribiendo sudo en la terminal, nos pedirá la clave y una vez introducida seremos administradores TOTALES durante 15m (se puede cambiar).
2.- Al usar Linux nos daremos cuenta de que realmente solo deberíamos funcionar con la carpeta "home" que es la nuestra, y donde los programas instalarán las opciones, no donde se instalan si no donde puedes modificarlos sin quitarlos y que dejen de funcionar.

Y ya está, que como bien se dice ya somo mayorcitos.

* Recomendación, haceros una copia de seguridad de vuestra carpeta "home" en algún HDD (disco duro) externo. Por aquello de no perder la música, las fotos, documentos y como no el porno XD no vayamos a cargarnos el SO.

Al igual que como se explicó en otros posts que en Linux dispones de varios entornos gráficos (escritorios), lo mismo ocurre con las terminales, por norma general es casi toda distribución de Linux dispondremos de 4 terminales activadas y listas para funcionar. Control+Alt y una tecla de función (F1 a F4).

Una vez explicado esto, ya solo queda empezar con unas pequeñas directrices de la terminal.

La terminal, ese espacio negro en el cual está a la espera de nuestras órdenes. Muerto y sin vida, hay que decir que es muy quisquilloso.

- Diferencia entre mayúsculas y minúsculas, así que dos nombres pueden ser "fichero" y "Fichero", y ser completamente distintos.
- Errores de escritura, tales como que falte un carácter o algún error de falta de símbolo, nos dará "orden no encontrada"

Una vez dicho esto, ya sabemos que con Terminal hemos de fijarnos un poco en lo que escribimos.

Anteriormente puse que para poner comandos con categoría superusuario (administrador) solo había que poner "sudo" y después la clave. Esto está bien cuando realizamos cambios importantes en el sistema, o cuando pretendemos instalar/desisntalar algo. El porque lo hace después de una instalación/desinstalación es por que los programas cargan librerías que muchas se comparten y el quitarlas puede afectar al sistema. Para la mayoría de los programas (90%) no ocurre nada, y estos procesos no tienen ningún problema ya que incluyen sus propias librerías, así evitando que el resto se vean afectadas.

Para el resto de funciones que podemos usar, no nos pedirá que pongamos clave, sobre todo si trabajamos en "home".

Para abrir terminal, vamos al "dash" y:



Funciones de las más habituales en Terminal:

cd    Por ejemplo, cd /home/Softonic  Con este comando entras al subdirectorio Softonic dentro del directorio home. Con cd .. sales de Softonic y te quedas en /home, y con cd . actualizas el directorio, útil sobre todo en carpetas de red.

ls    Muestra el contenido de una carpeta o directorio con distintos colores, según sus propiedades. Obtendréis el mismo resultado con dir pero sin la combinación de colores.

rm    Ejemplo: rm softonic08.pdf  Elimina el archivo con ese nombre, siempre y cuando os encontréis en su carpeta correspondiente. También podéis escribir su ruta para borrarlo desde otra ubicación, como rm /home/softonic/softonic08.pdf

cp    cp softonic08.pdf /home/softonic/documentos/softonic08-2.pdf  Copia un archivo a otra ubicación. Si no especificáis la ruta de directorios y sólo escribís cp softonic08.pdf, creará una copia con ese nombre en la carpeta del original.

mv    Funciona igual que el comando anterior, pero moviendo el fichero en lugar de copiarlo.

rmdir    rmdir /home/softonic/carpeta2  Igual que rm, pero en este caso elimina un directorio o carpeta.

Una ayuda muy interesante, para no machacarnos a escribir lineas larguísimas de código es que con el tabulador podéis ahorraros el escribir el nombre completo. Si escribes sof y le das al tabulador, aparecerá softonic en caso que tengas una carpeta con ese nombre. Y así con los nombres de archivos.

kill    Si se os ha colgado una aplicación, podéis cerrarla desde el Terminal. Lo primero que necesitáis es averiguar su número PID con el comando ps aux. Os aparecerá una lista con todos los procesos. Una vez tengáis el número del proceso a cerrar, tecleáis kill y el número en cuestión y se cerrará su ventana. Esto mismo se puede hacer en entorno gráfico abriendo el "dash" y escribir monitor de sistema, es como el administrador de tareas de Windows.

Man Necesitáis ayuda con algún comando?? Pues nada, escribes "man + comando" y te aparecerá un bonito manual de como se usa y los modificadores correspondientes, eso sí, en modo texto. Se pueden poner en castellano "sudo apt-get install manpages-es manpages-es-extra" teneís que activar repositorios Multiverse, eso se explica aquí (poner enlace a como cambiar los repositorios)

Find Es quizás la herramienta de búsqueda más potente que he visto, Para usar Find hay tres tipos de argumentos: opciones, tests y acciones. La primera nos permite modificar cómo va a buscar, la segunda qué va a buscar y la tercera qué va a hacer con lo que encuentre. No os asustéis, no es tan difícil como parece. Por ejemplo, si queremos buscar un archivo que se llame “pepito” en nuestro directorio HOME, el comando a usar sería find /home/usuario -name pepito. Después podemos complicarlo un poco más. Por ejemplo, podemos añadir -executable para que sólo muestre archivos con el bit ejecutable, -mtime -k para que sólo busque entre los que han sido modificados hace k días o menos, o -delete para que borre los archivos que encuentre.

Como decía antes, la terminal de Linux nos puede salvar de un apuro. Si se nos ha colgado el sistema gráfico y la combinación Control+Alt+Backspace no funciona, podemos reiniciarlo gracias a la consola.

El truco está en las consolas virtuales de Linux. Pulsando Control+Alt y una tecla de función accederéis a una terminal. Desde ahí podéis entrar con vuestro usuario y contraseña y tratar de resolver el problema. Por ejemplo, podéis guardar algunos archivos que no hubieseis guardado o cerrar el programa que creéis que está bloqueando el sistema. También podéis reiniciar el entorno gráfico matando el proceso X.org (killall Xorg) y volviéndolo a iniciar con kdm o gdm según estéis en KDE o GNOME.

Alguna vez os tocará. Un programa antiguo, no empaquetado para vuestra distribución… Tarde o temprano tendréis en vuestras manos un montón de archivos de código que tendréis que compilar para hacer funcionar el programa. Tranquilos, no os asustéis. Esto es tan fácil como ejecutar tres comandos en la terminal (normalmente).

Los comandos suelen ser ./configure && make && sudo make install. Así de sencillo. Aun así no os fiéis de esto y leed siempre el archivo INSTALL que viene en el código y que os dice cómo compilar el código.

Un resumen de los más usados.
cd directorio Ir al directorio.
ls Muestra los contenidos del directorio.
pwd Devuelve el directorio actual.
rm archivo Borra archivo.
rm -r carpeta Borra carpeta.
mv archivo destino Mueve archivo a destino.
cp archivo destino Mueve archivo a destino.
mkdir carpeta Crea una carpeta
nano archivo Edita archivo en la consola.
find directorio [opciones] [tests] [acciones] Busca en directorio archivos que cumplan [tests] y hace lo que indiquen [acciones]
man comando Muestra la ayuda e instrucciones de comando
comando --help Ayuda breve de comando.
killall nombredeproceso Mata a todos los procesos llamados nombredeproceso
comando1 && comando2 Ejecuta comando1 y si no da error, ejecuta después comando2
comando1; comando2 Ejecuta comando1 y después comando2.
comando1 | comando2 Manda la salida de comando1 a comando2.
comando1 | grep palabra Muestra sólo las líneas de salida de comando1 que contienen palabra.
comando > archivo Guarda la salida de comando en archivo
comando | tee archivo Guarda la salida de comando en archivo y la muestra por la terminal a la vez.
ifup -a / ifdown -a Habilita/deshabilita todas las conexiones de red (requiere root)
mount disco puntodemontaje Monta disco en puntodemontaje (requiere root).
umount disco/puntodemontaje Desmonta disco o puntodemontaje (requiere root).
sudo comando Ejecuta comando con permisos de administrador.
su / sudo -i Entra en modo root permanente.
Control+Alt+F x Salta a la terminal virtual X.
fuser archivo Muestra qué procesos están usando archivo.
fuser -k archivo Muestra qué procesos están usando archivo y los mata.
$( comando ) Se sustituye al ejecutar por la salida de comando.

Atajos de teclado para el Terminal

No todo son comandos en el Terminal de Linux. También pueden usarse combinaciones de teclas para introducir comandos de una manera más ágil. Estos son los más conocidos.

Ctrl + A = Mueve el cursor al principio de línea

Ctrl + E = Mueve el cursor al final de línea

Ctrl + C = Mata el proceso que se ha iniciado desde ese Terminal

Ctrl + U = Elimina la línea donde está el cursor

Alt + F = Mueve el cursor una palabra hacia adelante

Alt + B = Mueve el cursor una palabra hacia atrás

Ctrl + W = Elimina la palabra delante del cursor

Ctrl + L = Borra todo el contenido del Terminal

Shift + Ctrl + C = Copia el fragmento seleccionado al portapapeles

Shift + Ctrl + V (o Shift + Insert) = Pega en la línea de comandos el contenido del portapapeles

Flecha Arriba / Abajo = Recupera comandos escritos con anterioridad

Con esto ya podéis haceros una idea de la potencia de terminal, para el siguiente post, pondré el cómo administrar el SO desde entorno gráfico, un poco más lento que terminal, pero igual de efectivo.


Un ejemplo de lo chulo que puede quedar la terminal integrado en el escritorio.

Esta fuente se ha usado como inspiración para crear está entrada.

Saludos.