viernes, 25 de enero de 2013

#13 Locate: Encontrar archivos rápidamente

mlocate es un programa para la terminal que crea una base de datos con los archivos del disco duro (del estilo del neopunk pero en cuestión de pocos minutos).
En otras distribuciones está preinstalado, en ArchLinux no. En Arch se encuentra en los repositorios "core".

$ sudo pacman -S mlocate

Para crear la BD basta un:

$ sudo updatedb

Y para encontrar, por ejemplo, dónde se esconde java se haría un:

$ locate java

Es muy útil sobretodo si vienes de otras distribuciones en las que los archivos de configuración están en otros sitios y no te apetece/acuerdas de hacer un find.

Nota: También sería interesante añadir el updatedb al cron, o un alias al .bashrc, pero eso ya os lo dejo a vosotros ;).

Hasta otra!

viernes, 2 de noviembre de 2012

#12 Caja debora la CPU

Si usas MATE y últimamente no visualizas correctamente las miniaturas de las imágenes, vídeos y además ves que el administrador de archivos de mate, Caja consume CPU como un poseso, no te preocupes, aquí tienes la solución que he visto en no sé qué blog mientras corrigen el buggie:


$ mkdir $HOME/.cache/thumbnails
$ cd ~
$ rm -r .thumbnails/
$ ln -s .cache/thumbnails .thumbnails

Después de esto todo y reiniciar (si el comando $ caja -q no funciona) irá perfecto. Saludos.

domingo, 14 de octubre de 2012

#11 Arreglar reinicio en Acer Aspire One Happy 2

Hola chapuzeros,

si tenéis la suerte de tener un feliz netbook "Acer Aspire One Happy 2" y el reinicio se os cuelga en ArchLinux, he aquí la solución mientras aplican de una fruta vez el parche:

$ sudo nano /boot/grub/grub.cfg

y añadir (yo sólo lo cambio en la primera configuración del núcleo, la otra casi nunca la he tenido que usar) lo que está en negrita subrayado:

linux /boot/vmlinuz-linux root=UUID=5c60c19e-b16a-4367-8b1e-5bf3b435e7fa ro reboot=kbd quiet

Este cambio no es persistente, si sale otro núcleo adiós reinicio, para hacerlo persistente había que tocar otro archivo (seguramente en /etc). Si algún día lo busco y lo hago actualizaré esto, mientras se queda así, hecho una chapuza que es lo que toca.

¡Hasta otra arch-marineros! :v

martes, 4 de septiembre de 2012

#10 Debug-Cout

Hola archapuceros,
está entrada va dirigida a programadores, que supongo que serán bastantes de los que usen este SO.
Mirando por aquí y por allá buscaba una manera de al depurar a mano un programa activar o desactivar determinadas salidas por pantalla, así que cree los "dcout", debug-cout. Poniendo el código en la cabecera, si está definido DEBUG se activarán, si comentamos esa definición o lo hacemos más bonito poniendo NDEBUG se desactivaran.

Código:


#define DEBUG

#ifdef DEBUG
#define dcout cout
#else
#define dcout NULL && cout
#endif

Creo que no hace falta ninguna explicación del código, así que me despido. Espero que esto os lleve a buen puerto, hasta otra ¡arch marineros!

jueves, 9 de agosto de 2012

#9 Arranque dual con Grub2

Visto que de ahora en adelante usaremos Grub2, apuntaré cómo configurarlo para que podamos arrancar Windows 7.

Lo primero es anotar en qué partición está el Loader de Windows, para esto se puede usar gparted, que al verlo gráficamente nos sudarán menos las manos, en mi caso, el Loader está en /dev/sda2:


Montamos la partición:

$ sudo mount /dev/sda2 /mnt


Obtenemos el uuid (un identificador), este comando devolverá el identificador:

$ sudo grub-probe --target=fs_uuid /mnt
2CE4997AE49946CC


Editamos éste archivo en el que podemos poner nuestras configuraciones personalizadas y serán incluidas en el grub.cfg:

$ sudo nano /etc/grub.d/40_custom 


Añadimos, sin eliminar la primera línea, el texto siguiente con el uuid obtenido anteriormente:

menuentry "Microsoft Windows 7" {
    insmod part_msdos
    insmod ntfs
    insmod search_fs_uuid
    insmod ntldr
    search --fs-uuid --no-floppy --set=root 2CE4997AE49946CC
    ntldr /bootmgr
}


Generamos el grub.cfg:

sudo grub-mkconfig -o /boot/grub/grub.cfg

Desmontamos el Loader:

sudo umount /mnt 


That's all folks!

PD: Sí, no tengo partición SWAP, vivo al límite.

martes, 31 de julio de 2012

#8 Cómo conectarse por terminal a una red WiFi

Esto es muy importante al instalar el sistema desde 0, ya que si de normal nos conectamos por WiFi es mucho más cómodo seguir haciéndolo, y el problema está en que si la seguridad de nuestra red es WPA no es trivial, no lo era hasta ahora. De todas formas pondré la WEP también, y de la WPA sólo en el caso más simple, es decir, sin claves personales.

  · WEP:
# iwconfig wlan0 essid "Nombre de la red" key s:contraseñaenascii

Nótese que si la red no tiene espacios, no hacen falta las comillas, y que si la contraseña no es una cadena (string) no es necesario poner s:.

Por último, para obtener automáticamente la IP y no tener que configurar IP/Máscara, Puerta de enlace y DNS:

# dhcpcd


  · WPA:
Este es el método más rápido que sé me ha ocurrido. Primero hacemos una copia del archivo de configuración a una ruta sencilla:

# cp /etc/wpa_supplicant/wpa_supplicant.conf/w.conf

Ahora editamos la copia, si es con nano recomiendo pasar páginas con [Ctrl] + [v] hasta que lleguemos a la primera definición de una red:
network={
ssid="simple" 
psk="very secret passphrase" 
priority=5 
}

La editamos cambiando los parámetros por los de nuestra red:
network={
ssid="Mi Red"
psk="Póngase la contraseña"
priority=5 
}

Bajamos el curso abajo, debajo de la llave que cierra la definición de esta red y con la opción de cortar lineas de nano [Ctrl] + [k] borramos el resto del archivo, que contiene ejemplos más complejos para otro tipo de redes. Cerramos [Ctrl] + [x], y guardamos los cambios [y].

Ahora ejecutamos el siguiente comando, proporcionado por Aetsu (he aquí su blog, muy recomendado):

# wpa_supplicant -Dwext -i wlan0 -c/w.conf -K -B

Nótese que: -D es el driver, -i la interfaz a usar, entre -c y /w.conf no hay espacio alguno, y -B es que se ejecute en el fondo.

Y por último ejecutamos el dhcpcd:

# dhcpcd

Después de acabar todas las tropelías, es muy recomendable borrar /w.conf, ya que ahí tendremos nuestra contraseña de la red sin cifrar (o ¡sin encriptar, wey! (sic)) en texto plano:

# rm -f /w.conf

¡Saludos, Ar-chapuceros!

jueves, 9 de febrero de 2012

#7 Configurar el idioma del teclado

Otra cosa que es bastante molesta es que el teclado no esté configurado por defecto (en mi caso en español). Sobretodo si tu contraseña no es 12345. O que un usuario sí que lo tenga en español, pero al pasar en una consola a otro usuario, a root, por ejemplo, coja su configuración y andemos perdidos. Lo mejor y más cómodo es tocar las entrañas de nuestro SO para que esto se quede fijo por defecto en todos los usuarios.
Para esto hacemos:
  • sudo $EDITOR /etc/X11/xorg.conf.d/10-evdev.conf
Y la sección del teclado la dejamos como sigue, añadiendo la opción que configura el teclado como "es":
  • Section "InputClass"
  •         Identifier "evdev keyboard catchall"
  •         MatchIsKeyboard "on"
  •         MatchDevicePath "/dev/input/event*"
  •         Driver "evdev"
  •         Option "XkbLayout" "es"
  • EndSection
That's all folks!