jueves, 6 de marzo de 2014

Instalando Oracle 11g Release 2 bajo FreeBSD 9

Está Escrito:
Examináis las Escrituras porque vosotros pensáis que en ellas tenéis vida eterna; y ellas son las que dan testimonio de mí; (Juan 5:39)

Tomado de:DiabloEnLosDetalles

Continuamos dotando de funcionalidad a nuestra Jaula Debian GNU/Linux recién instalada. Para ello me he decidido por instalar Oracle 11gR2 para Linux, por tratarse de uno de los paquetes de software mas exigentes que se pueden encontrar; me parece que es una buena  forma de explorar los limites de la solución propuesta.

Otra motivación es el hecho de que en el Manual de FreeBSD el capítulo dedicado a la instalación de Oracle se refiere a la versión Oracle 8.0.5, que es bastante antigua, y esta circunstancia estimuló mi curiosidad.

Esta plataforma no resulta idónea para un entorno de producción ya que no está certificada por Oracle, lo cual no le resta utilidad como entorno de pruebas e incluso entorno de desarrollo para pequeños proyectos; depende de la aventurado que sea uno.

Las ventajas de emplear FreeBSD como infraestructura para entornos virtualizados son:

  1. Sistema de Ficheros ZFS.
  2. Pila de TCP/IP virtual.
  3. Seguridad de red con pf.
  4. Análisis de rendimiento con Dtrace.


Las ventajas de emplear Debian GNU/Linux dentro de una Jaula son:

  1. Debian GNU es una de las distribuciones Linux mas fiables y con un ciclo de lanzamiento de versiones muy previsible. 
  2. Utilizar una distribución completa nos ahorra bastante trabajo a la hora de instalar Oracle.
  3. Disponer de documentación técnica actualizada.

Como no soy partidario de instalar entornos gráficos en los servidores, especialmente si tienen que dar soporte a un motor de bases de datos tan pesado como lo es Oracle, voy a realizar una instalación en modo texto, empleado un fichero de respuestas para el instalador de Oracle.



Tareas previas a la instalación de Oracle


En todas las instalaciones de la base de datos Oracle hay que preparar el S.O para que se puede instalar y ejecutar correctamente. Estas tareas previas son específicas de cada S.O y la versión de Oracle.


Tareas específicas en FreeBSD


Las siguientes tareas se deben ejecutar como root:

1.-  Clonamos la Jaula deb-master previamente definida, utilizando la versión Lenny, para crear la Jaula debora:

root@morsa:/root # zfs clone fbsdzpool1/jailz/deb-master@deboostrap fbsdzpool1/jailz/debora

2.- Configuramos semáforos, memoria compartida y E/S asíncrona conforme a los requerimientos de Oracle 11gR2, para ello editamos /boot/loader.conf y /etc/sysctl.conf.

// Comienza  el fragmento de /boot/loader.conf 

kern.ipc.shmmni=4096
kern.ipc.semmns=32000
kern.ipc.semmni=128
aio_load="YES"

// Fin del fragmento de /boot/loader.conf
  
// Comienza  el fragmento de /etc/sysctl.conf

security.jail.sysvipc_allowed=1
kern.ipc.shmall=2097152
kern.ipc.shmseg=128
kern.ipc.shmmin=1
kern.ipc.shmmax=1073741824
kern.ipc.semaem=16384
kern.ipc.semvmx=32767
kern.ipc.semusz=632
kern.ipc.semume=50
kern.ipc.semopm=100
kern.ipc.semmsl=340
kern.ipc.semmnu=150

// Fin del fragmento de /etc/sysctl.conf 

3.- Habilitamos la memoria compartida en la Jaula debora.
// Comienza fragmento de /jailz/etc/jail.conf

debora {
  path = /jailz/debora;
  allow.mount;
  allow.sysvipc;
  host.hostname = debora;
  mount.devfs;
  mount.fstab="/jailz/etc/fstab.debora";
  ip4.addr = 127.0.0.25;
  interface = lo0;
  exec.start = "/etc/init.d/rc 3";
  exec.stop = "/etc/init.d/rc 0";
}
// Fin del fragmento de /jailz/etc/jail.conf 



4.- Iniciamos la jaula y nos conectamos a ella.

root@morsa:/root # jail -f /jailz/etc/jail.conf -c debora
debora: created
Starting periodic command scheduler: crond.
root@morsa:/root # jls
   JID  IP Address      Hostname                      Path
     1  127.0.0.25      debora                        /jailz/debora
root@morsa:/root # jexec 1 /bin/bash
debora:/# uname -a
Linux debora 2.6.16 FreeBSD 9.1-RELEASE-p4 #0: Mon Jun 17 11:42:37 UTC 2013 i686
 GNU/Linux

Tareas específicas en Debian


Los siguientes pasos se ejecutan dentro de la Jaula debora como usuario root:

5 .- Instalamos los paquetes requeridos para Oracle 11gR2 en Debian:

debora:/# apt-get install gcc make binutils lesstif2 rpm libaio1 libdb4.6 libstdc++5 unzip openjdk-6-jdk

Nota: El paquete openjdk-6-jdk se instala para disponer un entorno jre alternativo al proporcionado por el instalador de Oracle.

6.- Creamos los siguientes enlaces simbólicos:

debora:/# ln -s /usr/bin/awk /bin/awk
debora:/# ln -s /usr/bin/rpm /bin/rpm
debora:/# ln -s /usr/bin/basename /bin/basename
7.- Creamos los grupos y usuarios dba, oinstall y oracle.
debora:/# groupadd oinstall -g 1000
debora:/# groupadd dba -g 1001
debora:/# useradd -m -g oinstall -G dba -p passwd -s /bin/bash -d /home/oracle -u 1000 oracle
debora:/# passwd oracle
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
8.- Creamos los directorios para el sofware y la base de datos y les asignamos como propietario el usuario oracle.
debora:/# mkdir -p /oracle/product/11.2.0
debora:/# mkdir -p /oracle/admin/ORATEST/create
debora:/# mkdir /oracle/admin/ORATEST/adump
debora:/# mkdir /oracle/admin/ORATEST/logbook
debora:/# mkdir /oracle/oraInventory
debora:/# mkdir /oracle/oradata
debora:/# mkdir /oracle/flash_recovery_area
debora:/# chown  oracle.oinstall /oracle
debora:/# chown -R oracle.oinstall /oracle/product
debora:/# chown oracle.oinstall /oracle/oraInventory
debora:/# chown -R oracle.dba /oracle/admin
debora:/# chown oracle.dba /oracle/oradata
debora:/# chown oracle.dba  /oracle/flash_recovery_area
9.- Añadimos el nombre de host al fichero /etc/hosts.
debora:/# echo '127.0.0.25 debora' >> /etc/hosts

10.-  Creamos el archivo /etc/oraInst.loc y le asignamos como propietario al usuario oracle:

 // Comienza /etc/oraInst.loc

inventory_loc=/oracle/oraInventory
inst_group=oinstall

 // Fin de  /etc/oraInst.loc


debora:/# chown oracle.oinstall /etc/oraInst.loc



Instalación del Software de Oracle

Los siguientes pasos se ejecutan dentro de la Jaula debora bajo el usuario oracle:

11.- Cambiamos el usuario root a oracle. 

debora:/# su - oracle
oracle@debora:~$ id
uid=1000(oracle) gid=1000(oinstall) groups=1000(oinstall),1001(dba)
oracle@debora:~$
12.- Copiamos al directorio /oracle (por ejemplo) los ficheroslinux_11gR2_database_1of2.zip y linux_11gR2_database_2of2.zip que contienen el instalador y los descomprimimos:
oracle@debora:/oracle $ unzip linux_11gR2_database_1of2.zip
oracle@debora:/oracle unzip linux_11gR2_database_2of2.zip 

13.- Para realizar la instalación desatendida creamos el fichero de respuestas/oracle/database/response/install_debora.rsp. Están marcados en negrita los valores que puede resultar útil modificar, el resto del fichero debe dejarse inalterado, pues esta versión del instalador es problemática y este es el formato que debe mantener el fichero de respuestas.

// Comienza el fichero install_debora.rsp

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=debora
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/oracle/oraInventory
SELECTED_LANGUAGES=en
ORACLE_HOME=/oracle/product/11.2.0
ORACLE_BASE=/oracle
oracle.install.db.InstallEdition=SE
oracle.install.db.isCustomInstall=false
oracle.install.db.customComponents=
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
oracle.install.db.CLUSTER_NODES=
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=
oracle.install.db.config.starterdb.SID=
oracle.install.db.config.starterdb.characterSet=AL32UTF8
oracle.install.db.config.starterdb.memoryOption=false
oracle.install.db.config.starterdb.memoryLimit=
oracle.install.db.config.starterdb.installExampleSchemas=false
oracle.install.db.config.starterdb.enableSecuritySettings=true
oracle.install.db.config.starterdb.password.ALL=
oracle.install.db.config.starterdb.password.SYS=
oracle.install.db.config.starterdb.password.SYSTEM=
oracle.install.db.config.starterdb.password.SYSMAN=
oracle.install.db.config.starterdb.password.DBSNMP=
oracle.install.db.config.starterdb.control=DB_CONTROL
oracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=
oracle.install.db.config.starterdb.dbcontrol.enableEmailNotification=false
oracle.install.db.config.starterdb.dbcontrol.emailAddress=
oracle.install.db.config.starterdb.dbcontrol.SMTPServer=
oracle.install.db.config.starterdb.automatedBackup.enable=false
oracle.install.db.config.starterdb.automatedBackup.osuid=
oracle.install.db.config.starterdb.automatedBackup.ospwd=
oracle.install.db.config.starterdb.storageType=
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=
oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=
oracle.install.db.config.asm.diskGroup=
oracle.install.db.config.asm.ASMSNMPPassword=
MYORACLESUPPORT_USERNAME=username@mailaddress.com
MYORACLESUPPORT_PASSWORD=
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
DECLINE_SECURITY_UPDATES=true
PROXY_HOST=
PROXY_PORT=
PROXY_USER=
PROXY_PWD=

// Fin del fichero install_debora.rsp

14.- Ejecutamos  el instalador con las opciones indicadas tal y como están: 

oracle@debora:~$ /oracle/database/runInstaller -silent  -ignorePrereq -jreloc /usr/lib/jvm/java-6-openjdk -responseFile /oracle/database/response/install_debora.rsp
Starting Oracle Universal Installer...

Checking Temp space: must be greater than 80 MB.   Actual -2147483648 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 4096 MB    Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2013-09-01_08-30-45PM. Please wait ...
[WARNING] [INS-32055] The Central Inventory is located in the Oracle base.
   CAUSE: The Central Inventory is located in the Oracle base.
   ACTION: Oracle recommends placing this Central Inventory in a location outside the Oracle base directory.
[WARNING] [INS-32055] The Central Inventory is located in the Oracle base.
   CAUSE: The Central Inventory is located in the Oracle base.
   ACTION: Oracle recommends placing this Central Inventory in a location outside the Oracle base directory.
You can find the log of this install session at:
 /oracle/oraInventory/logs/installActions2013-09-01_08-30-45PM.log
 
The following configuration scripts need to be executed as the "root" user.
 #!/bin/sh
 #Root scripts to run

/oracle/oraInventory/orainstRoot.sh
/oracle/product/11.2.0/root.sh
To execute the configuration scripts:
         1. Open a terminal window
         2. Log in as "root"
         3. Run the scripts
         4. Return to this window and hit "Enter" key to continue

Successfully Setup Software.
15.- Revisamos los logs del instalador.
debora:~# tail -10 /oracle/oraInventory/logs/installActions2013-09-01_08-30-45PM.log
INFO: Validating state <finish>
WARNING: Validation disabled for the state finish
INFO: Completed validating state <finish>
INFO: Terminating all background operations
INFO: Terminated all background operations
INFO: Successfully executed the flow in SILENT mode
INFO: Finding the most appropriate exit status for the current application
INFO: Exit Status is 0
INFO: Shutdown Oracle Database 11g Release 2 Installer
INFO: Unloading Setup Driver
16.- Si la instalación ha sido correcta, ejecutamos como usuario root los scriptsorainstRoot.sh y root.sh :
oracle@debora:~$ logout
debora:~# id
uid=0(root) gid=0(root) groups=5(tty)
debora:~# /oracle/oraInventory/orainstRoot.sh
Changing permissions of /oracle/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.

Changing groupname of /oracle/oraInventory to oinstall.
The execution of the script is complete.

debora:~# /oracle/product/11.2.0/root.sh
Check /oracle/product/11.2.0/install/root_debora_2013-09-01_20-39-01.log for the
 output of root script

debora:~# more /oracle/product/11.2.0/install/root_debora_2013-09-01_20-39-01.log

Running Oracle 11g root.sh script...

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /oracle/product/11.2.0

Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
 

Creación de una base de datos de Pruebas


Antes de crear una base de datos necesitamos  un fichero de parámetros init.ora y un script con los comandos SQL que ejecutan la creación de la base de datos.


17.- Creamos el fichero /oracle/admin/ORATEST/create/initORATEST.ora:

// Comienza el fichero initORATEST.ora

db_name='ORATEST'
db_domain=''
sga_target=512M
sga_max_size=1G
pga_aggregate_target=1G
processes = 150
audit_trail ='db'
db_block_size=8192
db_recovery_file_dest='/oracle/flash_recovery_area'
db_recovery_file_dest_size=2G
diagnostic_dest='/oracle/'
#dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'
open_cursors=300
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS1'
compatible ='11.2.0'
db_create_file_dest='/oracle/oradata'
filesystemio_options = SETALL
disk_asynch_io = TRUE

// Fin del fichero initORATEST.ora

18.- Creamos los ficheros /oracle/admin/ORATEST/create/ORATEST.sh y/oracle/admin/ORATEST/create/cr_ORATEST.sh:
// Comienza el fichero ORATEST.sh
ORACLE_HOME=/oracle/product/11.2.0
ORACLE_SID=ORATEST

NLS_LANG=American_america.WE8ISO8859P15
ORA_NLS11=${ORACLE_HOME}/nls/data
PATH=$PATH:$ORACLE_HOME/bin
export PATH
export ORACLE_BASE
export ORACLE_HOME
export ORACLE_SID
export NLS_LANG
export ORA_NLS33 
// Fin del fichero ORATEST.sh

// Comienza el fichero cr_ORATEST.sh
#!/bin/bash

. ./ORATEST.sh

rm ${ORACLE_HOME}/dbs/orapw${ORACLE_SID}
orapwd file=${ORACLE_HOME}/dbs/orapw${ORACLE_SID} password=diablo entries=2

rm -r /oracle/oradata/${ORACLE_SID}

sqlplus /nolog << EOF
spool ../logbook/cr_${ORACLE_SID}.log
conn / as sysdba;
CREATE SPFILE
FROM   PFILE='/oracle/admin/${ORACLE_SID}/create/init${ORACLE_SID}.ora';

DISCONNECT;

conn / as sysdba;

STARTUP NOMOUNT;
CREATE DATABASE ${ORACLE_SID}
CHARACTER SET WE8ISO8859P15
NATIONAL CHARACTER SET UTF8
USER SYS IDENTIFIED BY diablo
USER SYSTEM IDENTIFIED BY diablo
EXTENT MANAGEMENT LOCAL
DEFAULT TEMPORARY TABLESPACE temp
UNDO TABLESPACE undotbs1
DEFAULT TABLESPACE users;

@?/rdbms/admin/catalog.sql
@?/rdbms/admin/catproc.sql
@?/sqlplus/admin/pupbld.sql

SHUTDOWN IMMEDIATE;

EXIT
spool off

EOF 
// Fin del fichero cr_ORATEST.sh

19.- Concedemos a los scripts los permisos de ejecución:

oracle@debora:/oracle/admin/ORATEST/create$ chmod 750 *.sh
oracle@debora:/oracle/admin/ORATEST/create$ ls -la
total 31
drwxr-xr-x 2 oracle dba   5 Sep  1 21:04 .
drwxr-xr-x 5 oracle dba   5 Sep  1 20:11 ..
-rwxr-x--- 1 oracle dba 258 Sep  1 21:02 ORATEST.sh
-rwxr-x--- 1 oracle dba 782 Sep  1 21:04 cr_ORATEST.sh
-rw-r--r-- 1 oracle dba 490 Sep  1 21:01 initORATEST.ora
20.- Iniciamos la creación de la base de datos:
oracle@debora:/oracle/admin/ORATEST/create$ nohup ./cr_ORATEST.sh &
21.- Comprobamos que la creación de la base de datos a concluido correctamente:
oracle@debora:/oracle/admin/ORATEST/create$ tail -10 nohup.out
SQL> CREATE PUBLIC SYNONYM PRODUCT_USER_PROFILE FOR SYSTEM.PRODUCT_PRIVS;

Synonym created.

SQL>
SQL> -- End of pupbld.sql
SQL> SQL> Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> SQL> Disconnected from Oracle Database 11g Release 11.2.0.1.0 - Production


22.- Arrancamos la base de datos y nos conectamos.

oracle@debora:/oracle/admin/ORATEST/create$  . ./ORATEST.sh
oracle@debora:/oracle/admin/ORATEST/create$ sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on Sun Sep 1 22:09:58 2013

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

SQL>  conn / as sysdba;
Connected to an idle instance.

SQL> startup;
ORACLE instance started.

Total System Global Area 1071333376 bytes
Fixed Size                  1341312 bytes
Variable Size             750782592 bytes
Database Buffers          314572800 bytes
Redo Buffers                4636672 bytes
Database mounted.
Database opened.
SQL>
SQL> select * from v$instance;

INSTANCE_NUMBER INSTANCE_NAME
--------------- ----------------
HOST_NAME
----------------------------------------------------------------
VERSION           STARTUP_T STATUS       PAR    THREAD# ARCHIVE LOG_SWITCH_WAIT
----------------- --------- ------------ --- ---------- ------- ---------------
LOGINS     SHU DATABASE_STATUS   INSTANCE_ROLE      ACTIVE_ST BLO
---------- --- ----------------- ------------------ --------- ---
              1 ORATEST
debora
11.2.0.1.0        01-SEP-13 OPEN         NO           1 STOPPED
ALLOWED    NO  ACTIVE            PRIMARY_INSTANCE   NORMAL    NO


SQL> !uname -a
Linux debora 2.6.16 FreeBSD 9.1-RELEASE-p4 #0: Mon Jun 17 11:42:37 UTC 2013 i686
 GNU/Linux

SQL>



Conseguido.


Oracle 11gR2 ejecutándose en FreeBSD 9


23.- Paramos la base de datos ORATEST. 

SQL> SHUTDOWN IMMEDIATE;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> SQL> Disconnected from Oracle Database 11g Release 11.2.0.1.0 - Production
24.- Paramos la jaula debora.
root@morsa:/root # jail -f /jailz/etc/jail.conf -r debora
Using makefile-style concurrent boot in runlevel 0.
Stopping device state change daemon: devd.
Asking all remaining processes to terminate...done.
All processes ended within 1 seconds....done.
Stopping enhanced syslogd: rsyslogd.
/etc/init.d/umountnfs.sh: 106: cannot open /etc/mtab: No such file
Deconfiguring network interfaces...done.
Cleaning up ifupdown....done. 
Deactivating swap...done.
mount: /: unknown special file or file system
Will now halt.
ifdown: shutdown usbus0: Operation not permitted
ifdown: shutdown ath0: Operation not permitted
ifdown: shutdown usbus1: Operation not permitted
ifdown: shutdown lo0: Operation not permitted
ifdown: shutdown wlan0: Operation not permitted
startpar: service(s) returned failure: umountnfs.sh ... failed!
deb-master: removed

23.- Hacemos un snapshot de la jaula debora para así disponer de una plantilla de unajaula configurada para bases de datos Oracle.


root@morsa:/root # zfs snapshot fbsdzpool1/jailz/debora@oracle11gR2

 

Consideraciones finales


La decisión de instalar en la Jaula la versión Lenny de Debian GNU/Linux está motivada por dos razones; por una parte, la versión de kernel de Linux que requiere el instalador de Oracle como requisito previo es la 2.6.9 y por otro lado la versión de kernel mínima para squeeze es la 2.6.18, que es superior a la admitida por el módulo de compatibilidad para Linux de FreeBSD 9. 

// Comienza el fragmento de installActions.log

INFO: *********************************************
INFO: OS Kernel Version: This is a prerequisite condition to test whether the system kernel version is at least "2.6.9".
INFO: Severity:CRITICAL
INFO: OverallStatus:SUCCESSFUL
INFO: -----------------------------------------------
INFO: Verification Result for Node:debora
INFO: Expected Value:2.6.9
INFO: Actual Value:2.6.16
INFO: -----------------------------------------------
INFO: *********************************************

// Fin del fragmento de installActions.log 

Durante el desarrollo de este Post, detecté un problema durante la ejecución del Instalador de Oracle, que de forma aleatoria fallaba en en arranque inicial. Una manera de evitar este problema consiste en utilizar un jre alternativo al suministrado con el instalador.

No he podido configurar la gestión automática de memoria (AMM) que es una de la nuevas características introducidas en la versión 11g. Esto es así por que no he conseguido configurar el dispositivo /dev/shm dentro de la Jaula.

En consecuencia, no queda mas remedio que emplear la gestión automática de memoria compartida (ASMM) dando valores a los parámetros SGA_TARGET y SGA_MAX_SIZE en el fichero initORATEST.ora.

El sistema de ficheros ZFS sobre el que se ha creado la base de datos no está optimizado para los ficheros de la base de datos, es un aspecto que debe mejorarse para un uso más intenso de la base de datos.

miércoles, 12 de febrero de 2014

Cómo instalar Java de Oracle en Debian 6 Squeeze

Está Escrito:
Joel 2:13,14
Rasgad vuestro corazón, y no vuestros vestidos, y convertíos a Jehová vuestro Dios; porque misericordioso es y clemente, tardo para la ira y grande en misericordia, y que se duele del castigo. ¿Quién sabe si volverá y se arrepentirá y dejará bendición tras de él, esto es, ofrenda y libación para Jehová vuestro Dios?

Tomado de : Nieleku

Si bien Debian 6 Squeeze ya viene con Openjdk hay aplicaciones que no funcionan bien con él o no funcionan de modo alguno. En tal caso podemos instalar java de Oracle.
Para comprobar que versión de java esta activa en nuestro Debian podemos usar la siguiente orden en un terminal y nos lo mostrará:
java -version
Si el java que tenemos instalado no corresponde con el de Oracle los pasos a dar para instalarlo son los siguientes. Desde un terminal ejecutamos:
su
nano /etc/apt/sources.list
Al final de nuestro fichero de fuentes de repositorios añadimos la siguiente línea:
deb http://ftp.es.debian.org/debian/ squeeze main non-free
Y actualizamos los repositorios para que el cambio tenga efecto.
apt-get update
Ahora ya podemos instalar el java de Oracle. La siguiente orden realizará la tarea:
apt-get install sun-java6-jre sun-java6-jdk
Durante la instalación deberemos aceptar la licencia de Oracle para con el uso de su java.
En este momento tenemos dos instalaciones de java en nuestro sistema. Debemos indicarle a Debian que use la nueva recién instalada. Esto lo podemos hacer con la siguiente orden:
update-alternatives --config java
La cual mostrará un menú para seleccionar el java a activar. En la siguiente imagen puede verse.
Configurar java de Oracle
La que esta marcada con un asterisco (*) es la que está previamente activa. Como queremos cambiarla a la que hemos instalado en este caso pulsaremos el número 2 y daremos a la tecla enter/return para que reconozca los cambios.
Con esto nos queda java instalado en el sistema.
En el vídeo siguiente podemos ver en vivo los pasos dados en esta guía.

Si queremos configurar java con la sesión podemos añadir a nuestro .basrc la variable de entorno.
nano .bashrc
export JAVA_HOME=/usr/lib/jvm/java-6-sun
 

lunes, 27 de enero de 2014

Sobre Linux Recordando la Histora

tux
Está Escrito:
El que cree en el Hijo de Dios tiene el testimonio en sí mismo; el que no cree a Dios, ha hecho a Dios mentiroso, porque no ha creído en el testimonio que Dios ha dado respecto a su Hijo. (1 Juan 5:10)
Tomado de: El Rinco de Linux

Introducción

Linux es un sistema operativo, compatible Unix. Dos características muy peculiares lo diferencian del resto de sistemas que podemos encontrar en el mercado, la primera, es que es libre, esto significa que no tenemos que pagar ningun tipo de licencia a ninguna casa desarrolladora de software por el uso del mismo, la segunda, es que el sistema viene acompañado del código fuente.
El sistema lo forman el núcleo del sistema (kernel) más un gran número de programas / bibliotecas que hacen posible su utilización. Muchos de estos programas y bibliotecas han sido posibles gracias al proyecto GNU, por esto mismo, muchos llaman a Linux, GNU/Linux, para resaltar que el sistema lo forman tanto el núcleo como gran parte del software producido por el proyecto GNU.
Linux se distribuye bajo la GNU General Public License por lo tanto, el código fuente tiene que estar siempre accesible y cualquier modificación ó trabajo derivado tiene que tener esta licencia.
El sistema ha sido diseñado y programado por multitud de programadores alrededor del mundo. El núcleo del sistema sigue en continuo desarrollo bajo la coordinacion de Linus Torvalds, la persona de la que partio la idea de este proyecto, a principios de la década de los noventa. Hoy en dia, grandes compañias, como IBM, SUN, HP, Novell y RedHat, entre otras muchas, aportan a Linux grandes ayudas tanto económicas como de código.
Dia a dia, más y más programas y aplicaciones están disponibles para este sistema, y la calidad de los mismos aumenta de versión a versión. La gran mayoría de los mismos vienen acompañados del código fuente y se distribuyen generalmente bajo los terminos de licencia de la GNU General Public License.
Más y más casas de software comercial distribuyen sus productos para Linux y la presencia del mismo en empresas aumenta constantemente por la excelente relación calidad-precio que se consigue con Linux.
Las arquitecturas en las que en un principio se puede utilizar Linux son Intel 386-, 486-, Pentium, Pentium Pro, Pentium II/III/IV, IA-64, Amd 5x86, Amd64, Cyrix y Motorola 68020,IBM S/390, zSeries, DEC Alpha, ARM, MIPS, PowerPC, SPARC y UltraSPARC. Además no es dificil encontrar nuevos proyectos portando Linux a nuevas arquitexturas.

Historia

Linux hace su aparición a principios de la década de los noventa, era el año 1991 y por aquel entonces un estudiante de informática de la Universidad de Helsinki, llamado Linus Torvalds empezó, -como una afición y sin poder imaginar a lo que llegaria este proyecto, a programar las primeras lineas de código de este sistema operativo al que llamaria más tarde Linux.
Este comienzo estuvo inspirado en MINIX, un pequeño sistema Unix desarrollado por Andy Tanenbaum. Las primeras discusiones sobre Linux fueron en el grupo de noticias comp.os.minix, en estas discusiones se hablaba sobre todo del desarrollo de un pequeño sistema Unix para usuarios de Minix que querian más.
El 3 de julio de 1991, Linus Torvalds mandó el primer mensaje sobre Linux al grupo de noticias comp.os.minix:
Path: gmdzi!unido!mcsun!news.funet.fi!hydra!klaava!torvalds
From: torva...@klaava.Helsinki.FI (Linus Benedict Torvalds)
Newsgroups: comp.os.minix
Subject: Gcc-1.40 and a posix-question
Keywords: gcc, posix
Message-ID: <1991Jul3.100050.9886@klaava.Helsinki.FI>
Date: 3 Jul 91 10:00:50 GMT
Organization: University of Helsinki
Lines: 28
Hello netlanders,

Due to a project I'm working on (in minix), I'm interested in the posix
standard definition. Could somebody please point me to a (preferably)
machine-readable format of the latest posix rules? Ftp-sites would be
nice.

As an aside for all using gcc on minix - the new version (1.40) has been
out for some weeks, and I decided to test what needed to be done to get
it working on minix (1.37.1, which is the version you can get from
plains is nice, but 1.40 is better :-).  To my surpice, the answer
turned out to be - NOTHING! Gcc-1.40 compiles as-is on minix386 (with
old gcc-1.37.1), with no need to change source files (I changed the
Makefile and some paths, but that's it!).  As default this results in a
compiler that uses floating point insns, but if you'd rather not,
changing 'toplev.c' to define DEFAULT_TARGET from 1 to 0 (this is from
memory - I'm not at my minix-box) will handle that too.  Don't make the
libs, use the old gnulib&libc.a.  I have successfully compiled 1.40 with
itself, and everything works fine (I got the newest versions of gas and
binutils at the same time, as I've heard of bugs with older versions of
ld.c).  Makefile needs some chmem's (and gcc2minix if you're still using
it). 

  Linus Torvalds  torva...@kruuna.helsinki.fi

PS. Could someone please try to finger me from overseas, as I've
installed a "changing .plan" (made by your's truly), and I'm not certain
it works from outside? It should report a new .plan every time.
El 25 de agosto de 1991, mandó el siguiente mensaje, el cual es considerado por muchos como el comienzo del proyecto Linux:
Path: gmdzi!unido!fauern!ira.uka.de!sol.ctr.columbia.edu!zaphod.mps.ohio-state.edu!
wupost!uunet!mcsun!news.funet.fi!hydra!klaava!torvalds
From: torva...@klaava.Helsinki.FI (Linus Benedict Torvalds)
Newsgroups: comp.os.minix
Subject: What would you like to see most in minix?
Summary: small poll for my new operating system
Keywords: 386, preferences
Message-ID: <1991Aug25.205708.9541@klaava.Helsinki.FI>
Date: 25 Aug 91 20:57:08 GMT
Organization: University of Helsinki
Lines: 20


Hello everybody out there using minix -

I'm doing a (free) operating system (just a hobby, won't be big and
professional like gnu) for 386(486) AT clones.  This has been brewing
since april, and is starting to get ready.  I'd like any feedback on
things people like/dislike in minix, as my OS resembles it somewhat
(same physical layout of the file-system (due to practical reasons)
among other things). 

I've currently ported bash(1.08) and gcc(1.40), and things seem to work. 
This implies that I'll get something practical within a few months, and
I'd like to know what features most people would want.  Any suggestions
are welcome, but I won't promise I'll implement them :-)

  Linus (torva...@kruuna.helsinki.fi)

PS.  Yes - it's free of any minix code, and it has a multi-threaded fs. 
It is NOT protable (uses 386 task switching etc), and it probably never
will support anything other than AT-harddisks, as that's all I have :-(.   
Linus nunca anuncio la versión 0.01 de Linux (agosto/septiembre 1991), esta versión no era ni siquiera ejecutable, solamente incluia los principios del nucleo del sistema, estaba escrita en lenguaje ensamblador y asumia que uno tenia acceso a un sistema Minix para su compilación.
El 5 de octubre de 1991, Linus anuncio la primera version "Oficial" de Linux, -version 0.02. Con esta version Linus pudo ejecutar Bash (GNU Bourne Again Shell) y gcc (El compilador GNU de C) pero no mucho mas funcionaba. En este estado de desarrollo ni se pensaba en los terminos soporte, documentación , distribución .....
Este fue el mensaje mandado a comp.os.minix:
Path: gmdzi!unido!mcsun!news.funet.fi!hydra!klaava!torvalds
From: torva...@klaava.Helsinki.FI (Linus Benedict Torvalds)
Newsgroups: comp.os.minix
Subject: Free minix-like kernel sources for 386-AT
Keywords: 386, preliminary version
Message-ID: <1991Oct5.054106.4647@klaava.Helsinki.FI>
Date: 5 Oct 91 05:41:06 GMT
Organization: University of Helsinki
Lines: 55

Do you pine for the nice days of minix-1.1, when men were men and wrote
their own device drivers? Are you without a nice project and just dying
to cut your teeth on a OS you can try to modify for your needs? Are you
finding it frustrating when everything works on minix? No more all-
nighters to get a nifty program working? Then this post might be just
for you :-)

As I mentioned a month(?) ago, I'm working on a free version of a
minix-lookalike for AT-386 computers.  It has finally reached the stage
where it's even usable (though may not be depending on what you want),
and I am willing to put out the sources for wider distribution.  It is
just version 0.02 (+1 (very small) patch already), but I've successfully
run bash/gcc/gnu-make/gnu-sed/compress etc under it. 

Sources for this pet project of mine can be found at nic.funet.fi
(128.214.6.100) in the directory /pub/OS/Linux.  The directory also
contains some README-file and a couple of binaries to work under linux
(bash, update and gcc, what more can you ask for :-).  Full kernel
source is provided, as no minix code has been used.  Library sources are
only partially free, so that cannot be distributed currently.  The
system is able to compile "as-is" and has been known to work.  Heh. 
Sources to the binaries (bash and gcc) can be found at the same place in
/pub/gnu. 

ALERT! WARNING! NOTE! These sources still need minix-386 to be compiled
(and gcc-1.40, possibly 1.37.1, haven't tested), and you need minix to
set it up if you want to run it, so it is not yet a standalone system
for those of you without minix. I'm working on it. You also need to be
something of a hacker to set it up (?), so for those hoping for an
alternative to minix-386, please ignore me. It is currently meant for
hackers interested in operating systems and 386's with access to minix.

The system needs an AT-compatible harddisk (IDE is fine) and EGA/VGA. If
you are still interested, please ftp the README/RELNOTES, and/or mail me
for additional info.

I can (well, almost) hear you asking yourselves "why?".  Hurd will be
out in a year (or two, or next month, who knows), and I've already got
minix.  This is a program for hackers by a hacker.  I've enjouyed doing
it, and somebody might enjoy looking at it and even modifying it for
their own needs.  It is still small enough to understand, use and
modify, and I'm looking forward to any comments you might have. 

I'm also interested in hearing from anybody who has written any of the
utilities/library functions for minix. If your efforts are freely
distributable (under copyright or even public domain), I'd like to hear
from you, so I can add them to the system. I'm using Earl Chews estdio
right now (thanks for a nice and working system Earl), and similar works
will be very wellcome. Your (C)'s will of course be left intact. Drop me
a line if you are willing to let me use your code.

  Linus

PS. to PHIL NELSON! I'm unable to get through to you, and keep getting
"forward error - strawberry unknown domain" or something. 
Despues de la versión 0.03, Linus salto en la numeración hasta la 0.10, más y más programadores a lo largo y ancho de internet empezaron a trabajar en el proyecto y despues de sucesivas revisiones, Linus incremento el número de versión hasta la 0.95 (Marzo 1992), la primera capaz de ejecutar el sistema X-windows. Más de un año despues (diciembre 1993) el núcleo del sistema estaba en la versión 0.99 y la versión 1.0.0 no llego hasta el 14 de marzo de 1994.
El 9 de Mayo 1996, Tux fue propuesto como mascota oficial de Linux.
El 9 de junio de 1996 fue lanzada la serie 2.0.x, la 2.2.x no llegó hasta el 25 de enero de 1999 y la 2.4.x hasta el 4 de enero del 2001.
El 17 de diciembre del 2003 fue lanzada la serie actual del nucleo, la 2.6.x y el desarrollo de Linux sigue avanzando dia a dia con la meta de perfeccionar y mejorar el sistema.
En el siguiente gráfico podeis ver una ilustración de las diferentes variantes de Unix desde el lanzamiento de la primera en la década de los 70 y la posición de Linux en esta historia.


Unix historia



Características

Aquí teneis una lista con las características más importantes de GNU/LINUX:
[Fuente: Infosheet-Como. Autor: IvanCasado]
  • Multitarea: La palabra multitarea describe la habilidad de ejecutar varios programas al mismo tiempo. LINUX utiliza la llamada multitarea preeventiva,la cual asegura que todos los programas que se estan utilizando en un momento dado seran ejecutados, siendo el sistema operativo el encargado de ceder tiempo de microprocesador a cada programa.
  • Multiusuario:Muchos usuarios usando la misma maquina al mismo tiempo.
  • Multiplataforma: Las plataformas en las que en un principio se puede utilizar Linux son 386-, 486-. Pentium, Pentium Pro, Pentium II,Amiga y Atari, tambien existen versiones para su utilizacion en otras plataformas, como amd64, Alpha, ARM, MIPS, PowerPC y SPARC.
  • Multiprocesador: Soporte para sistemas con mas de un procesador esta disponible para Intel, AMD y SPARC.
  • Funciona en modo protegido 386.
  • Protección de la memoria entre procesos, de manera que uno de ellos no pueda colgar el sistema.
  • Carga de ejecutables por demanda: Linux sólo lee del disco aquellas partes de un programa que están siendo usadas actualmente.
  • Política de copia en escritura para la compartición de páginas entre ejecutables: esto significa que varios procesos pueden usar la misma zona de memoria para ejecutarse. Cuando alguno intenta escribir en esa memoria, la página (4Kb de memoria) se copia a otro lugar. Esta política de copia en escritura tiene dos beneficios: aumenta la velocidad y reduce el uso de memoria.
  • Memoria virtual usando paginación (sin intercambio de procesos completos) a disco: A una partición en el sistema de archivos, con la posibilidad de añadir más áreas de intercambio sobre la marcha.
  • La memoria se gestiona como un recurso unificado para los programas de usuario y para el caché de disco, de tal forma que toda la memoria libre puede ser usada para caché y ésta puede a su vez ser reducida cuando se ejecuten grandes programas.
  • Librerías compartidas de carga dinámica (DLL's) y librerías estáticas.
  • Se realizan volcados de estado (core dumps) para posibilitar los análisis post-mortem, permitiendo el uso de depuradores sobre los programas no sólo en ejecución sino también tras abortar éstos por cualquier motivo.
  • Compatible con POSIX, System V y BSD a nivel fuente.
  • Emulación de iBCS2, casi completamente compatible con SCO, SVR3 y SVR4 a nivel binario.
  • Todo el código fuente está disponible, incluyendo el núcleo completo y todos los drivers, las herramientas de desarrollo y todos los programas de usuario; además todo ello se puede distribuir libremente. Hay algunos programas comerciales que están siendo ofrecidos para Linux actualmente sin código fuente, pero todo lo que ha sido gratuito sigue siendo gratuito.
  • Control de tareas POSIX.
  • Pseudo-terminales (pty's).
  • Emulación de 387 en el núcleo, de tal forma que los programas no tengan que hacer su propia emulación matemática. Cualquier máquina que ejecute Linux parecerá dotada de coprocesador matemático. Por supuesto, si el ordenador ya tiene una FPU (unidad de coma flotante), esta será usada en lugar de la emulación, pudiendo incluso compilar tu propio kernel sin la emulación matemática y conseguir un pequeño ahorro de memoria.
  • Soporte para muchos teclados nacionales o adaptados y es bastante fácil añadir nuevos dinámicamente.
  • Consolas virtuales múltiples: varias sesiones de login a través de la consola entre las que se puede cambiar con las combinaciones adecuadas de teclas (totalmente independiente del hardware de video). Se crean dinámicamente y puedes tener hasta 64.
  • Soporte para varios sistemas de archivo comunes, incluyendo minix-1, Xenix y todos los sistemas de archivo típicos de System V, y tiene un avanzado sistema de archivos propio con una capacidad de hasta 4 Tb y nombres de archivos de hasta 255 caracteres de longitud.
  • Acceso transparente a particiones MS-DOS (o a particiones OS/2 FAT) mediante un sistema de archivos especial: no es necesario ningún comando especial para usar la partición MS-DOS, esta parece un sistema de archivos normal de Unix (excepto por algunas restricciones en los nombres de archivo, permisos, y esas cosas). Las particiones comprimidas de MS-DOS 6 no son accesibles en este momento, y no se espera que lo sean en el futuro. El soporte para VFAT, FAT32 (WNT, Windows 95/98) se encuentra soportado desde la version 2.0 del nucleo y el NTFS de WNT desde la version 2.2 (Este ultimo solo en modo lectura).
  • Soporte en sólo lectura de HPFS-2 del OS/2 2.1
  • Sistema de archivos de CD-ROM que lee todos los formatos estándar de CD-ROM.
  • TCP/IP, incluyendo ssh, ftp, telnet, NFS, etc.
  • Appletalk.
  • Software cliente y servidor Netware.
  • Lan Manager / Windows Native (SMB), software cliente y servidor.
  • Diversos protocolos de red incluidos en el kernel: TCP, IPv4, IPv6, AX.25, X.25, IPX, DDP, Netrom, etc.

viernes, 3 de enero de 2014

Herramientas gráficas

Esta Escrito:
Que si confesares con tu boca que Jesús es el Señor, y creyeres en tu corazón que Dios le levantó de los muertos, serás salvo.
Porque con el corazón se cree para justicia, pero con la boca se confiesa para salvación. (Romanos 10:9-10)

 
Tomado de: ac.usc.es
Además de los comandos comentados, si disponemos de un entorno X Windows podemos usar alguna herramienta gráfica en vez de top y ps:
  • proporcionan una visión más clara y son fáciles de usar
Algunas herramientas son
  • gnome-system-monitor: visor de procesos y monitorizador de recursos del sistema de GNOME
  • KDE System Guard (ksysguard): gestor de tareas y monitor de rendimiento de KDE
Ejemplo: gnome-system-monitor
Image gnome-system-monitor

domingo, 20 de octubre de 2013

Entorno Grafico LXDE

Está Escrito:
  Y tal como hemos traído la imagen del terrenal, traeremos también la imagen del celestial. (1 Corintios 15:49)
Tomado de: lxde
LXDE es un entorno de escritorio de código abierto (open source) licenciado bajo la GPL para Unix y otras plataformas POSIX compatibles, como Linux. El nombre LXDE significa "Lightweight X11 Desktop Environment" (Entorno de Escritorio X11 Ligero).
LXDE es la solución de escritorio en ahorro de energía y velocidad extrema. Trabaja bien con computadoras de bajo rendimiento tales como las netbooks de nueva generación y otras minicomputadoras portátiles. Puede ser construído en varias distribuciones Linux como Ubuntu o Debian. Proporciona una experiencia de escritorio rápido conectando fácilmente con aplicaciones de internet y soporta una gran cantidad de programas; puede ser instalado con sistemas Linux a nivel local. LXDE soporta muchas arquitecturas de procesador como Intel, MIPS and ARM.
El Proyecto LXDE comenzó en el 2006 cuando Hong Yen Jee de Taiwan, conocido como PCMan, publicó el primer componente PCMan File Manager. Al día de hoy el equipo de LXDE se ha convertido en una comunidad internacional de desarrolladores, diseñadores y colaboradores de todo el mundo.

Características

Ligero
Necesita poco CPU y funciona extremadamente bien con poca memoria.
Rápido
Corre bien incluso en computadoras antiguas fabricadas en 1999.
Ahorrador de Energía
Requiere menos energía para realizar tareas comparado con otros sistemas en el mercado.
Simple y Bonito
Incluye una interfaz de usuario internacionalizada y pulida gracias a GTK+ 2.
Fácil de Usar
Provee dos alternativas: Una interfaz de usuario estilo eeepc o un panel de aplicaciones estilo MS Windows.
Personalizable
El aspecto y el modo de uso de LXDE es fácil de configurar.
Características Adicionales
Ofrece funciones como exploración de archivos con pestañas o cuadros de diálogo de ejecución como en Mac OS. Se muestran íconos de aplicaciones recién instaladas en el escritorio .
Escritorio Independiente
Cada componente puede ser utilizado independientemente de otros componentes de LXDE, brindando la flexibilidad para usar partes de LXDE con otros sistemas Unix.
Compatible con los Estándares
Sigue todos los estándares especificados por la freedesktop.org.

Componentes

PCManFM
El Administrador de archivos rápido y robusto de LXDE. Provee navegación por pestañas e íconos de escritorio con un bajo uso de recursos de sistema.
LXPanel
Panel de escritorio amigable al usuario que proporciona las funciones más importantes que se pueden esperar de un panel de escritorio. La configuración se realiza a través de una interfaz gráfica de usuario (GUI).
LXSession Lite
Administrador de sesiones que sigue los estándares de X11 que incorpora las funciones de apagado/reinicio/suspención a través de HAL y gdm.
LXSession Edit
El administrador estándar de sesión, tiene la habilidad de encender aplicaciones desactivadas en LXDE.
LXAppearance
LXAppearance es un nuevo cambiador de temas GTK+ capaz de cambiar los iconos, fuentes y temas usados por las aplicaciones.
LXLauncher
LXLauncher permite al escritorio tener un modo fácil de lanzar aplicaciones.
Openbox
Administrador de ventanas altamente-configurable, ligero y estándar (adaptado por LXDE. Recomendamos usarlo como el administrador de ventanas predeterminado). Puede ser reemplazado por cualquier otro administrador de ventanas como icewm, fluxbox, metacity, ...etc.
GPicView
Un visor de imágenes muy simple, rápido y ligero; ofrece un arranque inmediato.
Leafpad
Editor de texto ligero y simple adaptado por LXDE. (Recomendamos usarlo como editor de texto predeterminado).
LXDE Common
El Archivo de configuración de opciones predeterminado para integrar los diferentes componentes de LXDE. LXDE Common administra el comportamiento del sistema y funciones para integrar iconos e ilustraciones.
LXTerminal
Emulador de terminal independiente de escritorio basado en VTE sin ninguna dependencia innecesaria (Todas las instancias comparten el mismo proceso para reducir el uso de memoria).
XArchiver
Archivador ligero, rápido e independiente de escritorio basado en gtk+, compatible con los formatos 7z, ARJ, bzip2, gzip, lzma, RAR, RPM, DEB, tar y ZIP (adaptado por LXDE. Sugerimos usarlo como archivador predeterminado).
LXRandR
Herramienta de configuración de Monitor. Puede conectar otra pantalla en LXDE o escoger usar un gran proyector. Se puede usar una pantalla principal y una pantalla externa simultáneamente. LXRandR configura la resolución automáticamente.
LXNM
Administrador de conexiones de red ligero. LXNM es un demonio que ayuda a LXDE a realizar conexiones de red inalámbricas (Linux-solamente).
LXMusic
El reproductor de música minimalista basado en XMMS2.
GtkNetCat
Interfaz Gráfica de Usuario para netcat. Netcat proporciona funciones de sistema como una utilidad de lectura y escritura para conexiones TCP o UDP en una red de computadoras.
LXShortCut
Una manera sencilla para editar accesos directos a aplicaciones.
LXInput
Una utilidad para configurar tu teclado y mouse en LXDE #lxde-settings-daemon, configura el  tema, mouse y teclado para usted. (trabaja con la herramienta de configuración lxinput)

Requerimientos de Sistema

LXDE ha sido probado en las siguientes configuraciones de hardware, y funciona bien.
CPU RAM Disco Duro Velocidad
Pentium II 266 MHz 192 MB 5400 rpm moderada - rápida
VIA 400 MHz 256 MB 5400 rpm moderada - rápida
Pentium III 600 MHz 512 MB 4500 rpm rápida
QEMU emulación en AMD Athlon 1.6 (1.4 GHz) 128 MB Disco Virtual QEMU rápida
AMD Athlon 1.6 (1.4 GHz) 512 MB 7200 rpm muy rápida
Intel Atom 512 MB Flash Disk muy rápida

Configuración Recomendada

  • Los requerimientos de hardware de LXDE son similares a los de Windows 98 (Quizás un poquito más altos). Un viejo CPU Pentium II es suficiente.
  • Después que X11 y LXDE inician, el uso total de memoria es de 45 MB en máquinas i386. Este valor puede ser más alto o más bajo dependiendo de las diferentes configuraciones de sistema.
  • Mientras LXDE no requiere mejor hardware, otras aplicaciones bajo X si lo necesitan. Por ejemplo, Firefox y OpenOffice.org 2 son bastante devoradores de memoria. Así que es recomendable que tengas más de 128 MB de memoria RAM.

Distros que usan LXDE actualmente

Distribuciones con LXDE en la wiki

jueves, 17 de octubre de 2013

Personalizando Ubuntu

Está Escrito:
Pero os ordenamos, hermanos, en el nombre de nuestro Señor Jesucristo, que os apartéis de todo hermano que ande desordenadamente, y no según la enseñanza que recibisteis de nosotros.( 2 Tesalonicenses 3:6)
Tomado de:Desarrolloweb
Aprendiendo a tener todo tu sistema de manera que sea bonito, práctico y fácil de usar.
Lo que vamos a aprender en este capítulo del Manual de Linux te ayudará a preparar tu sistema para que, además de ser muy atractivo, te ayude a tener todo de la manera que te resulte más práctica y efectiva.
Vamos a aprender algunas de las muchas características que Ubuntu te va a permitir personalizar, no solo en aspecto, sino en configuración de comportamientos y funcionalidades.
A menudo cuando se habla de personalizar el sistema operativo se hace únicamente referencia a cambiar el fondo de escritorio o los iconos de algunas aplicaciones. Esto, sin lugar a dudas, es importante para sentirse a gusto utilizándolo, pero no es lo único. Si nos acompañas en esta entrega del Manual de Linux, utilizaremos todo lo que ya sabes acerca de la interfaz gráfica de Ubuntu y sobre cómo instalar aplicaciones para dar un paso más.
Vamos a avanzar unos cuantos pasos para conseguir que tu experiencia del día a día con Linux sea cada vez más agradable y personal.
Habitualmente, cuando instalamos un nuevo sistema operativo, lo primero en que solemos fijarnos es en el aspecto que tiene todo y seguramente ya estás pensando en cómo puedes cambiar el aspecto de Ubuntu para que esté más a tu gusto. El alto grado de personalización y configuración posibles es algo que suele sorprender a las personas que comienzan a usar Linux.
Pero no perdamos más tiempo y comencemos.

Cambiando de aspecto: Cómo personalizar el "look" de Ubuntu.

La manera de acceder a la configuración de aspecto de Ubuntu es realmente intuitiva. Sobre el escritorio, haz clic en el botón derecho y selecciona cambiar el fondo del escritorio. Esta configuración también es accesible desde la Configuración general del sistema bajo el nombre de Apariencia o pulsando Súper y escribiendo "Apariencia".
Desde esta ventana, podemos personalizar varias cosas de nuestra interfaz, como fondo de escritorio, tema general de ventanas e iconos y algunas características del lanzador.
Para el cambio de Fondo de Escritorio tienes un menú desplegable a la derecha que nos da tres opciones. Podemos utilizar alguno de los fondos que Ubuntu incorpora con la instalación, agregar nuestros propios archivos o generar un fondo con degradado.
El fondo de escritorio que elijas, será también el que se mostrará al seleccionar la sesión de tu usuario en la pantalla de login de Ubuntu.
Nota: En caso de que decidamos agregar nuestras propias imágenes, es muy recomendable mantener la organización que tenemos para el resto de documentos del sistema. Es decir, te recomiendo que si vas a guardar archivos que usarás como fondos de escritorio, crees una carpeta especifica para guardarlas. El mejor lugar para hacerlo sería dentro de la propia carpeta de Imágenes presente en tu carpeta personal o /home.
Otro de los aspectos que puedes configurar desde aquí es el Tema de ventanas e iconos que mostrará tu sistema. Puedes seleccionarlo entre los cuatro temas que Ubuntu tiene pre-instalados.

Configurando el lanzador de aplicaciones

Puedes también configurar el tamaño de los iconos que aparecen en el lanzador, lo que evidentemente afecta al tamaño del propio lanzador. Esto puede ser simplemente por cuestiones estéticas, pero también puede resultar muy útil si trabajas desde un portátil. Especialmente si el monitor del mismo no es muy grande.
En la segunda pestaña de la ventana Apariencia puedes configurar varios parámetros que hacen referencia al comportamiento del Lanzador de aplicaciones.
Desde esta opciones, determinaremos si el lanzador debe o no permanecer siempre visible. Además podemos también decidir el punto en el área en el que tendremos que colocar el cursor para que se muestre de nuevo y la sensibilidad con la que el lanzador responderá al estímulo del cursor.
Nota: Es importante configurar bien este parámetro, con el fin de que no llegue a resultar molesto que el lanzador se despliegue cada vez que movemos el ratón para otra cosa. En el otro extremo, tampoco queremos que no reaccione cuando queremos que se muestre.
Si no queremos recurrir a la instalación de ningún programa, estas son las principales configuraciones que Ubuntu nos brinda para configurar el aspecto y algunos comportamientos de nuestra interfaz.
Para muchos usuarios seguro que es más que suficiente. Sin embargo, para los más amantes de la personalización y la configuración de todo el escritorio, aún podemos hacer mucho más.
Te propongo que, llegados a este punto, demos un paso más y tomemos el control total de la interfaz de Unity, obteniendo incluso nuevas opciones y posibilidades.

My Unity: Toda la interfaz en tus manos

My Unity es un programa que permite una configuración muy a fondo de la interfaz de Unity. Si bien no está pre-instalada en el sistema, es muy fácil de instalar porque de hecho puede encontrarse en los repositorios.
Podemos instalar My Unity desde el Centro de Software o desde la terminal ( Ctrl + Alt + T) escribiendo:
$sudo apt-get install myunity
Nota: Me gustaría recordar que al tratarse de una aplicación externa, las opciones de configuración que ofrece pueden variar de variar de una versión a otra.

Más temas a tu disposición

Algo que llama la atención de My Unity es que multiplica, con solo instalarlo, el número de temas disponibles para tu Ubuntu, mucho más allá de los cuatro de que dispones por defecto. También el tema de iconos se puede seleccionar de manera independiente al de ventanas.
Una opción que Unity proporciona y que se encuentra disponible en otro entornos de escritorio, es la posibilidad de mostrar un icono en el escritorio para el acceso directo a nuestra Carpeta Personal de usuario o /home . También a través de de la misma pestaña denominada "Desktop" puedes habilitar la opción de tener también un icono de acceso directo a todas la unidades que montes en tu sistema. Así puedes acceder fácilmente a a dispositivos externos como un pendrive, reproductor o tarjeta de memoria.

Cuatro escritorios no siempre son suficientes

Es muy habitual que cuando estamos haciendo uso de nuestro sistema, tengamos a la vez abiertas varias aplicaciones como un editor de texto, navegador, reproductor de música, cliente de Twitter... En Ubuntu es fácil manejar esto sin tener ocultas unas ventanas detrás de otra, organizando las tareas en escritorios.
Por defecto, Ubuntu incorpora como ya hemos visto cuatro escritorios. Pues bien, aunque seguramente no llegues a usarlos todos, My Unity te brinda la posibilidad de expandir tu zona de trabajo hasta en ocho escritorios en horizontal y ocho en vertical.

Me gustaría cambiar el lanzador y panel (dash): ¿Cómo lo hago?

A través de las opciones de My Unity, el lanzador se vuelve mucho más configurable de lo que originalmente vimos al inicio del artículo. Puedes configurar tamaño, color, comportamiento, transparencia y otros aspectos tanto del lanzador como del Dash, el panel que se despliega al pulsar la tecla Súper.
Nota: Si utilizas Ubuntu en un netbook o simplemente un portátil que no tenga un monitor demasiado grande, te recomiendo que en la pestaña Dash, configures el tamaño del tablero en modo netbook. De esta manera, al desplegarlo aprovechará al máximo el espacio disponible para representarse en tu pantalla.

Más opciones de configuración

Como ya has visto al explorar, My Unity tiene aún más opciones de las que hemos explicado. Te invito a que experimentes con ellas para dejar todo a tu gusto. En todas las pestañas tienes un opción denominada "default settings" que devolverá todo a su configuración original.
Seguro que ahora todo tu escritorio será algo realmente personal. No solo porque te resulte estéticamente mas agradable, sino porque además has podido de manera muy fácil, configurar el comportamiento de algunas herramientas de Ubuntu que manejarás todo el tiempo. Y todo ello con instalar un solo programa que además has podido encontrar en los propios repositorios de Ubuntu.
En el próximo artículo vamos a dar un salto aun mas grande para convertir Ubuntu en algo verdaderamente tuyo. Instalaremos y configuraremos opciones que te harán muy fáciles tareas como controlar la temperatura de tu máquina, configurar el comportamiento del touchpad en un portátil o hacer más rápida y efectiva la búsqueda de archivos, tanto en tu propia máquina como en Internet. Sin perder de vista que, como siempre, lo tendremos integrado con todo nuestro sistema.

jueves, 15 de agosto de 2013

Script para formatear usb

Esta Escrito:
Pues si vivimos, para el Señor vivimos; y si morimos, para el Señor morimos. Así pues, sea que vivamos, o que muramos, del Señor somos. (Romanos 14:8)
Tomado de: EspacioLinux
Busque en el foro por si existía algún tema similar y pues creo que no, sin embargo considero que
que en vez reinventar la rueda, más bien puede resultar interesante esta solución, pues no es para nada compleja
y puede ser entendida en poco tiempo, (de hecho hasta hoy programe algo "serio" en bash).

Por otro lado, este script no es definitivo y supongo que se le pueden hacer muchas mejoras
así que serán muy interesantes sus comentarios al respecto.
Código:
#!/bin/bash


## pequeño script para formatear dispositivos USB  de manera sencilla
## este script funciona para dispositivos con formato fat fat32

     function cambiaNombreDispositivo(){
            ## esta funcion se encarga de cambiarle el nombre al dispositivo si lo deseamos. 
               echo digite el nombre  que desea ponerle al dispositivo
               read nombre
               nombreDispositivo=$nombre
         }
       
    function formateo(){
            ## esta funcion se encarga de formatear el dispositivo.
               echo acontinuacion digite la contraseña del superusuario para continuar
               umount $puntoMontaje                             ## desmonta el dispositivo
               mkfs.vfat -n $nombreDispositivo $puntoMontaje -I ## formatea con el nuevo nombre y el punto de montaje del dispositivo
             
         }    
    
 
    
    echo conecte su llave o dispositivo usb al computador
   
      puntoMontaje=$(mount | grep vfat | cut -c 1-8) ## obtiene el punto de montaje del dispositivo
      nombreDispositivo=$(df -H | grep $puntoMontaje | cut -c 88-98) ## obtiene el nombre del dispositivo, si es que lo tiene
     tamanioDispositivo=$(df -H | grep $puntoMontaje | cut -c 58-60) ## obtiene el tamanio del dispositivo en GB con potencias de 1000 y no 1024
   
    echo el dispositivo que desea formatear se llama $nombreDispositivo  y su tamanio es $tamanioDispositivo GB
   
    ## -ge mayor o igual que
    ## -gt mayor que
    ## -lt menor que
    ## -le menor o igual que
     
    if [ $tamanioDispositivo -ge 16 ];then

      echo su dispositivo es mas grande que 16 GB. Esta seguro de que desea formatearlo? escriba si o no 
         read escoja
         
          if [ $escoja == si ]; then
         
            ## pasa a formatear la llave 
            cambiaNombreDispositivo ## llama a la funcion cambia nombre que asigna otra etiqueta al dispositivo
            formateo                ## llama a la funcion que formatea el dispositivo
            echo su dispositivo ha sido formateado correctamente
         
          exit
         
          else
            echo gracias por su tiempo
            exit
         fi 
         
   else
   ## formatea la llave
      cambiaNombreDispositivo
      formateo
      echo su dispositivo se ha formateado correctamente
   fi    

   


pastebin para los ojos: http://pastebin.com/NFUYeGjx

Limitaciones conocidas:

1- solo lista dispositivos con formato fat
2- necesita permisos de superusuario para funcionar correctamente, pues emplea mkfs