Páginas

Buscar este blog

miércoles, 6 de junio de 2012

hwclock rtc

Al poner en marcha mi Gentoo linux un mensaje de error entre los mensajes de diagnóstico del sistema (dmesg), advierte de la imposibilidad de acceder al reloj de la máquina:

hwclock: Cannot access the Hardware Clock via any known method.
hwclock from util-linux 2.20.1
hwclock: Open of /dev/rtc failed: No such file or directory
No usable clock interface found.
hwclock: Use the --debug option to see the details of our search for an access method.



Es debido a que el kernel no fué compilado con soporte RTC. Para comprobarlo:

# zgrep RTC /proc/config.gz > rtc
# cat rtc

Para establecer rtc recompilo el kernel:
# make menuconfig

La sección de configuración que interesa para tal propósito está en
 - Device Drivers
    - RTC

Después de activar la opción es hora de compilarlo e instalarlo.
# make && make modules_install && make install
# cp arch/x86_64/boot/bzimage /boot/kernel-3.2.12-gentoo

Reiniciar.
Todo resuelto.





Linux es genial!.

domingo, 3 de junio de 2012

Parametro USE

Parámetros USE

fuente: http://www.gentoo.org/doc/es/handbook/

Mientras esté instalando Gentoo o cualquier otra distribución, tomará varias decisiones dependiendo del entorno en el que esté trabajando. Una instalación para un servidor es distinta a una para una estación de trabajo.

Estas diferencias dependen de los paquetes instalados y de las características para las que ciertos paquetes tienen soporte. Si no va a utilizar KDE, no se moleste en compilar paquetes con soporte para KDE si podrían funcionar perfectamente sin él.

Un parámetro USE es una palabra clave que incorpora información de soporte y dependencias para un concepto en concreto. Si define un determinado parámetro USE, Portage sabrá que el usuario desea soporte para la palabra clave escogida. Por supuesto, también altera las dependencias de un paquete. 

Definiendo correctamente las palabras clave, conseguirá un sistema confeccionado específicamente para sus necesidades. El archivo /etc/portage/package.use almacena parámetros USE locales mientras /etc/make.conf se utiliza para parámetros USE globales.

# emerge -av fbreader



Este mensaje nos advierte de que fbreader (lector de ebooks), solo utiliza qt4 o gtk. Por tanto, la solución pasa por teclear desde la línea de comandos como root:

# echo "app-text/fbreader gtk -qt4 -debug" >> /etc/portage/package.use

Si modifica su fichero package.use tiene que ejecutar lo siguiente, de modo que Gentoo recalcula si alguna de las aplicaciones necesita recompilarse para soportar el nuevo USE.

# emerge -DuvN world

revdep-rebuild (paquete gentoolkit), es el reconstructor de dependencias inversas de Gentoo. Realizará una búsqueda de todos los ebuilds instalados que no funcionen a causa de alguna actualización de un paquete del cual dependan.

# revdep-rebuild


Linux es genial!.

sábado, 2 de junio de 2012

equery

Listando archivos instalados en formato de arbol:

fuente: http://www.gentoo.org/doc/es/

equery puede listar todos los archivos instalados por un ebuild con el módulo de files. Trate --tree para conseguir leer la estructura de directorios. filter para encontrar sólo un determinado tipo de archivo filter=conf . Un ejemplo con gentoolkit:

# equery files --tree gentoolkit
 

 * Searching for gentoolkit ...
 * Contents of app-portage/gentoolkit-0.3.0.5:
 /etc
   > /eclean
      + distfiles.exclude
      + packages.exclude
   > /env.d
      + 99gentoolkit-env
   > /revdep-rebuild
      + 99revdep-rebuild
 /usr
   > /bin
      + eclean
      + eclean-dist -> eclean
      + eclean-pkg -> eclean
      + enalyze
      + epkginfo
      + equery
      + eread
      + eshowkw
      + euse
      + glsa-check
      + revdep-rebuild -> revdep-rebuild.sh
      + revdep-rebuild.py
      + revdep-rebuild.sh

             .........


            + eclean.1.bz2
            + enalyze.1.bz2
            + epkginfo.1.bz2
            + equery.1.bz2
            + eread.1.bz2
            + eshowkw.1.bz2
            + euse.1.bz2
            + glsa-check.1.bz2
            + revdep-rebuild.1.bz2
 /var
   > /cache
      > /revdep-rebuild
         + .keep_app-portage_gentoolkit-0

# rm -f /var/cache/revdep-rebuild/*.rr

glsa-check es principalmente una herramienta de verificación que le sigue la pista a los diversos GLSAs (Advertencia de Seguridad de Gentoo Linux, Gentoo Linux Security Advisory).

# glsa-check -l
[A] means this GLSA was marked as applied (injected),
[U] means the system is not affected and
[N] indicates that the system might be affected.

Linux es genial!.

martes, 24 de abril de 2012

PH5 PDO Gentoo

Compilar PHP5 con soporte  Data Objects (PDO)

El carrito de compra de ejemplo está alojado en un hosting gratuito sin publicidad 3 base de datos mysql, etc.. y este es el enlace que te envía a la página de registro 00webhost.com

Después de realizar un ejercicio carrito de compra propuesto por Ricardo Gutierréz (programador PHP), un mensaje de error alerta que el objeto PDO no se encuentra al ejecutar uno de los archivos en mi servidor apache local. El ejercicio lo he subido al servidor gratuito 00webhost.com, desactivado, por supuesto, el pago por paypal. El código y video está disponible en vimeo. Carrito compra funcionando

 Por defecto al compilar php5 (Gentoo) pdo viene desactivado:
# emerge -av php


[ebuild   R    ] dev-lang/php-5.3.10  USE="apache2 berkdb bzip2 cgi cli crypt ctype exif fileinfo filter fpm gd gdbm hash iconv ipv6 json ldap mysql nls phar posix postgres readline session simplexml spell sqlite ssl tokenizer truetype unicode xml zlib -bcmath -calendar -cdb -cjk -curl -curlwrappers -debug -doc -embed -enchant -firebird -flatfile (-frontbase) -ftp -gmp -imap -inifile -intl -pdo -iodbc -kerberos -kolab -ldap-sasl -libedit -mhash -mssql -mysqli -mysqlnd -oci8-instant-client -odbc -pcntl -pic -qdbm -recode -sharedmem -snmp -soap -sockets -sqlite3 -suhosin (-sybase-ct) -sysvipc -threads -tidy -wddx -xmlreader -xmlrpc -xmlwriter -xpm -xsl -zip"

Agregamos al archivo /etc/portage/package.use lo siguiente:
# vi /etc/portage/package.use

=dev-lang/php-5.3.10 apache2 berkdb bzip2 cgi cli crypt ctype exif fileinfo filter fpm gd g   dbm hash iconv ipv6 json ldap mysql nls phar posix postgres readline session simplexml spel   l sqlite ssl tokenizer truetype unicode xml zlib pdo -bcmath -calendar -cdb -cjk -curl* -cu   rlwrappers* -debug -doc -embed -enchant -firebird -flatfile (-frontbase) -ftp* -gmp -imap -   inifile -intl -iodbc -kerberos -kolab -ldap-sasl -libedit -mhash -mssql -mysqli* -mysqlnd -   oci8-instant-client -odbc -pcntl -pic -qdbm -recode -sharedmem -snmp -soap -sockets -sqlite   3 -suhosin (-sybase-ct) -sysvipc -threads -tidy -wddx -xmlreader -xmlrpc -xmlwriter -xpm -x   sl -zip (-adabas%) (-birdstep%) (-db2%) (-dbmaker%) (-empress%) (-empress-bcs%) (-esoob%) (   -gd-external%) (-interbase%) (-oci8%) (-sapdb%) (-sharedext%) (-solid%)
:wq

Nuestro sistema está preparado para recompilar php con pdo enable:

Calculating dependencies... done!
[ebuild   R    ] dev-lang/php-5.3.10  USE="apache2 berkdb bzip2 cgi cli crypt ctype exif fileinfo filter fpm gd gdbm hash iconv ipv6 json ldap mysql nls pdo phar posix postgres readline session simplexml spell sqlite ssl tokenizer truetype unicode xml zlib -bcmath -calendar -cdb -cjk -curl -curlwrappers -debug -doc -embed -enchant -firebird -flatfile (-frontbase) -ftp -gmp -imap -inifile -intl -iodbc -kerberos -kolab -ldap-sasl -libedit -mhash -mssql -mysqli -mysqlnd -oci8-instant-client -odbc -pcntl -pic -qdbm -recode -sharedmem -snmp -soap -sockets -sqlite3 -suhosin (-sybase-ct) -sysvipc -threads -tidy -wddx -xmlreader -xmlrpc -xmlwriter -xpm -xsl -zip" 0 kB

Total: 1 package (1 reinstall), Size of downloads: 0 kB

Would you like to merge these packages? [Yes/No] y

Al finalizar la compilación un mensaje informa de que deben actualizarse algunos archivos de configuración del sistema. Una de las herramientas utilzadas para ello es update-etc:


Reiniciar apache:

# /etc/init.d/apache2 restart
 * Stopping apache2 ...                                             [ ok ]
 * Starting apache2 ...                                               [ ok

Linux es genial!.

domingo, 22 de abril de 2012

SSH


SSH (Secure Shell) se refiere al protocolo de red y las herramientas que dispone un administrador con la habilidad de iniciar sesion en un dispositivo remoto, remota ejecución, copia remota, etc.


SSH y las herramientas del paquete SSH - ssh, slogin, scp, y sftp - han remplazado las herramientas Unix rsh, rlogin, rcp, y telnet. Cada uno de esos comandos ejecuta un shell sobre el host remoto y permite al ususario llamar comandos. Como cada cliente necesita una cuenta de usuario en el host donde se ejecutan los comandos, todos los comandos mencionados también realizan autenticación.

El paquete SSH incluye ssh-keygen, ssh-agent, y ssh-add para apoyar la autenticación.

SSH interactiva

Después de abrir una SSH conexión y haber tecleado su password de usuario en el host remoto SSH remitirá la totalidad de su teclado al host remoto.

ssh -l carlos centos5.zapto.org


Para obtener una lista de los comandos soportados ~?
Listar las conexiones SSH abiertas ~#


Copiar archivos con scp:

Copiar todos los directorios y su contenido de un cliente FreeBSD a un servidor OpenBSD:

En el servidor (192.168.3.1) crear el directorio
obsd$ mkdir /home/carles/freebsd-client

Realizar la copia desde el cliente:
bsd$ scp -r /usr/home/carles/* carles@192.168.3.1:/home/carles/freebsd-client

$ scp -r /usr/home/carles/* carles@192.168.3.1:/home/carles/freebsd-client  

Copiar archivo pf.conf desde el servidor con IP 192.168.3.1 (no olvide el punto final)

$ mkdir soekris
$ cd soekris
$ scp carles@192.168.3.1:/etc/pf.conf .


El comando scp de SSH permite copiar archivos. man scp permite conocer la sintaxis completa.

scp file1 usuario@host:file2

Ejemplo:
scp archivo1 carlos@centos5.zapto.org:archivo2

Para copiar en dirección contraria.

scp carlos@centos5.zapto.org:archivo1 archivo3

Para copiar por directorios recursivamente se utiliza el flag -r


Sshfs


Como SSH autentica y encripta todo dato a transferir es -util para transferir con seguridad datos a través de Internet. Sshfs permite a un usuario sin privilegios la habilidad de montar un remoto sistema de ficheros utilizando SSH, sin embargo esta técnica no requiere del módulo FUSE (Filesystem in Userspace) en el lado cliente. En el lado del servidor sshfs solo necesita un servidor SSH con un sub-sistema SFTP. Si instala en el lado cliente el paquete sshfs su gestor de paquetes instala fuse-utils y lib-fuse2.

La sintaxis para sshfs es como sigue:

sshfs user_name@host:path puntomontaje-local [optiones]

Ejemplo:
mkdir /mnt/remoto
sshfs carlos@centos5.zapto.org:/home/carlos /mnt/remoto



Algunos gestores de archivos pueden usarse en una conexión SSH para acceder al sistema de ficheros de un host remoto.

Nautilus (Gnome) soporta el protocolo SSH. El administrador solo necesita teclear la dirección requerida como una URL en la barra de direcciones:

ssh://hostnombre/path
La barra de direcciones no se muestra por defecto pero presionando ctrl + L se activa o desde la barra de herramientas --> Ir --> ubicación.


Utilizar compresión

SSH suporta compresión. Comprimir la comunicación entre ssh y sshd implica una sobrecarga en ambos extremos que se ve compensado transfiriendo solo el 50 por ciento de los paquetes.

Es posible activar permanentemente la compresión en el lado servidor utilizando compression yes en el archivo de configuración /etc/ssh/sshd_config. De la misma manera para hacer permanente la compresión en el lado cliente:
compression yes en el archivo $HOME/.ssh/config. Habilitar la transmisión comprimida temporalmente pasa por usar la opción -C en la conexión encriptada.

Info:
OpenSSH http://openssh.org
FUSE http://fuse.sourceforge.net
Linux Magazine

Linux es genial!.