ReceTas71-80

De GhostWiki
Saltar a: navegación, buscar
Secciones

HomePage¿Qué es e-ghost?ProyectosHerramientasDocumentosRecetasCursos ReunionesEnlacesHumorGhostLogAlternativas LibresContactoEuskaraz

Las Recetas de la Abuela (71 a 80)

En esta sección podremos ver los típicos truquillos que todo el mundo sabe pero nadie recuerda. Si quieres incluír una receta, infórmate en nuestra lista de correo cómo hacerlo. Si ya conoces cómo, introduce una nueva receta aquí.

Recetas, de la 71 a la 80


Receta_80

Título: Cómo cambiar el color de la fuente de la shell

Autor/a: Txus Sánchez (txusinho)

Por regla general en nuestro archivo .bashrc tendremos algo parecido a esto:

export PS1='h:w$ '

Pues para ponerlo en color rojo, por ejemplo, le escribimos esto:

export PS1='\[\033[0;31;1m\h:\w\$ '

Guardamos el .bashrc y voila. La lista de colores la tenéis aquí

#Receta_79

'Título:' Compilar kernel de Linux 2.6

'Autor/a:' Javier Ortega Conde (Malkavian)

0º- Paso previo: bajar un kernel de algún sitio ya sea en paquetes con el sistema de instalación de tu distribución o a mano (como hago yo) de http://kernel.org o alguno de sus servidores espejo (mirrors). En este segundo caso habrá que descomprimirlo en /usr/src y luego crear un link simbólico llamado linux que apunte al directorio que se creará al descomprimir. Después entrar al directorio linux (el enlace al directorio real).

1º- 4 opciones: - make config <------ Modo texto, te va preguntando cada cosa :S - make menuconfig <---- Modo semigráfico, con menús, más comodo - make xconfig <---- Modo gráfico con KDE, también cómodo - make gconfig <---- Modo gráfico con Gnome, también cómodo

El make menuconfig necesitará que tengas instalas las librerías de desarrollo de ncurses (llamadas libncurses-dev o similar) y los modos gráficos de kde y gnome lo equivalente para ellos ( libqt3-mt-dev y como se llame la de gnome).

En este paso deberás elegir todo lo que quieres que funcione en tu ordenador con ese kernel (=núcleo). Tarjetas de sonido, chips controladores de discos duros, sistemas de ficheros... Las primeras veces que se hace es una liada porque hay mil cosas y hay que andar mirando la ayuda para enterarse de que narices es cada opción, pero con el tiempo se le pilla el truco...

2º- make Esto compilara el nucleo y sus dependencias así como lo que hayas elegido como módulo. Con los kernels 2.4.XX hacía falta hacer

      - make dep
      - make clean
      - make bzImage
      - make modules

pero ahora todo eso se hace con sólo poner

      make

3º- Si con Shift+====RePag vuelves un poco para atrás verás donde te dice que ha dejado el kernel compilado. Copialo a algún sitio. Lo habitual es copiarlo al directorio /boot y yo le suelo poner el nombre que me da la gana para identificar cual es ese (puesto que se puede tener varios y al arrancar elegir cual se quiere usar).====

4º- make modules_install Esto es para que los modulos ya compilados en el anterior paso se pongan donde se tienen que poner.

5º- Dos opciones: - Configurar el lilo/grub automáticamente con un comando. Nunca he hecho esto, yo lo hago a mano, así que no se como es esto exactamente. -Configurar a mano LILO o Grub (los programitas que al arrancar nos dejan elegir si queremos arrancar GNU/Linux o Windows o lo que sea...) Para eso lo mejor es que veas como tienes el archivo actual de LILO ( /etc/lilo.conf ) o de Grub ( /boot/grub/menu.lst ) y copies las líneas que tengas del antiguo kernel de linux que tenías y las peges algo más abajo y edites para que esa opción tenga otro nombre al salir en el menú ese que sale al arrancar y para que apunten a tu nuevo kernel. Conviene dejar las líneas del kernel antiguo porque así si el nuevo falla por alguna razón (algo que te has olvidado de poner por ejemplo) puedas arrancar el viejo y corregir lo que esté mal y así ir refinando el nuevo kernel hasta que te funcione todo bien.

6º- Instalar LILO o Grub en el MBR (Master Boot Record) del disco desde el cual arrancamos:

Para lilo ejecutaremos: lilo

Para Grub ejecutaremos: grub-install /dev/hda <---- O el disco duro que corresponda si no es hda.


#Receta_78

'Título:' Convertir peliculas a formato PSP (MP4) desde GNU/Linux

'Autor/a:' Alayn Gortazar (Zurt)

'Modificado por:' Cymo

Descargar la última versión del ffmpeg para asegurarse de que habilitamos todas las librerias necesarias. Probablemente no sea necesario en todas las distribuciones, pero yo he necesitado hacer esto para poder usarlo en Ubuntu Breezy:

Cymo> Vaya, parece que han cambiado el server de CVS, ahora se entra con subversion

svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg

Cymo> Para poder compilar posteriormente el ffmpeg, es necesario tener instaladas las librerías de desarrollo siguientes:


libfaad2-dev libfaac-dev liblame-dev

$ sudo apt-get install libfaad2-dev libfaac-dev liblame-dev libvorbis-dev

Ir al directorio donde se han bajado las fuentes y configurar la instalación.

$ cd ffmpeg

Cymo> Vaya, parece que han cambiado algunas opciones...

$ ./configure --enable-libmp3lame --enable-libogg --enable-libvorbis --enable-libfaac --enable-libfaad --enable-gpl --prefix=/usr/local/pspffmpeg


En el prefix ponemos el directorio donde queremos instalarlo para evitar que sobrescriba el ffmpeg instalado en el sistema.

Compilar e instalar el programa.

$ make
$ sudo make install

Hacemos un link simbolico en /usr/bin para poder acceder al nuevo ffmpeg.

$ sudo ln -s /usr/local/pspffmpeg/bin/ffmpeg /usr/bin/pspffmpeg

'Para convertir un video avi a formato PSP (MP4)'

$ pspffmpeg -i video_entrada.avi -f psp -title "Titulo" -r 29.97 -b 768 -ar 24000 -ab 32 -s 320x240 M4V00001.MP4

donde:

-i: fichero del video de entrada
-f: formato al que se quiere pasar. (psp: "psp mp4 format")
-title: "Titulo del video para la PSP"
-r: frames por segundo (fps)
-b: bitrate del video en kbit/s
-ar: frequencia del audio en Hz
-ab: bitrate del audio en kbit/s
-s: resolución del video

Parece que con estos valores, la sincronización entre sonido y video es bastante aceptable. De todos modos podéis probar distintas combinaciones...

Ahora basta con copiar el archivo .MP4 al directorio /MP_ROOT/100MNV01/ de la PSP. Los archivos de este directorio siguen un orden númerico (M4V00001.MP4, M4V00002.MP4, ...) y si no se usan estos nombres, los videos no aparecen. (ver Como montar correctamente la PSP en GNU/Linux )

'Si se quiere obtener un fotograma del video para usarlo como thumb'

$ pspffmpeg -y -i M4V00001.MP4 -f mjpeg -ss 00:05:00 -vframes 1 -s 160x120 -an M4V00001.THM

donde:

-y: sobreescribir el fichero de salida si ya existe
-i: fichero del video del que se quiere extraer el fotograma
-f: formato del archivo de salida (jpg)
-ss: momento del video del que se desea extraer (hh:mm:ss[[.xxx]])
-vframes: número de frames que se quieren grabar
-s: resolución de la foto
-an: deshabilitar el sonido

Luego se copia el archivo .THM a la misma carpeta en la que están los videos y ya tenemos thumbnails. El nombre del archivo de thumb debe ser igual al del video al que representa.

Para no ser desagradecidos comentar que prácticamente toda la información la he conseguido de esta receta de CRySoL: http://crysol.inf-cr.uclm.es/drupal/node/138

#Receta_77

'Título:' Cómo montar "correctamente" la PSP en GNU/Linux

'Autor/a:' Cymo

Para montar la PSP "correctamente", deberemos hacerlo de la siguiente forma:

mount /dev/sda1 /media/psp '-o shortname=win95'

Notas:

    Lo realmente importante es añadir esa opción (shortname=win95)
    /dev/sda1 y /media/psp son meramente indicativos, cada cual lo puede montar donde quiera y/o añadir otras opciones ( uid=miusuario,....)

La razón de hacer esto, es permitir que los nombres de los ficheros (M4V00001.MP4, M4V00002.MP4, ...) se guarden en MAYÚSCULAS y funcione todo correctamente.

Receta_76

Título: Cómo ejecutar aplicaciones gráficas remotas como si fuera en local por ssh (X remotas por shh)

Autor/a: Txus Sánchez (txusinho)

Muchas veces nos interesa que una máquina de nuestra LAN (o de internet) nos ejecute aplicaciones gráficas y poder ver la ventana en local. Para ello, suponemos la situación siguiente:

Nuestra máquina -> A

El server -> B

Y ambos tienen el sistema de ventanas entero (apt-get install x-window-system gnome gdm)

En B, editamos /etc/gdm/gdm.conf:

- en la sección [[xdcmp]] ponemos enable=true, que por defecto viene a FALSE.
- Por seguridad, en esta misma sección verificamos que AllowRemoteRoot=false
- en la sección [[serverStandard]] donde aparece "command", eliminamos el parámetro "-nolisten tcp". Ojo, puede que esta sección no exista (depende de la versión de X que tengamos), sin embargo "command" tiene que estar. Buscalo un poco :-D

En B, editamos /etc/ssh/sshd_config:

- El parámetro X11Fordwarding lo ponemos a "yes". Por defecto está "no"

En A, editamos /etc/ssh/ssh_config (OJO, es diferente al anterior):

- Donde pone ForwardX11 lo ponemos a "yes". Por defecto viene "no" (esto no se si es 100% necesario)

Hacemos /etc/init.d/ssh restart y /etc/init.d/gdm restart (En A y en B)

Para que todo esto funcione:

- En A, ejecutamos el comando xhost <ip_de_B>, de esta forma permitimos que cualquier conexión proveniente de este servidor a nuestro sistema gráfico sea aceptada. Puede refinarse con el comando xauth (comming soon:-P)

txus@A:~$ ssh -X <B>

txus@B:~$ nombredelaaplicaciongrafica

Et voilá. Magia


#Receta_75

'Título:' Cómo indicar a la JVM que utilice un Proxy para peticiones web

'Autor/a:' txusinho

A la hora de ejecutar una aplicación java que debe utilizar internet (descargarse algún fichero, o similares) no basta con tener el proxy configurado en la consola desde la que lanzamos dicho proceso.

Para que utilice un proxy en las invocaciones, hay que lanzar la jvm como sigue:

java -Dhttp.proxyHost<nombre del proxy> -Dhttp.proxyPort<numero de puerto>

Ojo, que en el nombre del proxy no hay que poner "http://"


#Receta_74

'Título:' Guía rápida de compartición de archivos entre GNU/Linux y Windows

'Autor/a:' Jorge García (aka Bardok)

A grandes rasgos, los pasos son:

1) En Windows, compartes las carpetas que quieras, teniendo cuidado de haber desactivado la compartición simple de archivos (en el explorador, Herramientas, Opciones de Carpeta, Ver, la última opción).

2) En Linux, compartes los ficheros con Samba, porque para compartir entre linux y windows es la mejor opción. Bajo Ubuntu, supongo que tendrás que instalar los paquetes samba y smbclient (y tal vez también smbfs, pero no recuerdo si existe).

Para compartir un directorio con Samba, tienes que añadirlo al smb.conf, con una entrada del tipo:

 ~[[cosas]]
    comment = Cosas publicas
    path = /media/cosas
    public = yes
    writable = yes
    printable = yes

Y reinicia Samba (# /etc/init.d/samba restart).

Ahora sólo te queda añadir a los usuarios de Samba en Linux:

#smbpasswd -a miusuario

En windows, desde el explorador, pones:

\<ip del otro ordenador><nombre del recurso compartido>

Y ya.

En Linux, con KDE, te bastaría hacer en Konqueror:

smb://<ip del otro ordenador>/<nombre del recurso compartido>

En Gnome, no sé :-P

En linux, también puedes montar el directorio remoto con:

mount -t smbfs //<ip>/<dir> /mnt -o username<code>usuario,password</code>clave

Más información sobre la configuración:

http://es.tldp.org/COMO-INSFLUG/COMOs/Samba-Como/Samba-Como.html

http://es.tldp.org/Manuales-LuCAS/USANDO-SAMBA/usando-samba-html/node219.html

http://es.tldp.org/Manuales-LuCAS/blfs-es/blfs-es-5.0/server/samba.html

#Receta_73

'Título:' Convertir aplicaciones de PSP para firmware 1.0 a firmware 1.5 (y viceversa) desde GNU/Linux

'Autor/a:' Alayn Gortazar (Zurt)

Las aplicaciones que pueden ejecutarse en la PSP son dependientes del firmware instalado. Pero ya existe una forma de transformar estos archivos desde GNU/Linux.

La aplicación que usaremos será pbped que podrás encontrar fácilmente echando un vistazo en tu buscador favorito o puedes intentarlo desde aquí (la disponibilidad no está asegurada ;)

'Si queremos transformar aplicaciones de 1.0 a 1.5'

Vamos al directorio donde esta el archivo EBOOT.PBP y ejecutamos (dando por echo que pbped está en el PATH)

$ pbped -n -E EBOOT.PBP nombre_aplicacion

Esto creara la siguiente estructura de archivos:

1.5/
  nombre_aplicacion/EBOOT.PBP
  nombre_aplicacion%/EBOOT.PBP

Si no queremos que aparezca el típico icono de "Datos dañados" en el menú de la PSP, podemos convertir la aplicación de la siguiente manera:

$ pbped -n -c -E EBOOT.PBP nombre_aplicacion

que creará la siguiente estructura:

1.5/
  nombre''aplicacion''''''''''''''''''''''''''''''''''''''''''''''''''''''1/EBOOT.PBP
  nombre''aplicacion''~1%/EBOOT.PBP

Ahora basta con copiar esos directorios (el 1.5 no, solo sus subdirectorios) a "raiz_psp/PSP/GAME/".

'Si lo que queremos es transformar de 1.5 a 1.0'

$ pbped -m -E 1.5/nombre''aplicacion%/EBOOT.PBP -e 1.5/nombre''aplicacion/EBOOT.PBP nombre_aplicacion

esto creará la siguiente estructura, donde estará el PBP necesario:

1.0/
  nombre_aplicacion/EBOOT.PBP

Y esto es to, esto es to, esto es todo amigos====

#Receta_72

'Título:' Conseguir claves GPG para APT

'Autor/a:' Cyrus

La gran herramienta APT se ha modernizado, y ahora soporta claves publicas GPG, con lo que tenemos mayor seguridad, sabemos lo que nos descargamos, para importar las claves de debian:

# apt-get install debian-keyring
# apt-key add /usr/share/keyrings/debian-role-keys.gpg

Pero algunas claves no estan en este paquete, si vemos este warning al hacer un "update" significa que dicha clave no esta.

W: GPG error: ftp://ftp.nerim.net sarge Release:
The following signatures couldn't be verified because the public key is not available:
NO_PUBKEY 07DC563D1F41B907

Para importarla:

# gpg --keyserver wwwkeys.ch.pgp.net --recv-keys 07DC563D1F41B907
# gpg --armor --export 07DC563D1F41B907 | apt-key add -
# sudo apt-get update

Deberá cambiarse la clave por la que nos piden, claro :p

Receta_71

Título: Aceleración en CLE266 - VIA EPIA y Xorg

Autor/a: AngelD (angeld en froga punto net)

Esta receta explica como conseguir aceleración 3D en una placa VIA EPIA

Antiguamente, se conseguía esta aceleración usando drivers propietarios del fabricante. Esto suponía tener siempre ciertas versiones de kernel y del servidor X, siendo imposible hacerlo funcionar con opcines diferentes de las dadas por el fabricante.

Este panorama cambió a raiz de la liberación de los drivers por parte de VIA, pero hemos tenido que esperar hasta ahora para su implementación.

CLE266 con aceleración 3D

Vamos a empezar recompilando las X, en concreto la versión 6.9.0. Es la misma que la 7, pero sin modularizar.

Tras descomprimir el archivo, creo el fichero 'xc/config/cf/host.def', com lo siguiente:

 #define ~ProjectRoot /usr/XORG
 #define ~NothingOutsideProjectRoot YES
 #define ~BuildDevelDRIDrivers YES

En caso de tener unas X en el directorio '/usr/XORG', podemos cambiarlo para no tener problemas.

Antes de compilar se requiere realizar unos cambios, que consisten en:

  • Editar el fichero '/xc/programs/Xserver/hw/xfree86/drivers/sunffb/ff b_dac.h'
  • Buscar el texto:
    unsigned int eiap;
 } ffb''dac''hwstate_t;
  • Sustituir:
 typedef struct {

por

 typedef struct ffb''wid''info_t {
  • Borrar las lineas:
 Bool ~InUse;
 Bool canshare;

A compilar con el consiguiente make World y ha esperar. Se supone que va a compilar, siempre que tengamos todo lo necesario.

Una vez compilado, se instala con un 'make install', y ha esperar.

Para arrancar con estas X, hay que realizar algunas cositas:

  • Como primera linea del '/etc/ld.so.conf' añadimos '/usr/XORG/lib'.
  • Reconfiguramos con 'ldconfig'.
  • Creamos el '/usr/XORG/lib/X11/xorg.conf' necesario.

Ya podemos arrancar las X, pero sin aceleración. Para conseguirla necesitamos compilar los módulos DRM, paro lo que necesitaremos tener instaladas las cabeceras del kernel que estemos usando.

  • Vamos al directorio 'xc/extras/drm/linux-core' y ejecutamos un 'make'.
  • Instalamos los módulos en el directorio adecuado.
  • Ejecutamos 'depmod -a'
  • Instalamos el módulo 'via'

Y esto es todo. Con esto ya teneis aceleración gráfica.

  • Notas

El kernel utilizado es una versión '2.6.13'. Mirar las referencias de DRM para saber la versión mínima necesaria del kernel.