Suscríbete: RSS Feed

COMOs



Problemas para ejecutar sudo, error sudo: unable to resolve host

Como ya he dicho otras veces, estoy usando Ubuntu Hardy desde hace un tiempo. Al ser esta una versión en desarrollo la cantidad de paquetes actualizados a diario es impresionante, en esta última etapa del desarrollo el ritmo es aún más frenético. Dispongo de conexión para bajar todo eso a diario, pero por simple salud mental/comodidad suelo bajar updates más o menos cada semana.

Esto hace que de una vez a la siguiente haya sorpresas, como la que he tenido hoy. Al ir a bajar los paquetes he ido a hacer update y dist-upgrade y me he encontrado con que no podía pasar de la primera etapa:

~$ sudo apt-get update
sudo: unable to resolve host nombreequipo

"nombreequipo" es el nombre de este ordenador.

Vale. La solución era muy sencilla porque enseguida he visto de donde venía el problema. Ayer mismo estuve tocando el "grupo de trabajo" del sistema de conexión de red compatible con windows, para poder acceder a otra computadora de mi red local. Por ese motivo en los hosts de mis conexiones de red mi PC ya no se llamaba "nombreequipo", sino "nombreequipo.GRUPODETRABAJOWINDOWS". Por eso el "sudo" no podía encontrar este equipo.

¿Cómo se soluciona?

  • Si tienes configurada una contraseña de root (y siempre deberías configurar una justo después de la instalación) puedes entrar como root y modificar el archivo /etc/hosts, en concreto la línea "127.0.1.1" para poner el nombre original del equipo.
  • Si no tienes configurada una contraseña de root hay una solución que te servirá también. En la bandeja del sistema (junto al reloj) haces click sobre el icono de configuración de red para seleccionar configuración manual. Ahí seleccionas la pestaña de hosts (anfitriones), desbloqueas el panel con tu contraseña de sesión actual y modificas la entrada para 127.0.1.1.

De hecho, ahora que lo pienso, esta última solución es incluso más rápida y también para los que tienen contraseña de root (a éstos les sirve todo, claro, para eso son supervacas).

Una vez hecho este pequeño cambio, seremos capaces de activar sudo sin problemas para realizar la acción que queramos. Es tan sencillo que no sé si le servirá a alguien, pero lo dejo aquí para los paracaidistas que puedan aprovecharlo.



COMO mostrar en Drupal 5 un bloque con las categorías a lo Wordpress

Drupal es un CMS estupendo, quizá excesivo para un simple weblog, pero desde luego es un gran CMS (no en vano ha sido elegido mejor CMS libre de 2007). Los que leen este blog regularmente ya saben que desde el principio (y ya hace algún tiempo...) uso Drupal para su gestión y aunque alguna vez pensé la migración a Wordpress, me alegro de no haberla hecho (uso wordpress en otros sitios y aún siendo enormemente sencillo de utilizar, no me da todo el manejo que sí me da éste).

Pero los que han usado/usan Drupal saben que hay pequeñas cosas a las que sus desarrolladores no prestan atención. Siendo un CMS fantástico, hay pequeños detalles que ayudan a que la cosa sea más amigable para todos. Es el caso que comentamos en este post: cualquiera que haya usado Wordpress sabe que casi todos los temas listan un pequeño bloque con las categorías y el número de posts incluídos en cada una. Veamos como ejemplo una captura de Vive Málaga (un blog construido sobre Wordpress).

¿Entendido? Pues nosotros, como buenos drupaleros, queremos exactamente lo mismo. No queremos ser menos que un usuario de wordpress cualquiera, capisci? No es tan difícil, aunque yo soy un patán que sin ayuda no hace nada, la solución es tan fácil como crear un bloque que ejecute código PHP y pegar el siguiente código (recuerda que esto es válido para Drupal 5):

$vid = 1; // Donde el $vid lo debes ajustar al id del vocabulary para el que quieres crear el bloque de categorías
$items = array();
$terms = taxonomy_get_tree($vid);
foreach ( $terms as $term )
{
$count = "(".db_result(db_query("SELECT COUNT(nid) FROM {term_node} WHERE tid = %d", $term->tid)).")";
$termdepth = "";
for ($i=0;$i<$term->depth;$i++)
{
$termdepth = $termdepth . "-- ";
}
$items[] = $termdepth . l($term->name, "taxonomy/term/$term->tid") . " $count";
}
if ( count($items) ) { print theme('item_list', $items);}
?>

Y eso es todo, ¿ven qué fácil? Espero que a algún usuario de Drupal esto le sirva, a mí me ha hecho un rey (antes cada vez que hacía una categoría nueva tenía que ir modificando el código html de un bloque que yo mismo hice, y la mitad de las veces lo olvidaba así que era un desastre).

*** Lo encontré como siempre, en la red donde todos los trucos buenos (y algunos malos :P) se comparten. En concreto lo ví en el portal de usuarios Persas de Drupal, para que luego digan que de Irán sólo salen cosas malas :)



CÓMO activar efecto tipo Expose de Mac OS X en Ubuntu Gutsy

Este es uno de esos COMOs o How to de baja tecnología que yo suelo poner. En esta ocasión vamos a recuperar el efecto «tipo expose à la Mac OS X» que venía por defecto en versiones de Ubuntu/Compiz anteriores a Feisty y que eché de menos en Gutsy. Luego me enteré que habían cambiado el modo en que se activaba... ¡así sin avisar ni nada!. Es una pequeña putada porque este efecto, a parte de ser visualmente atractivo, nos va a ayudar a acceder en cuestión de nada a cualquier ventana que necesitemos. Una vez que te habitúas a usarlo es difícil estar sin él, porque te ahorra tiempo.

Espero que para la próxima Hardy Heron mejoren este tipo de detalles y no dejen a los usuarios colgados, buscando cosas donde ya no están... algo tan propio de la gente del lado oscuro.

Bueno, vayamos al grano.

  1. Lo primero que tenemos que hacer es instalar los Drivers para nuestra tarjeta gráfica, de forma que la aceleración 3D esté permitida. En el caso de mi tarjeta gráfica, Intel X3100, los drivers son libres así que están disponibles sin ningún problema. Si tu tarjeta fuera otra, necesitarías instalar cualquier software necesario para que funcione correctamente.
  2. Vamos a instalar Compiz y xserver-xgl. Una vez expliqué cómo hacerlo con una tarjeta nVidia y drivers privativos. Esta vez será más fácil. Abrimos un terminal de comandos (sé que se puede usar synaptic, pero de verdad es más cómodo con la terminal de comandos), y ejecutamos:

    $ sudo -s
    # apt-get install compiz xserver-xgl

    (nos preguntará si queremos instalar algunas cosas más además de compiz, aceptamos)

    # apt-get install compizconfig-settings-manager

    (este es importante porque nos añade a nuestro menú de preferencias un programita de configuración con una interfaz fácil de usar).

  3. Cerramos la terminal, que la teníamos como superusuario y no es bueno dejarla abierta. Es posible que al haber instalado el nuevo servidor de X (xserver-xgl) debamos reiniciar las mismas para que funcione correctamente. Para ello cerramos todas las aplicaciones que tengamos abiertas, cerramos sesión (ojo, no reiniciar) y reiniciamos el servidor de X de forma segura pulsando SHIFT+ALT+DEL (Nota: DEL no es SUPR, sino la tecla de borrado que hay arriba de ENTER).
  4. Habilitar Expose. El problema con este efecto es que en versiones anteriores estaba en otro sitio, con lo cual si instalaste Gutsy sobre Feisty deja de funcionar y si instalaste Gutsy y fuiste a buscarlo donde estaba en Feisty no encontraste nada.
    1. En el menú de Gnome vamos a «Sistema>Preferencias>Advanced Desktop Effect Settings» y lo ejecutamos.
    2. Vamos a la sección de Windows Management y habilitamos el plugin «Escalar».
    3. Vamos a la pestaña Acciones. enemos activo «Iniciar selector de ventanas» con un atajo de teclado. Yo prefiero activar «Iniciar selector para todas las ventanas», que nos permitirá buscar entre las ventanas que tengamos en todos los espacios de escritorio, aunque esto es -obviamente- opcional
    4. Para ello asignaremos a esta nueva opción un atajo de teclado (el que más nos guste, yo he asignado SHIFT+ALT+Z, por tenerlo todo junto. Además he asignado un gesto de ratón (llevar el ratón a la esquina superior derecha, TopRight).
  5. Aceptamos todo y salimos. Ya tenemos el efecto expose de Compiz funcionando tal y como venía en Feisty y anteriores. ¿Fácil? Yo diría que sí.

Con esto hemos acabado por hoy. ¿Les ha sido de ayuda? Eso espero, porque la sensación de perder el tiempo es chunga :)



Instalar Ubuntu Feisty en chipset Intel 965gm con gráfica intel x3100

En anotaciones anteriores ya dije que estaba teniendo problemas para instalar Ubuntu en mi nuevo portátil, debido a problemas con la tarjeta gráfica. Bien, los problemas se deben únicamente a que el hardware es muy nuevo, de hecho Intel comenzó a venderlo después de estar publicada Feisty, motivo por el cuál ésta no incluye los drivers para este hardware. Sin embargo los drivers estaban disponibles en la página que Intel tiene para sus drivers de Linux desde el primer día, el único problema es que habría tenido que compilar drivers de tarjeta gráfica, drivers de wifi, módulos de kernel específicos y luego el kernel mismo... Demasiado complicado, ¿no creen?

Ahora podemos hacerlo de una forma algo más sencilla. Evidentemente, Feisty tal cual, si bajamos el CD, sigue sin instalarse. Pero si nos da igual pelearnos con la consola de comandos (y si te has comprado un nuevo portátil con este hardware y quieres instalar Ubuntu seguro que te da bastante igual :D) lo podemos hacer en muy poco tiempo. No es nada complicado y además lo voy a explicar paso a paso, así que aunque seas nuevo no tienes nada que temer. Por otra parte toda la información sobre este tema parece estar en inglés (motivo de más para escribir la guía en español).

¿Qué necesitamos?
  • Un portátil con chipset intel 965 gm y tarjeta gráfica X3100 también de Intel. Evidente, si no buscas eso ni tienes problemas ni este COMO te soluciona nada... :)
  • Un cd de Ubuntu v7.04 (Feisty Fawn), versión alternate (versión alternate, esto es MUY importante, ya que la versión «normal» falla al iniciar el sistema). Esta versión instalará Ubuntu en modo texto, sin iniciar el sistema autónomo (live) y sin instalador gráfico. Es menos «guay», pero es la única opción que tenemos y además es más rápida. Hay gente que le gusta el sistema de instalación en modo Live, a mí no me gusta así que esto tampoco me jode mucho.
  • A menos que tengas memoria de elefante, normalmente necesitarás tener acceso a este CÓMO, así que búscate otro PC del que ir leyendo, imprímelo, o apúnta los 3 o 4 comandos clave que ejecutaremos (el que avisa no es traidor). Si nunca has peleado mucho con la consola de comandos no te asustes, está todo aquí muy bien detallado así que no hay nada que temer.
  • Agua caliente, una infusión a elegir, cubitos para enfriarla (¿para esto no necesitáis un COMO, verdad?). Esto lo usaremos durante la instalación, son solo 10 o 15 minutos pero mejor si no nos quedamos mirando una pantalla azul con una barrita roja...


Ahora vamos al grano con lo que nos ha traído hasta aqui.

1. Instalar Ubuntu
Asumo que ya habéis bajado y quemado el CD de Ubunu Feisty (versión alternate). Hacemos una instalación en modo texto. Supongo que no tendréis mayores problemas pero por si las moscas hice hace tiempo un CÓMO instalar Ubuntu Linux en sistema dual que está algo desactualizado, pero que considerando que vamos a hacer instalación en modo texto puede ser útil. Le dais a instalar, seleccionáis las opciones de localización (hora, ciudad, distribución de teclado...) y os preparáis la infusión que más os guste (té, café, ¿algo para la resaca?).

2. El problema de las X durante la instalación
Al instalar Ubuntu, ésta se va a instalar correctamente, salvo porque va a intentar configurar tu sistema gráfico («las X») y no lo va a conseguir. Ojo, el proceso es normal y parece que se configuran bien pero no es así. Si queréis podéis arrancar el sistema tal y como te dice al finalizar la instalación (quitar CD e iniciar sistema), pero creo que no vale la pena perder tiempo. No funcionará. Así que cuando el sistema reinicie, en el selector de GRUB escogéis Ubuntu 2.16.20-XXX (Recovery Mode)

3. Añadiendo los repositorios necesarios
Ahora necesitamos que Ubuntu mire en todos los repositorios, no sólo en los libres. Desde la consola de comandos a la que llegamos cuando iniciamos en modo recovery ejecutamos:

~# nano /etc/apt/sources.list

Y quitamos la # delante de todas las lineas de repositorios. A continuación actualizamos la instalación:

~# apt-get update
~# apt-get dist-upgrade

Esto nos instalará el kernel último con los módulos restringidos que ahora ya no necesitamos recompilar, ¿no es magnífico? :)


4. Añadiendo drivers de Intel
Ya casi estamos listos. Hemos instalado nuestro Kernel nuevo que ya no da errores y ahora necesitamos los drivers de Intel para nuestra tarjeta gráfica. Los drivers que hay disponibles son para la tarjeta Intel X3000, y funcionan bien con la nuestra en el escritorio «normal», pero nos va a dar algún problema en escritorios 3D (Compiz, Beryl, y cualquier otro XGL), que veremos más adelante. Por tanto aunque nos sirvan, no son los definitivos, si bien estos permiten configurar el sistema. Alguna gente dice que el renderizado del texto hace que se vea borroso... no es mi caso. Para instalar los drivers:

~# apt-get install xserver-xorg-video-intel

5. Reconfigurando las X
Y una vez que tenemos eso instalado reconfiguramos las X

~# dpkg-reconfigure xserver-xorg

Durante la reconfiguración de las X normalmente todas las opciones por defecto nos van a servir, sólo un par de notas:

  • En el apartado «drivers de video», seleccionamos Intel en lugar de vesa (o cualquier otro que nos pueda sugerir).
  • En el apartado «resoluciones que usaremos» marcamos la que queramos usar, yo marqué la máxima de mi monitor 1280x800.
  • En el apartado de aceleración 3D marcamos todos los módulos. Nos hará falta tenerlos activados cuando queramos instalar gestores de ventanas con aceleración 3D como Beryl, Compiz o similares.


6. XGL
Pues bien, es aquí donde no he conseguido llegar todavía. El problema está claro: los drivers que estamos empleando son para una tarjeta inferior (algo más antigua) y funcionan bien para escritorio 2D (de hecho funcionan perfectamente), pero al no ser específicos para la tarjeta tienen problemas con el renderizado 3D de los servidores XGL. En principio tenemos nuestros drivers instalados y Ubuntu nos da la opción de activar Compiz (Sistema>Preferencias>Open GL). Sin embargo, hagas lo que hagas unos segundos después de activar Open GL el escritorio se congela. Podrás mover el ratón pero nada más. El problema reside, sin duda, en problemas con los drivers gráficos, pero es que estamos usando unos drivers que se pensaron para la tarjeta anterior. Habrá que esperar a que estén disponibles los nuevos ellos para poder disfrutar de nuestro «cubo». Actualización 2007-06-21: Dicen en la sección de bugs de Ubuntu de Launchpad que actualizar a Gutsy Tribe 1 (alpha 1 de la Ubuntu 7.10) soluciona el problema de congelación de la 3D. Si te gusta vivir al filo de la navaja ya sabes lo que hacer. Sin embargo, yo no lo he probado y no lo recomiendo (al menos si necesitas tu ordenador para trabajar) porque la Alpha 1 seguro soluciona ese asunto, pero es un sistema en desarrollo y (seguro) altamente inestable que se puede romper en cualquier momento haciéndote perder la tarde reinstalando y (con algo de mala suerte) parte de tu trabajo. Pero ahí queda el aviso.

7. Referencias
Pues a ver... sobre la pista de usar un alternate CD me puso Foncu en los comentarios a la entrada donde expliqué que tenía problemas con Ubuntu y el portátil. En principio eso no resolvió nada, ya que tampoco pude configurar las X. Pero un par de semanas después, y ya totalmente cansado de vagabundear por distintas distribuciones (probé hasta Fedora y OpenSuSE, y mira que las odio visceralmente xD) que no me terminaban de gustar y bastante cabreado por tener que vivir en windows XP, decidí darme otra oportunidad y en Ubuntu Forums leí que ya había drivers empaquetados para el mismo chipset y la tarjeta X3000... Decidí que probar no sería tan grave y aquí está el resultdo.

8. Conclusiones
Dicho esto hay que añadir que podemos reiniciar el sistema completamente o directamente arrancar las X (~#  startx), yo soy partidario de reiniciarlo completamente. Por lo demás Ubuntu se comporta como casi siempre: Reconocimiento de hardware total, incluso la WiFi se configuró sola durante la instalación. Esa normalidad también incluye los defectos propios de un sistema (feisty) al que le faltó un hervor, un par de meses más para dejarlo muy bien plantado como dejaron la Dapper. No ha sido fácil echarlo a andar porque me compré un hardware demasiado nuevo, pero ya está... todo instalado y funcionando casi bien. A ver si Tengo problemillas menores pero ya no parecen tan graves.



COMO instalar Beryl en Ubuntu Feisty (con nVidia y drivers privativos)

Parece que está de moda tener el escritorio muy bonito y muy perfectamente decorado. Creo que además la culpa hay que echársela a la inexistente (al menos en la visión para usuarios pobres) interfaz Aero de Windows Vista. Pues bien, aquí estamos nosotros con un COMO de los que estamos acostumbrados a hacer: COMOs sencillitos de baja tecnología ;)

Como en Linux tenemos un sistema no menos bonito de gestión de ventanas (Compiz-Beryl) y en Ubuntu no es especialmente complicado de instalar, vamos a ver cómo lo hacemos. Hemos dicho que no es muy complicado, pero si no lo hacemos bien podemos estropear alguna cosa. Este COMO sirve para instalar Beryl con tarjetas nVidia que requieren drivers privativos para usar las capacidades 3D (que son medio nuevas o nuevas). Los usuarios con tarjetas ATI creo que no tienen ningún problemas porque los drivers gráficos que Ubuntu trae de serie ya funcionan a la perfección (según tengo entendido).

Es posible que nuestra tarjeta gráfica requiera drivers privativos para funcionar correctamente, si no los necesitamos podemos ir directamente al punto 3. Y no te olvides de revisar que tienes activado el repositorio  «multiverse», imprescindible para instalar software privativo.

1. Instalar los módulos del kernel restringidos. Estos son módulos que no se incluyen de serie debido a cuestiones de licencias. Para tu versión de kernel (que usualmente será algo como linux-image-2.16.XX.XX-ubuntu) habrá un paquete con nombre parecido y el término «restricted». Búscalo con synaptic y lo instalas. ¿Fácil?

2. Ahora que tenemos instalados los módulos «feos» para el kernel,  instalamos los drivers privativos. Para ello vamos a «Sistema>Administración>Gestión de controladores restringidos». Nos dirá que nuestros drivers privativos no están habilitados. Marcamos esa casilla, descargamos los drivers y los instalamos (asegúrate de tener activado el repositorio «multiverse» de software privativo).

3. Instalamos Beryl. Seguimos los pasos que encontramos en el wiki de Beryl.

1. Abrimos un terminal y ejecutamos:


sudo echo "Beryl & nVidia installation script for ubuntu Ubuntu Feisty"

(usamos sudo para que no nos la pida luego, ya que usamos un texto multilínea que no debe ser interrumpido).


2. Copiamos y pegamos este texto completo en el terminal, de una vez [Selecciona el texto, ve al términal y haces click en el botón central -la rueda-].


echo "¡Instalacion completa!"
echo -e "Cierra la sesión y reinicia las X pulsando \e[0;31mCTRL+ALT+BACKSPACE\e[0m "
cp /usr/share/applications/beryl-manager.desktop ~/Desktop/beryl-manager.desktop
sudo cp /usr/share/applications/beryl-manager.desktop /etc/xdg/autostart/beryl-manager.desktop
sudo nvidia-xconfig --add-argb-glx-visuals
sudo apt-get -y install beryl beryl-manager emerald-themes
sudo apt-get update
-O- | sudo apt-key add -http://ubuntu.beryl-project.org/root@lupine.me.uk.gpgwget
feisty main" | sudo tee -a /etc/apt/sources.list http://ubuntu.beryl-project.orgdeb-src
feisty mainhttp://ubuntu.beryl-project.orgecho "deb
sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup.beryl-script
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup.beryl-script


3. Cerramos la sesión y reiniciamos las X usando [CTRL+ALT+BACKSPACE].

Este sistema sirve para instalar beryl en muy poco tiempo, pero si no hemos preparado adecuadamente nuestra instalación (módulos de kernel, drivers) no funcionará y no sólo eso, sino que nos estropeará la configuración de las X (nada que no solucione un pequeño backup del archivo «xorg.conf», pero mejor no tener contratiempos, ¿no?).

¡Que aproveche!



Consejos para proteger tu ordenador en 20 minutos

Vía Miguel Almeida encontramos esta "guía para proteger tu ordenador en 20 minutos". Se trata de 20 pequeñas cosas que podemos hacer para convertir nuestro ordenador en algo más seguro. Estoy convencido de que muchos usuarios ya cumplen la mayoría, pero para el resto seguro que viene muy bien. Así que la pongo (nunca está de más).




CÓMO proteger el acceso a directorios web con .htaccess

Vamos a explicar en varios sencillos pasos cómo proteger el acceso a directorios web con .htaccess, de modo que podamos crear áreas de trabajo y acceso solamente para las personas que queramos.

1. Creando el archivo .htaccess
Para proteger el acceso a determinados directorios usando .htaccess, es necesario tener en dicho directorio un archivo .htaccess con al menos cuatro líneas:

AuthName "Introduce tu usuario/contraseña"
AuthType Basic
AuthUserFile /.htpasswd
require valid-user

El bloqueo afectará a ese directorio y a todos sus subdirectorios, de modo que si lo ponéis en el directorio raiz afectará a toda la web.

¿Qué significa cada una de esas líneas?

  • AuthName: es el texto que aparecerá en la ventana de «login», y lo podéis cambiar.
  • AuthType: Sólo es posible el módo Basic, se están desarrollando métodos más seguros pero de momento no funcionan bien.
  • AuthUserFile: Es el archivo que contiene las contraseñas, le puedes poner el nombre que quieras pero manteniendo ese nombre te aseguras que nadie verá su contenido (algo realmente importante pues ese fichero almacena las claves cifradas, pero es cifrado de una clave susceptible de ser atacado por fuerza bruta.
  • require: Esta línea sirve para definir qué usuarios tienen acceso, dejando «valid-user» cualquier usuario que introduzca su clave correcta tiene permiso.


2. Creando el archivo .htpasswd

Ya hemos mencionado antes que necesitamos un archivo .htpasswd. Este archivo consiste en una serie de líneas, cada una contiene un nombre de usuario y su contraseña separados por el símbolo ":". Las contraseñas, como ya hemos mencionado, no están en texto claro, sino cifradas. Para cifrar la contraseña en la consola de comandos puedes escribir

~$ htpasswd <fichero> <usuario>

Y te preguntará la contraseña en una nueva línea. La escribes y el resultado será algo parecido a:

usuario1:WrU808BHQai36
usuario2:iABCQFQs40E8M
usuario3:FAdHN3W753sSU

Para hacer login, el usuario introduce las contraseñas en forma «normal», no en este formato cifrado (¡claro!).


Permitiendo acceso a grupos de usuarios
Si queremos restringir varios directorios pero no todos van a ser utilizados por las mismas personas nos interesará agrupar los usuarios en grupos y definir en el htaccess qué grupo puede ver qué directorio. Eso lo hacemos modificando la línea require del archivo .htaccess, en lugar de poner lo explicado en el primer punto vamos a poner:

require group amigos
AuthGroupFile /misgrupos

El archivo «misgrupos» (en este ejemplo está en el mismo directorio que .htaccess y .htpasswd) está formado por líneas de este tipo:

grupo1:usuario1 usuario2
grupo2:usuario2 usuario3
grupo3:usuario1 usuario3

Con .htaccess se pueden llevar a cabo multitud de acciones mucho más complejas que éstas, desde crear redirecciones hasta evitar el acceso a ficheros concretos, pero no es el fin de este cómo explicar todo eso, sino simplemente ayudar a proteger directorios en nuestros sitios web.


Distribuir contenido