24 oct 2010

Crear DVD con Brasero y DeVeDe Creator

Bueno, una de las cosas que Linux hace fácil es la creación de DVD/CD de música y Vídeo. De momento vamos a enseñar como se crea un DVD para que pueda ser leído en cualquier DVD domestico. Bueno empecemos paso a paso.

Estos son los pasos que tendremos que seguir, pero lo primero es tener instalados los programas Brasero y DeVeDe Creator en nuestro sistema, en mi caso Ubuntu 10.04, estos programas lo encontramos en el Gestor de paquetes Sinaptic.

Una vez instalados pasaremos a la creación de nuestro DVD.


  • El primer paso será crear la imagen que se grabará en nuestro DVD finalmente, para ello comenzamos ejecutando el programa DeVeDe Creator. Desde Aplicaciones > Sonido y video > DeVeDe Creator de CD/DVDs de vídeo.

    • Seguidamente nos saldrá una ventana de diálogo donde elegiremos la opción que queramos, en nuestro caso elegimos Vídeo DVD crea un DVD de vídeo válido para cualquier reproductor doméstico.

    • Nos saldrá una ventana de diálogo que está dividida en dos partes, en la izquierda está el título (por si metemos varias películas en un DVD) y en la derecha el archivo con nuestra película. Seguidamente pulsamos el botón Añadir de la ventana de la parte derecha. 
    • Desmarcamos de la opción Menú el botón Crear un menú con los títulos.
    • Si no está marcadomarca el botón PAL si vives en Europa o NSTC si vives EE.UU
    • Si no está marcado, marcamos crear una imagen ISO o BIN/CUE, lista para grabar en disco.
      •  En esta ventana de diálogo elegimos el lugar donde se encuentra nuestro archivo guardado, para eso pulsamos en la gran barra que está debajo de la opción Archivo.

      • Seguidamente elegimos el archivo y le damos a Abrir.

      • En la siguiente ventana vemos una barra que nos muestra el espacio que ocupará en el DVD, pulsamos sobre Adelante.


      • Nos saldrá una ventana con el nombre de la imagen que se grabará, lo podemos dejar así o elegir el nombre y el directorio donde se guardará la imagen (en mi caso lo dejo tal como está así no se me acumularán imágenes y no ocupará espacio en el disco duro ya que siempre se sobreescribirá), en caso de que tengas una imagen ya con el mismo nombre una ventana te advertirá del hecho con lo cual podrás elegir que se auto-escriba.
      • Esta ventana nos dice que ya se está creando y convirtiendo el fichero.


      • Por último esta ventana nos anuncia que la grabación ha llegado a buen puerto con lo cual ya la tenemos preparada para grabarla/quemarla en un DVD para que lo podamos disfrutar en nuestra TV. Le damos a aceptar y ya tenemos la primera parte de la grabación hecha (la parte más larga).

      22 oct 2010

      Computación en nube

      La computación en nube, del inglés "Cloud computing", es un paradigma que permite ofrecer servicios de computación a través de Internet. La "nube" es una metáfora de Internet.


      Introducción

      En este tipo de computación todo lo que puede ofrecer un sistema informático se ofrece como servicio,[1] de modo que los usuarios puedan acceder a los servicios disponibles "en la nube de Internet"[2] sin conocimientos (o, al menos sin ser expertos) en la gestión de los recursos que usan.[3] Según el IEEE Computer Society, es un paradigma en el que la información se almacena de manera permanente en servidores de Internet y se envía a cachés temporales de cliente, lo que incluye equipos de escritorio, centros de ocio, portátiles, etc. Esto se debe a que, pese a que las capacidades de los PC han mejorado sustancialmente, gran parte de su potencia se desaprovecha, al ser máquinas de propósito general.[cita requerida]

      "Cloud computing" es un nuevo modelo de prestación de servicios de negocio y tecnología, que permite al usuario acceder a un catálogo de servicios estandarizados y responder a las necesidades de su negocio, de forma flexible y adaptativa, en caso de demandas no previsibles o de picos de trabajo, pagando únicamente por el consumo efectuado.

      El cambio paradigmático que ofrece computación en nube es que permite aumentar el número de servicios basados en la red. Esto genera beneficios tanto para los proveedores, que pueden ofrecer, de forma más rápida y eficiente, un mayor número de servicios, como para los usuarios que tienen la posibilidad de acceder a ellos, disfrutando de la ‘transparencia’ e inmediatez del sistema y de un modelo de pago por consumo.

      Computación en nube consigue aportar estas ventajas, apoyándose sobre una infraestructura tecnológica dinámica que se caracteriza, entre otros factores, por un alto grado de automatización, una rápida movilización de los recursos, una elevada capacidad de adaptación para atender a una demanda variable, así como virtualización avanzada y un precio flexible en función del consumo realizado.

      La computación en nube es un concepto que incorpora el software como servicio, como en la Web 2.0 y otros conceptos recientes, también conocidos como tendencias tecnológicas, que tienen en común el que confían en Internet para satisfacer las necesidades de cómputo de los usuarios.

      Comienzos

      El concepto de la computación en la nube empezó en proveedores de servicio de Internet a gran escala, como Google, Amazon AWS y otros que construyeron su propia infraestructura. De entre todos ellos emergió una arquitectura: un sistema de recursos distribuidos horizontalmente, introducidos como servicios virtuales de TI escalados masivamente y manejados como recursos configurados y mancomunados de manera continua. Este modelo de arquitectura fue inmortalizado por George Gilder en su artículo de octubre 2006 en la revista Wired titulado Las fábricas de información. Las granjas de servidores, sobre las que escribió Gilder, eran similares en su arquitectura al procesamiento “grid” (red, parrilla), pero mientras que las redes se utilizan para aplicaciones de procesamiento técnico ligeramente acoplados (loosely coupled un sistema compuesto de subsistemas con cierta autonomía de acción, que mantienen una interrelación continua entre ellos), este nuevo modelo de nube se estaba aplicando a los servicios de Internet.[4]

      Beneficios

      • Integración probada de servicios Red. Por su naturaleza, la tecnología de "Cloud Computing" se puede integrar con mucha mayor facilidad y rapidez con el resto de sus aplicaciones empresariales (tanto software tradicional como Cloud Computing basado en infraestructuras), ya sean desarrolladas de manera interna o externa.[5]
      • Prestación de servicios a nivel mundial. Las infraestructuras de "Cloud Computing" proporcionan mayor capacidad de adaptación, recuperación de desastres completa y reducción al mínimo de los tiempos de inactividad.
      • Una infraestructura 100% de "Cloud Computing" no necesita instalar ningún tipo de hardware. La belleza de la tecnología de "Cloud Computing" es su simplicidad… y el hecho de que requiera mucha menor inversión para empezar a trabajar.
      • Implementación más rápida y con menos riesgos. Podrá empezar a trabajar muy rápidamente gracias a una infraestructura de "Cloud Computing". No tendrá que volver a esperar meses o años e invertir grandes cantidades de dinero antes de que un usuario inicie sesión en su nueva solución. Sus aplicaciones en tecnología de "Cloud Computing" estarán disponibles en cuestión de semanas o meses, incluso con un nivel considerable de personalización o integración.
      • Actualizaciones automáticas que no afectan negativamente a los recursos de TI. Si actualizamos a la última versión de la aplicación, nos veremos obligados a dedicar tiempo y recursos (que no tenemos) a volver a crear nuestras personalizaciones e integraciones. La tecnología de "Cloud Computing" no le obliga a decidir entre actualizar y conservar su trabajo, porque esas personalizaciones e integraciones se conservan automáticamente durante la actualización.
      • Contribuye al uso eficiente de la energía. En este caso, a la energía requerida para el funcionamiento de la infraestructura. En los datacenters tradicionales, los servidores consumen mucha más energía de la requerida realmente. En cambio, en las nubes, la energía consumida es sólo la necesaria, reduciendo notablemente el desperdicio.

      Desventajas

      • La centralización de las aplicaciones y el almacenamiento de los datos origina una dependencia de los proveedores de servicios.
      • La disponibilidad de las aplicaciones están atadas a la disponibilidad de acceso a internet.
      • Los datos "sensibles" del negocio no residen en las instalaciones de las empresas por lo que podría generar un contexto de alta vulnerabilidad para la sustracción o robo de información.
      • La confiabilidad de los servicios depende de la "salud" tecnológica y financiera de los proveedores de servicios en nube. Empresas emergentes o alianzas entre empresas podrían crear un ambiente propicio para el monopolio y el crecimiento exagerado en los servicios.
      • La disponibilidad de servicios altamente especializados podría tardar meses o incluso años para que sean factibles de ser desplegados en la red.
      • La madurez funcional de las aplicaciones hace que continuamente estén modificando sus interfaces por lo cual la curva de aprendizaje en empresas de orientación no tecnológica tenga unas pendientes pequeñas.
      • Seguridad. La información de la empresa debe recorrer diferentes nodos para llegar a su destino, cada uno de ellos ( y sus canales) son un foco de inseguridad. Si se utilizan protocolos seguros, HTTPS por ejemplo, la velocidad total disminuye debido a la sobrecarga que requieren estos protocolos.
      • Escalabilidad a largo plazo. A medida que más usuarios empiecen a compartir la infraestructura de la nube, la sobrecarga en los servidores de los proveedores aumentaran, si la empresa no posee un esquema de crecimiento óptimo puede llevar a degradaciones en el servicio o jitter altos.

      Capas

      • Software como un Servicio (SaaS, sus siglas en inglés)

      SaaS se encuentra en la capa más alta y caracteriza una aplicación completa ofrecida como un servicio, en-demanda, vía multitenencia —que significa una sola instancia del software que corre en la infraestructura del proveedor y sirve a múltiples organizaciones de clientes. El ejemplo de SaaS conocido más ampliamente es Salesforce.com, pero ahora ya hay muchos más, incluyendo las Google Apps que ofrecen servicios básicos de negocio como el e-mail. Por supuesto, la aplicación multitenencia de Salesforce.com ha constituido el mejor ejemplo de cómputo en nube durante unos cuantos años. Por otro lado, como muchos otros jugadores en el negocio del cómputo en nube, Salesforce.com ahora opera en más de una capa de la nube con su Force.com, que ya está en servicio, y que consiste en un ambiente de desarrollo de una aplicación compañera (“companion application”), o plataforma como un servicio.[6]

      • Plataforma como un Servicio (PaaS sus siglas en inglés)

      La capa del medio, o PaaS, es la encapsulación de una abstración de un ambiente de desarrollo y el empaquetamiento de una carga de servicios. La carga arquetipo es una imagen Xen (parte de Servicios Web Amazon) conteniendo una pila básica Red (por ejemplo, un distro Linux, un servidor Red, y un ambiente de programación como Perl o Ruby). Las ofertas de PaaS pueden dar servicio a todas las fases del ciclo de desarrollo y pruebas del software, o pueden estar especializadas en cualquier área en particular, tal como la administración del contenido.

      Los ejemplos comerciales incluyen Google App Engine, que sirve aplicaciones de la infraestructura Google. Servicios PaaS tales como éstos permiten gran flexibilidad, pero puede ser restringida por las capacidades que están disponibles a través del proveedor.

      • Infraestructura como un Servicio (IaaS sus siglas en inglés)

      IaaS se encuentra en la capa inferior y es un medio de entregar almacenamiento básico y capacidades de cómputo como servicios estandarizados en la red. Servidores, sistemas de almacenamiento, conexiones, enrutadores, y otros sistemas se concentran (por ejemplo a través de la tecnología de virtualización) para manejar tipos específicos de cargas de trabajo —desde procesamiento en lotes (“batch”) hasta aumento de servidor/almacenamiento durante las cargas pico. El ejemplo comercial mejor conocido es Amazon Web Services, cuyos servicios EC2 y S3 ofrecen cómputo y servicios de almacenamiento esenciales (respectivamente). Otro ejemplo es Joyent cuyo producto principal es una línea de servidores virtualizados, que proveen una infraestructura en-demanda altamente escalable para manejar sitios Web, incluyendo aplicaciones Web complejas escritas en Ruby en Rails, PHP, Python, y Java.

      Tipos de nubes

      • Las nubes públicas se manejan por terceras partes, y los trabajos de muchos clientes diferentes pueden estar mezclados en los servidores, los sistemas de almacenamiento y otras infraestructuras de la nube. Los usuarios finales no conocen qué trabajos de otros clientes pueden estar corriendo en el mismo servidor, red, discos como los suyos propios.[7]
      • Las nubes privadas son una buena opción para las compañías que necesitan alta protección de datos y ediciones a nivel de servicio. Las nubes privadas están en una infraestructura en-demanda manejada por un solo cliente que controla qué aplicaciones debe correr y dónde. Son propietarios del servidor, red, y disco y pueden decidir qué usuarios están autorizados a utilizar la infraestructura.
      • Las nubes híbridas combinan los modelos de nubes públicas y privadas. Usted es propietario de unas partes y comparte otras, aunque de una manera controlada. Las nubes híbridas ofrecen la promesa del escalado aprovisionada externamente, en-demanda, pero añaden la complejidad de determinar cómo distribuir las aplicaciones a través de estos ambientes diferentes. Las empresas pueden sentir cierta atracción por la promesa de una nube híbrida, pero esta opción, al menos inicialmente, estará probablemente reservada a aplicaciones simples sin condicionantes, que no requieran de ninguna sincronización o necesiten bases de datos complejas.

      Comparaciones

      La computación en nube usualmente es confundida con la computación en grid (red) (una forma de computación distribuida por la que "un súper computador virtual" está compuesto de un conjunto ó cluster enlazado de ordenadores débilmente acoplados, actuando en concierto para realizar tareas muy grandes).[8]

      Controversia

      Dado que la computación en nube no permite a los usuarios poseer físicamente los dispositivos de almacenamiento de sus datos (con la excepción de la posibilidad de copiar los datos a un dispositivo de almacenamiento externo, como una unidad flash USB o un disco duro), deja la responsabilidad del almacenamiento de datos y su control en manos del proveedor.

      La computación en nube ha sido criticada por limitar la libertad de los usuarios y hacerlos dependientes del proveedor de servicios.[9] Algunos críticos afirman que sólo es posible usar las aplicaciones y servicios que el proveedor esté dispuesto a ofrecer. Así, el London Times compara la computación en nube con los sistemas centralizados de los años 50 y 60, en los que los usuarios se conectaban a través de terminales "gregarios" con ordenadores centrales. Generalmente, los usuarios no tenían libertad para instalar nuevas aplicaciones, y necesitaban la aprobación de administradores para desempeñar determinadas tareas. En suma, se limitaba tanto la libertad como la creatividad. El Times argumenta que la computación en nube es un retorno a esa época.[cita requerida]

      De forma similar, Richard Stallman, fundador de la Free Software Foundation, cree que la computación en nube pone en peligro las libertades de los usuarios, porque éstos dejan su privacidad y datos personales en manos de terceros. Ha afirmado que la computación en nube es "simplemente una trampa destinada a obligar a más gente a adquirir sistemas propietarios, bloqueados, que les costarán más y más conforme pase el tiempo."

      Fuente:

      19 oct 2010

      Herramientas para montar y desmontar dispositivos

      Linux no usa letras para describir dispositivos al estilo Windows, en su lugar, engancha los dispositivos directamente al árbol de directorios en un proceso conocido con el nombre de "montaje", que se lleva a cabo en el arranque, o bien a través de comandos manuales.

      Los ficheros de dispositivos para todos los tipos de dispositivos, tales como los dispositivos de red, los extraíbles o particiones de disco duro, pueden encontrarse habitualmente bajo el directorio /dev (viene de "device", es decir "dispositivo").

      Veamos los NOMBRES de los dispositivos

      Los nombres para los dispositivos IDE (discos duros, CD-ROM o DVD) comienzan con hd (de "hard disk" o disco duro). La letra que sigue a continuación depende del conector y del orden.

      Cada controlador proporciona dos conectores. El primero de ellos es el llamado principal y el segundo el esclavo. Los nombres de los dispositivos unidos al primer controlador son:

      • hda .- principal
      • hdb .- esclavo
      Los que cuelgan del del segundo controlador son:

      • hdc .- principal
      • hdd .- esclavo
      Linux maneja discos SATA, dispositivos de almacenamiento en masa USB y dispositivos ZIP como si fueran dispositivos SCSI. Los nombres de estos dispositivos de fichero comienzan con sd.

      Los CD SCSI y los dispositivos de DVD se conocen como scd, y los dispositivos tipo disquetera como fd.

      Además de las letras, muchos dispositivos tienen también números que reflejan la estructura lógica de los medios de almacenamiento. Por ejemplo la partición primaria en un disco duro principal IDE unida al primer controlador se cataloga como hda1, mientras que la segunda partición sería hda2, y así sucesivamente.

      Los números de las particiones lógicas comienzan en 5. La segunda partición lógica en hdc tendría por tanto el fichero de dispositivo mapeado como /dev/hdc6.

      El sistema enumera de la misma manera dispositivos de CD/DVD SCSI (scd0, scd1, etc.), aunque no es muy común disponer de una disquetera actualmente en los ordenadores modernos.

      Numerosas distribuciones usan alias como /dev/cdrom o /dev/dvd que indican los nombres de los dispositivos para los dispositivos CD-ROM/DVD.

      Para mantener el acceso a varios dispositivos y otros sistemas de ficheros hay que crear un enlace entre un dispositivo y un directorio en el árbol del sistema de ficheros de Linux. El dispositivo de ficheros está montado de manera que esto ocurra.

      MONTAJE

      El montaje ocurre en el momento del arranque o bien manualmente después del arranque. Las particiones del disco duro se montan normalmente durante el tiempo de arranque, mientras que para CDs, DVDs y otros dispositivos extraíbles se hacen manualmente.

      El montaje forma parte a menudo del dominio del administrador root del sistema, a menos que este privilegio se haya dado específicamente a los usuari
      os.

      La utilidad que se usa en la línea de comando para el montaje se llama mount. Junto a un determinado número de parámetros opcionales, es preciso especificar el fichero de dispositivo y el punto de montaje. Si se invoca el parámetro mount sin especificar ningún parámetro, el comando dirá que dispositivos se encuentran montados en ese momento:


      Además de las etiquetas de partición y los puntos de montaje, mount informa sobre los sistemas de ficheros para los dispositivos, lo cual permite conocer las opciones de montaje que están en ese lugar.

      MONTAJE DE DISPOSITIVOS EXTRAÍBLES

      Los datos de DVDs, CDs, disquetes y dispositivos USB normalmente se monta manualmente, a menos que se disponga de un automontador que lleve a cabo esta tarea. Linux asigna directorios bajo /mnt o /media para dispositivos extraíbles. En la línea de comandos es necesario escribir el nombre del fichero del dispositivo y el punto de montaje. Si se está montando un dispositivo de almacenamiento en masa USB, tiene sentido comprobar el fichero log /var/log/messages para ver si el fichero ha sido detectado correctamente y para descubrir el nombre del fichero del dispositivo.

      Para montar un dispositivo detectado por ejemplo sdd, en un directorio existente, /media/usb, escribimos lo siguiente:


      No es necesario especificar la partición, si el stick USB no está particionado, para un stick formateado será preciso especificar /dev/sdd1.

      Linux auto-detecta el tipo de sistema de ficheros para un medio. Si en su lugar se obtiene un mensaje de error, puede echarse una mano a Linux y especificarle explícitamente el tipo de ficheros, suministrando un valor para el parámetro -t, por ejemplo:


      sirve para un viejo sistema de ficheros Windows en un medio con formato FAT. Además de vfat (para el sistema de ficheros Windows/DOS), los valores soportados sin ext2 (Extended Filesystem, Version 2), ext3 (Extended Filesystem, Version3), reiserfs (Reiser Filesystem), iso9660 (ISO9660), ntfs (NT Filesystem), etc., por citar unos pocos.

      La mayoría de los sistemas definen los nombres de los dispositivos y puntos de montaje para CDs/DVDs y disquetes, esto significa que con un comando tal como

      puede ser todo lo necesario para montar un CD.

      OPCIONES DE MONTAJE CRITICAS

      El programa mount dispone de un interesante número de parámetros. la opción -o ro hace que el dispositivo sea "solo de lectura". Para "Lectura-Escritura" utilizaremos -o rw, que es la opción predeterminada. También puede soportar combinaciones para eliminar acceso de escritura para un medio montado con acceso de lectura-escritura habrá que suministrar dos parámetros cuando se ejecuta el comando, por ejemplo:

      Esto le dice a mount que vuelva a montar el medio mientras que al mismo tiempo se deshabilita el acceso de escritura ro.

      El comando mount posee un parámetro práctico que permite montar imágenes ISO. Para montar una copia 1:1 de un disco antes de copiarlo en un CD/DVD con el propósito de testearlo, hacemos lo siguiente:

      Esto le dice a Linux que use un dispositivo cerrado o de loop para acceder a la imagen como si fuese un dispositivo genuino.

      Tabular, el Fichero "/etc/fstab"

      Linux suele montar algunos sistemas de ficheros directamente en el momento del arranque. El fichero /etc/fstab tiene entradas para los sistemas de ficheros a montar. Además del juego completo de particiones del disco duro, este fichero contiene definiciones para varios dispositivos extraíbles.

      La primera columna contiene los ficheros de dispositivos, mientras que la segunda proporciona los puntos de montaje. Las otras entradas especifican el sistema de ficheros para los dispositivos (normalmente el kernel autodetecta esto con auto) y varias opciones de mount.

      Además de los parámetros a los que se le han hecho referencia anteriormente, ro y rw, podrán verse a menudo entradas como:
      • user (el dispositivo puede ser montado sin privilegios root)
      • nouser (el dispositivo no puede ser montado sin privilegios root)
      • auto (el sistema de ficheros se monta en el momento del arranque)
      • noauto, exe (los programas en este medio son ejecutables)
      FUERA

      Próximamente... Comando para desmontar ficheros (lo prometo jeje)

      24 jun 2010

      PROGRAMACIÓN SHELL LINUX 1

      Etiquetas de Technorati:

      Bueno empezaré en plan rápido sin prólogos ni leches, jeje, lo que quiero es que se entienda este curso de programación con el shell de Linux/Unix. Empezamos…

      Las variables de usuario

      Como poner nombre a una variable

      A continuación se muestran las reglas que hay que seguir para dar un nombre a las variables:

      Definir una variable

      Una variable está definida desde el momento en que ha sido inicializada. El contenido de una variable se considera por el shell como un conjunto de caracteres

      terminal1

      terminal2

      En este ejemplo, el shell interpreta var1 como el comando a ejecutar, = y palabra1 como los dos argumentos del comando var1. Dicho de otra manera, no interpreta el simbolo = como símbolo de asignación.

      Asignar una cadena de caracteres con al menos un espacio

      El carácter de espacio tiene que estar protegido ya que es un carácter especial del shell (es un separador de palabras en la línea de comandos).

      Ejemplo:

      terminal3

      Cuando hay espacios se introduce entre comillas “”

      Variable indefinida

      Una variable que nunca se ha inicializado está vacía; utilizar una variable vacía no se considera un error en shell.

      Ejemplo:

      terminal4

      Borrar la definición de una variable

      Con el comando interno unset podemos borrar la definición de una variable.

      Ejemplo:

      terminal5

      Aislar el nombre de una variable

      Hay que poner especial atención en la concatenación del contenido de una variable con una cadena de caracteres para que el shell interprete correctamente el nombre de la variable.

      Ejemplo:

      Para el shell, el carácter _ forma parte del nombre de la primera variable:

      terminal6

      Para el shell, la primera variable se llama arch_. Por lo tanto es sustituido por su valor (que es vacio) y finalmente concatenado con el contenido de la variable fechadia.

      Para especificar al shell cuáles son los caracteres que forman parte del nombre de una variable, hay que poner el nombre de éste último entre {}.

      Sustitución de caracteres

      El shell ofrece la posibilidad de atribuir un valor por defecto a las variables no inicializadas o, al contrario, a las inicializadas.

      Expresión ${variable:-valor}

      Si la variable no está vacía, la expresión se substituye por el contenido de ésta.

      Si la variable está vacía, la expresión se substituye por valor.

      Ejemplo:

      terminal7

      Expresión ${variable:=valor}

      Si la variable no está vacía, la expresión se substituye por $variable.

      Si la variable está vacía, a la variable se le asigna un valor y la expresión se substituye por valor.

      Ejemplo:

      terminal8

      Expresión ${variable:+valor}

      Si la variable no está vacía, la expresión se substituye por valor.

      Si la variable está vacía, la expresión se substituye por $variable, luego estará vacía.

      Ejemplo:

      terminal9

      ${variable:?mensaje}

      Si la variable no está vacía, la expresión se substituye por $variable.

      Si la variable está vacía, el shell muestra el nombre de la variable seguido de la cadena de caracteres mensaje.

      NOTA: Si la variable está vacía y este comando está en un script de shell, éste muestra el mensaje y finaliza inmediatamente.

      Ejemplo:

      La variable var está vacía:

      clip_image001

      Mensaje por defecto:

      clip_image002

      Hasta aquí el capítulo primero de este curso, espero que te sea de gran utilidad, hasta la próxima.

      21 jun 2010

      Comandos editor vi

      Etiquetas de Technorati: ,
        

      ESC
      Abandonar el modo de inclusión de texto para volver

      al modo de comandos; también se usa para cancelar

      comandos. (Usarlo en caso de duda)

      <CTRL>-F
      Avanzar una pagina hacia adelante

      <CTRL>-B
      Avanzar una pagina hacia atrás

      <CTRL>-L
      Refrescar la pantalla

      G
      Cursor al final del fichero

      1G
      Cursor al principio del fichero

      $
      Cursor al final de la línea

      0 (cero)
      Cursor al principio de la línea

      a
      Añadir texto a continuación del cursor [TEXTO]

      i
      Insertar texto en la posición del cursor [TEXTO]

      A
      Añadir texto al final de la línea [TEXTO]

      I
      Insertar texto al principio de la línea [TEXTO]

      o
      Añadir una línea debajo de la del cursor [TEXTO]

      O
      Añadir una línea encima de la del cursor [TEXTO]

      u
      Deshacer el último cambio realizado

      :red
      Rehace los cambios deshechos con ''u'' o '':u''

      x
      Borrar un carácter (y ponerlo automáticamente en el ALMACEN)

      D
      Borrar el resto de la línea (a la derecha del cursor)

      dw
      Borrar una palabra (hasta el primer blanco a la dcha. del cursor)

      dd
      Borrar la línea entera

      8x
      Borrar 8 caracteres

      2dw
      Borrar 2 palabras

      7dd
      Borrar 7 líneas

      p
      Poner el contenido del ALMACEN temporal a continuación del cursor

      P
      Poner el contenido del ALMACEN temporal antes del cursor

      s
      Substituir un carácter por texto [TEXTO]

      15s
      Substituir 15 caracteres por texto [TEXTO]

      r
      Substituir un solo carácter por otro nuevo, sin entrar

      en modo de TEXTO

      R
      Sobrescribir [TEXTO]

      J
      Unir la línea del cursor y la siguiente

      i[ENTER]
      Romper una línea en dos

      .
      Repetir el último cambio realizado

      yy
      Poner la línea presente en el almacén temporal

      5yy
      Poner cinco líneas en el almacén

      :w
      Guardar en el fichero que se esta editando los cambios realizados

      (Aconsejable ejecutarlo de vez en cuando)

      :w!
      Ídem, forzándolo si fuese necesario.

      :w Fichero
      Guardar en el fichero "Fichero"

      :wq
      Guardar y salir de "vi".

      :wq!
      Ídem, forzándolo si fuese necesario.

      NOTA: Cada vez que se borra texto, el texto borrado pasa a un ALMACEN temporal, de donde elimina lo que estuviese almacenado previamente.

      :q
      Salir de "vi", si no se han realizado cambios desde

      la última vez que se han salvado.

      :q!
      Salir de "vi" en todo caso. No se guardan aquellos

      cambios que no se hayan salvado.

      :set nu
      Visualizar los números de las líneas

      :set nonu
      Ocultar los números de las líneas

      +
      Ir a la línea siguiente

      -
      Ir a la línea anterior

      :+8
      Ir a la línea que esta 8 puestos más abajo

      :-9
      Ir a la línea que esta 9 puestos más arriba

      :6
      Ir a la línea numero 6

      ma
      Marcar la línea del cursor con la etiqueta 'a'.

      (Sólo puede usarse una letra)

      'a
      Ir a la línea marcada con 'a".

      :$
      Ir a la última línea del fichero, "$".

      :P,U d
      Borrar las líneas entre P y U, ambas incluidas.

      P y U son identificadores de líneas, es decir,

      números de líneas o etiquetas. Ejemplos:

      :6,'a d borrar las líneas entre la "6" y la 'a'

      :'a,'b d borrar las líneas entre la 'a' y la "b"

      :'a,$ d borrar las líneas desde 'a' hasta el final

      :P,U w Fichero
      Escribir en el fichero "Fichero" las líneas

      comprendidas entre P y U, ambas incluidas

      :r Fichero
      Leer el contenido del fichero "Fichero" y ponerlo a

      continuación de la línea del cursor.

      /texto/
      Buscar, hacia adelante, la aparición de "texto".

      ?texto?
      Buscarlo hacia atrás.

      n
      Continuar la búsqueda en la dirección elegida.

      N
      Continuar la búsqueda en la dirección opuesta.

      /i.ad/ busca iXad, donde X es cualquier carácter

      /i...ad/ busca iXXad, donde XX son dos

      caracteres cualesquiera

      :P,U s/texto viejo/texto nuevo/
      Substituir texto desde las líneas P a U; solo la

      primera vez que aparezca en cada línea. Ejemplos:

      :1,$ s/hola/adiós/ substituir el primer "hola" de

      cada línea del fichero por 'adiós'

      :P,U s/texto viejo/texto nuevo/g
      Substituir texto desde las líneas P a U;

      todas las veces que aparezca.

      :'a,$ s/hola/adiós/g substituir todos los "hola" por

      'adiós' desde la línea marcada 'a' hasta el final

      :set ic
      Ignorar mayúsculas/minúsculas en búsquedas y

      substituciones

      :set noic
      No ignorarlas

      :set ai
      Auto-margen: cada nueva línea aparece con el mismo

      margen que la línea anterior.

      (Util cuando se escriben ficheros FORTRAN)

      :set noai
      No auto-margen.

      abb ABREV texto
      Definición de una abreviatura (ABREV en este caso)

      para "texto"

      >>
      Desplaza una línea hacia la derecha

      5 Que hace esto ?

      <<
      Desplaza una línea hacia la izquierda

      4 jun 2010

      Tutorial de instalación de Fedora 11 “Leonidas”

      fedora 11

       

      Desde que estuvo disponible la versión 11 de Fedora quise escribir este post de instalación pero como se pudieron dar cuenta estuve algo ocupado acomodando la nueva plantilla algo minimalista para la versión 2.5 de este blog así que eso me llevo un poco de tiempo. Este es un tutorial paso a paso como ya he hecho varios sobre la instalación de Fedora 11 con imágenes de cada paso del proceso, espero que les sea de utilidad.

      La gente del proyecto Fedora nos tuvo en suspenso ha que la salida de esta distribución tuvo varias demoras en cuanto a las fechas de salida se refiere, es por esto que más de un fan de Fedora estuvo muy pendiente de cuando estaría disponible para descarga. Primero que nada recordemos que Fedora es el proyecto “para la comunidad” de RedHat que es una distribución enterprise por la cual hay que pagar una licencia si queremos un soporte técnico y otros servicios que con Fedora no tenemos, sin embargo, tanto el código de RedHat y Fedora son abiertos a todo el público bajo la licencia GPL.

      Fedora es un proyecto que RedHat utiliza para probar funcionalidades y nuevas tecnologías que de ser satisfactorias son implementadas posteriormente para RedHat Enterprise. Sin duda Fedora 11 tiene muchas características que sin duda hay que mencionar como el soporte nativo de ext4 que permite el arranque del sistema en menos de 20 segundos y mejoras en el acceso de escritura/lectura de datos.

      Características Generales

      Las notas de lanzamiento podrás encontrarlas en el sitio oficial de Fedora con la documentación en español: http://docs.fedoraproject.org/release-notes/f11/es-ES/ mas sin embargo aquí les muestro que podremos encontrar en esta versión:

      • 1.- Sistema de archivos ext4 predeterminado para instalaciones nuevas.
      • 2.- Kernel 2.6.29.4
      • 3.- GNOME 2.26
      • 4.- KDE 4.2.2
      • 5.- GCC 4.4
      • 6.- Python 2.6
      • 7.- NetBeans 6.5
      • 8.- Presto
      • 9.- MinGW
      • 10.- PackageKit

      La lista sin duda es más larga entre los programas y aplicaciones instaladas nativamente y las que han sido actualizadas, para conocerlas toda revisen las notas de lanzamiento.

      Requerimientos

      ¡Perfecto! ¿Pero que hardware necesito para instalar Fedora 11? Para el caso de leonidas los requerimientos son los siguientes:

      Las siguientes especificaciones de CPU se pusieron en términos de procesadores Intel. Los demás procesadores, tales como los de AMD, Cyrix y VIA, que son compatibles y equivalentes a los procesadores de Intel, también se pueden usar con Fedora. Fedora 11 requiere un Intel Pentium o mejor, y está optimizado para procesadores Pentium 4 y posteriores.

      • 1.- Para modo texto se recomienda: Pentium 200 MHz o mejor
      • 2.- Para gráficos: 400 MHz Pentium II o mejor
      • 3.- RAM mínimo para modo texto: 128 MB
      • 4.- Mínimo de RAM para gráficos: 192 MB
      • 5.- RAM recomendado para gráficos: 256 MB

      Para el caso de arquitecturas x86_64:

      • 1.- RAM mínimo para modo texto: 256 MB
      • 2.- Mínimo de RAM para gráficos: 384 MB
      • 3.- RAM recomendado para gráficos: 512 MB

      Para este artículo y como casi siempre lo hago usé VirtualBox para instalar Fedora11 ahí, los requerimientos de la máquina virtual con 8GB de espacio en disco y 512 MB de RAM con lo cual la distribución funciono bastante bien.

      Descargas

      ¿Cumples con los requerimientos y quieres descargar e instalar Fedora11? Entonces tienes que dirigirte a http://fedoraproject.org/es/get-fedora y seleccionar la forma y la versión que quieres descargar:

      CD para Escritorio Live/Instalable con GNOME

      O puedes descargar las distintas versiones desde Torrents

      Instalación

      Después de conocer que características tiene esta nueva versión, los requerimientos para poder instalarla en nuestra PC y los sitios desde donde podemos descargarla es hora de comenzar con el proceso de instalación el cual me gusta hacer paso a paso y con imágenes que ayuden al nuevo usuario o que le de una idea al usuario mas experto sobre lo que se puede encontrar una vez que inserte el disco en el CDROM e inicie con él.

      El proceso de instalación como el de muchas otras distribuciones es bastante amigable y sencillo así que no creo que haya problema por esa cuestión. Comenzamos.

      Una vez quemada la imagen en un cd esta es la primera ventana que nos encontraremos al insertar el disco y bootear desde él, las opciones que podemos ver son:

      Instalar o actualizar un sistema existente (en nuestro caso vamos a instalar, aunque si ya tienes instalada la versión 10 puedes seleccionar esta opción para actualizar a la versión 11)

      Instalar el sistema con el controlador de vídeo básico

      Instalación para rescate de sistema

      Arrancar desde el dispositivo local (nuestro disco duro)

      • Prueba de memoria

      Una vez que seleccionamos la primera opción en el menú inicial el sistema comienza a leer y cargar la información contenida en el CD/DVD que esté dentro del CDROM y una vez que este sea encontrado entonces se procede a hacer la prueba del dispositivo para comprobar que el CD/DVD esté bien grabado y no haya errores para tener una instalación sin problemas.

      Fedora nos tiene acostumbrados a que su aspecto en general sea limpio, sutil, un tanto minimalista pero a la vez elegante y muy bien logrado, esto lo podemos comprobar con la primera pantalla que nos muestra el gestor de instalación gráfico que nos ayudará a lo largo del proceso. Una vez que demos click en “Next” el verdadero primer paso de la instalación es seleccionar el idioma que queremos para nuestro sistema en si.

      Una vez definido el idioma el siguiente paso es seleccionar la distribución del teclado el cual se selecciona en base al idioma que definimos, por ejemplo, para el idioma español el siguiente paso nos marca por defecto la distribución “Spanish” del teclado pero como siempre he usado la Latino-Americana la cambie.

      El “Hostname” o “Nombre local” de nuestra PC es muy importante ya que dentro de una red este es el que nos dará la pauta para saber que PC estamos manipulando, es por eso que no debe repetirse un nombre local dentro de la red pero si vamos a utilizar el sistema en nuestro hogar pueden usar el nombre que quieran.

      Este paso también ha sufrido un cambio en el aspecto en comparación que otras versiones, aquí básicamente lo que hacemos es seleccionar nuestro país y la hora del sistema.

      Como sabemos la clave del root es muy importante y no debe ser nunca olvidada ya que la necesitaremos siempre que queramos instalar algo o modificar algo del sistema al que solo el ROOT puede tener acceso. Cuida que la contraseña no sea tan sencilla pero pero también ten en cuenta que no se te debe olvidar.

      Como en otros procesos de instalación que he hecho anteriormente he seleccionado la opción “utilizar todo el disco” cuando llega el paso del particionado esta vez quise hacerlo un poco diferente y mostrarles como se crean las particiones mínimas para el sistema (la / y la Swap) por lo tanto esta vez vamos a utilizar la opción “Manual” para crearlas. Si nosotros vamos a ocupar todo el disco duro o si estamos, como en mi caso, en una máquina virtual y queremos usar todo el espacio entonces no es necesario que especifiquemos manualmente las particiones, ya que con la opción “utilizar todo el disco” será suficiente. De igual manera si ya tenemos instalado otro sistema operativo pero tenemos un espacio libre especial para nuestra distribución entonces podemos seleccionar la opción que utilice el espacio seguido más grande.

      Como pueden ver el gestor es bastante amigable y una vez que damos clic en el espacio vacio (sin particionar) y seleccionamos “Nuevo” nos aparece la ventana en la cual vamos a definir primeramente la partición SWAP, está configuración es prácticamente la que se debe hacer para cualquier distribución de GNU/Linux dependiendo obviamente de algunas cosas como nuestra memoria RAM y espacio en disco.

      Al seleccionar el tipo de sistema de archivos como swap (traducido a español por algunas distribuciones como “área de intercambio”) automáticamente la opción de “Punto de montaje” se deshabilita puesto que la swap no va a estar montada en ninguna parte, solo es un espacio “virtual” que no vamos a poder usar como espacio de almacenamiento.

      El tamaño generalmente es del doble de la capacidad que fisicamente tengamos de RAM, obviamente en el caso de computadoras con 4 o más GB’s de RAM no es necesario ponerles el doble de espacio puesto que sería demasiado, incluso por cierta cantidad de RAM la creación de la swap ya es opcional. Seleccionamos el tamaño fijo y seguimos con el procedimiento.

      Una vez creada la partición swap volvemos a hacer clic en el espacio vacío que nos queda y creamos la partición raíz con la opción “Nuevo”. En este caso si tenemos que seleccionar en donde va a estar montada la partición por lo tanto seleccionamos “/” en “Punto de montaje”. En “Sistema de archivos” podremos ver la opción ext4 por defecto así que si queremos probarlo está sera nuestra primera opción, si queremos seguir usando ext3 entonces también lo seleccionamos con el menú desplegable. Esto es para crear las dos particiones “mínimas” de Linux, si eres un usuario con un poco más de experiencia puedes crear mas particiones, una para tu /home o /etc (por ejemplo).

      Como en este caso no vamos a crear ninguna otra partición entonces seleccionamos la opción “Completar hasta el tamaño máximo permitido” con lo cual (como vemos en la casilla de la derecha) nos creará la partición con el tamaño máximo de Mbs.

      Al dar clic en “Aceptar” volvemos al gestor de particionado el cual nos dará el resumen de nuestras particiones creadas, aquí es muy importante verificar que todo esté correctamente configurado: El dispositivo, puntos de montajes, tipos, formatos y los tamaños en MB. Si todo está correcto damos clic en “Siguiente” y se nos mostrará una advertencia la cual nos indica que los cambios serán escritos en el disco duro.

      En este paso se instala el gestor de arranque en el disco duro, como en nuestro caso solo tenemos uno (/dev/sda) entonces ahí es donde se va a instalar, en el caso de tener otros discos duros dependiendo de como los tengamos administrados es el lugar donde el gestor se instalara. En la lista de los sistemas operativos automáticamente nos va a reconocer los sistemas que tengamos instalados en el o los discos duros para que así podamos seleccionar que sistema arrancara por omisión en caso de no seleccionar ninguno en el gestor de arranque.

      15

      Como podemos ver en la ventana la instalación por defecto incluye paquetes y aplicaciones para el uso general pero tenemos la opción de agregar programas adicionalmente, la versión que yo descargue e instale fue el DVD completo para x86 el cual tiene diferentes paquetes y módulos que se pueden instalar aparte según nuestras necesidades.

      Una vez que terminamos de configurar todos los paquetes extras que usaremos en nuestra PC comienza el proceso de instalación el cual, como primera parte, consiste en comprobar las dependencias (verificar que lo que seleccionamos esté en el CD/DVD) los pasos siguientes son el proceso de iniciado y la instalación en si. Aquí es cuando es bueno levantarnos un momento de la PC para refrescarnos, tomar algo o ver televisión mientras esperamos que el proceso termine ;)

      Después de que se terminan de instalar todos los paquetes en nuestro disco duro es cuando debemos sacar el CD/DVD del CDROM y reiniciar la máquina para que comencemos a configurar los últimos detalles de nuestro sistema.

      En este paso aceptamos la licencia GPL versión 2 la cual, si leen cuidadosamente, se darán cuenta de que dice prácticamente lo contrario que la licencia que vemos al instalar Windows en una computadora. Como ya sabemos somos libres de copiar y redistribuir el sistema las veces que queramos sin ningún problema.

      Al principio de la instalación configuramos una clave de root la cual usaremos para instalaciones y administración avanzada del sistema, la cuenta de root NO debe usarse para otra cosa mas que para estas cuestiones y es por eso que también es necesario hacer otra cuenta de usuario aunque seamos los únicos que tengamos acceso a la computadora. Con el simple hecho de estar conectados a Internet ya estamos corriendo un riesgo el cual es más grande si navegamos desde la cuenta de root, por eso siempre es importante crear cuentas de usuarios para nosotros mismos o para todos los demás que tengan acceso a la pc.

      24

      Durante el proceso de instalación hicimos lo mismo pero ahora tenemos que especificar concretamente la fecha y la hora de nuestro sistema.

      Actualmente durante el proceso de instalación y configuración de varias distribuciones se nos realiza una encuesta de los paquetes y aplicaciones que seleccionamos durante el proceso o sobre el hardware de nuestra computadora, eso sirve para que los desarrolladores tengan una idea de que paquetes son los más instalados y en que hardware son instalados, por eso yo siempre recomiendo que acepten este tipo de cuestiones ya que es para mejoras de la misma distribución.

      Después de registrarnos con nuestro usuario y contraseña por fin se nos muestra el flamante y elegante GNOME a la vista, con unos bordes de ventana que la verdad me gustaron mucho y un fondo de pantalla sencillo pero muy atractivo.

      29

      La primera impresión que tuve sobre Fedora 11 después de la instalación es que a pesar de que usé una máquina virtual el sistema era bastante rápido con un aspecto muy pulido y como durante la instalación no se seleccionó ningún paquete “secundario” me gustaron mucho los que si se instalaron nativamente.

      Fedora es una distribución estable y confiable con una comunidad sólida, esto también por la influencia de RedHat (una de las legendarias) que tiene sobre ella. Sin duda es una distribución para recomendar, instalar y probar y espero que este pequeño tutorial les ayude a hacer de una manera más fácil y amigable.

      Fuente: Tutorial de instalación Fedora 11