viernes, 6 de mayo de 2011

Script


¿Qué es un script?

Un script es una serie de instrucciones los cuales conforman a los programas escritos en unix.

Es una lista de comandos en un archivo, y que se pueden ejecutar todos de una sola vez, sólo invocando el nombre del archivo

Estructura de un script:

Comentarios. Sirven para guiar, e sdecir, saber que se esta realizando en esa instrucción.

En un script todo lo que venga después del símbolo # y hasta el próximo caracter nueva línea se toma como comentario y no se ejecuta.

Ejemplo:

echo Hola todos # comentario hasta fin de línea

sólo imprime "Hola todos".

# cat /etc/passwd

no ejecuta nada, pues el símbolo # convierte toda la línea en comentario.

Los scripts suelen encabezarse con comentarios que indican el nombre de archivo y lo que hace el script. Se colocan comentarios de documentación en diferentes partes del script para mejorar la comprensión y facilitar el mantenimiento

Ejemplo:

# Script que nos muestra por pantalla la #fecha, la hora, la

#maquina en que estamos, nuestro username, #nuestro numero

#identificador de usuario y de grupo, quien #esta conectado

# a la maquina y el directorio en que estamos

echo " "

echo " "

echo "la fecha de hoy es `date`"

echo "La maquina en que estas trabajando es: $HOST"

echo ""

echo -n "Tu user name es: "

whoami

echo ""

echo "En la maquina estan conectadas las siguientes personas "

who

echo "Estas en el directorio `pwd`"

Instrucciones que es necesario realizar para la practica:

  1. Abre el editor de texto nano (en terminal)

  2. Copia el código de ejemplo que se mostró arriba

  3. Guarda el archivo con el nombre de sc_apellido_num_lista (por ejemplo sc_chavez_15) con Ctrl y X, Y, nombre

  4. Sal de nano

  5. Copia el archivo al escritorio

  6. Pasa al directorio desktop

  7. Cambia los permisos del archivo a 777

  8. Observa como cambia el icono

  9. Ejecuta el archivo de la forma siguiente:

    ./nombre_del_archivo

  10. La salida debe ser parecido a:


    10. Teclea el comando cat seguido de nombre_del_ archivo

martes, 29 de marzo de 2011

Comandos Terminal :D

  cd        Change Directory •   chmod     Change access permissions
chmod xxx negar o aceptar permisos, segun convenga
chmod xxx-xxx-xxx negar o aceptar los permisos , segun convenga
  cp        Copy one or more files to another location 
 echo      Display message on screen •
  ls        List information about file(s)   man       Help manual   mkdir     Create new folder(s)   mv        Move or rename files or directories   passwd    Modify a user password   paste     Merge lines of files   pwd       Print Working Directory •   rcp       Copy files between machines   read      Read one line from standard input •   readonly  Mark a variable or function as read-only •   return    Exit a function •   rm        Remove files   rmdir     Remove folder(s)   say       Convert text to audible speech   write     Send a message to another user   yes       Print a string until interrupted
ls -l muestra los archioçvos recientemente usados y por quien
ls -F muestra carpetas del home
ls -a muestra TODOS los archivos, incluso los ocultos
cd x llegar al lugar deseado
cal calendario del mes
cal fecha año calendario preciso de la fecha establecida
cal -y calendario del año
 cal [-jy] [[month] year]      cal [-j] -m month [year]      ncal [-jJpwy] [-s country_code] [[month] year]      ncal [-Jeo] [year] 
cd ../ usuarios

2. Indica cuál es el comando de unix para:

Obtener la fecha del sistema

-Date

Saber cuanto tiempo lleva encendido el sistema

-uptime

Conocer cuántos archivos o carpetas están el escritorio

-ls

Copiar un archivo llamado recursos.txt que se encuentra en el home y se desea enviar la información a un directorio llamado practicas que esta dentro de otro directorio llamado clase2 y este a su ve esta dentro de otra carpeta llamado curso y que esa carpeta se encuentra en Documentos

cd, mv recursos.txt documentos/cursos/clase2/Practicas

viernes, 14 de enero de 2011

Sistema Operativo de Software libre (Linux)

Entre las distribuciones Linux más populares se incluyen:

  • Arch Linux, una distribución basada en el principio KISS con un sistema de desarrollo continuo entre cada versión (no es necesario volver a instalar todo el sistema para actualizarlo).
  • CentOS, una distribución creada a partir del mismo código del sistema Red Hat pero mantenida por una comunidad de desarrolladores voluntarios.
  • Debian, una distribución mantenida por una red de desarrolladores voluntarios con un gran compromiso por los principios del software libre.
  • Fedora, una distribución lanzada por Red Hat para la comunidad.
  • Gentoo, una distribución orientada a usuarios avanzados, conocida por la similitud en su sistema de paquetes con el FreeBSD Ports, un sistema que automatiza la compilación de aplicaciones desde su código fuente.
  • gOS, una distribución basada en Ubuntu para netbooks.
  • Knoppix, la primera distribución live en correr completamente desde un medio extraíble. Está basada en Debian.
  • Kubuntu, la versión en KDE de Ubuntu.
  • Linux Mint, una popular distribución derivada de Ubuntu.
  • Mandriva, mantenida por la compañía francesa del mismo nombre, es un sistema popular en Francia y Brasil. Está basada en Red Hat.
  • openSUSE, originalmente basada en Slackware es patrocinada actualmente por la compañía Novell.
  • PCLinuxOS, derivada de Mandriva, paso de ser un pequeño proyecto a una popular distribución con una gran comunidad de desarrolladores.
  • Puppy Linux,version para pc's antiguas o con pocos recuersos que pesa 130 mb.
  • Red Hat Enterprise Linux, derivada de Fedora, es mantenida y soportada comercialmente por Red Hat.
  • Slackware, una de las primeras distribuciones Linux y la más antigua en funcionamiento. Fue fundada en 1993 y desde entonces ha sido mantenida activamente por Patrick J. Volkerding.
  • Slax, es un sistema Linux pequeño, moderno, rápido y portable orientado a la modularidad. Está basado en Slackware.
  • Ubuntu, una popular distribución para escritorio basada en Debian y mantenida por Canonical.
  • Dragora y Trisquel GNU/Linux, que van adquiriendo importancia entre las distribuciones que sólo contienen software libre.
  • Canaima (distribución Linux), es un proyecto socio-tecnológico abierto, construido de forma colaborativa, desarrollado en Venezuela basado en Debian.

El sitio web DistroWatch ofrece una lista de las distribuciones más populares; la lista está basada principalmente en el número de visitas, por lo que no ofrece resultados muy confiables acerca de la popularidad de las distribuciones.

Sistema Operativo

Un sistema operativo (SO) según la Real Académia Española es el programa o conjunto de programas que efectúan la gestión de los procesos básicos de un sistema informático, y permite la normal ejecución del resto de las operaciones1 .

Un sistema operativo (SO) es el software base compuesto de aplicaciones, bibliotecas, herramientas de programación y un núcleo que permiten a un usuario utilizar un computador.

Nótese que es un error común muy extendido denominar al núcleo sistema operativo, el núcleo por si solo no es un Sistema operativo. Uno de los más prominentes ejemplos de esta diferencia, es el núcleo Linux, el cual es el núcleo del sistema operativo GNU, del cual existen las llamadas distribuciones GNU .

Este error de precisión, se debe a la modernización de la informática llevada a cabo a finales de los 80, cuando la filosofía de estructura básica de funcionamiento de los grandes computadores2 se rediseñó a fin de llevarla a los hogares y facilitar su uso, cambiando el concepto de computador multiusuario, (muchos usuarios al mismo tiempo) por un sistema monousuario (únicamente un usuario al mismo tiempo) más sencillo de gestionar.3 (Véase AmigaOS, beOS o MacOS como los pioneros4 de dicha modernización, cuando los Amiga, fueron bautizados con el sobrenombre de Video Toasters5por su capacidad para la Edición de vídeo en entorno multitarea round robin, con gestión de miles de colores e interfaces intuitivos para diseño en 3D.

Uno de los propósitos del sistema operativo que gestiona el núcleo intermediario consiste en gestionar los recursos de localización y protección de acceso del hardware, hecho que alivia a los programadores de aplicaciones de tener que tratar con estos detalles. Se encuentran en la mayoría de los aparatos electrónicos que utilizan microprocesadores para funcionar. (teléfonos móviles, reproductores de DVD, computadoras, radios, etc.)

Copyleft

Copyleft es una característica de algunas licencias utilizadas para regular las restricciones impuestas por el derecho de autor de obras o trabajos, tales como programas informáticos, arte, cultura yciencia, es decir prácticamente casi cualquier tipo de producción creativa.

El nombre surge como oposición al copyright tradicional. Se considera que una licencia es copyleft cuando además de otorgar permisos de copia, modificación y redistribución de la obra protegida, contiene una cláusula que impone la misma licencia a las copias y a las obras derivadas.

Sus partidarios la proponen como alternativa a las restricciones que imponen las normas planteadas en los derechos de autor, a la hora de hacer, modificar y distribuir copias de una obra determinada. Se pretende garantizar así una mayor libertad para que cada receptor de una copia, o una versión derivada de un trabajo, pueda, a su vez, usar, modificar y redistribuir tanto el propio trabajo como las versiones derivadas del mismo.

Software Semilibre

El software semilibre (semi-free en inglés), es una categoría de programas informáticos que no son libres, pero que vienen con autorización de uso, copia, modificación y redistribución (incluso de versiones modificadas) sin fines de lucro (PGPsería un ejemplo de un programa semilibre).

Según la la Fundación para el Software Libre (FSF), el software semilibre es mucho mejor que el software no libre, pero aún plantea problemas y no podría ser usado en un sistema operativo libre. Esto se debe a la imposibilidad de incluirlo en un sistema de ese tipo, ya que los «términos de distribución para el sistema operativo libre como un todo es la conjunción de los términos de distribución de todos los programas en él» y al agregar un programa semilibre haría que el sistema fuera un todo sólo semilibre.

Software Privativo

El software privativo (también llamado propietario, de código cerrado o software no libre) es cualquier programa informático en el que el usuario tiene limitaciones para usarlo, modificarlo o redistribuirlo (esto último con o sin modificaciones).

Para la Fundación para el Software Libre (FSF) este concepto se aplica a cualquier software que no es libre o que sólo lo es parcialmente (semilibre), sea porque su uso, redistribución o modificación está prohibida, o requiere permiso expreso del titular del software.

La persona física o jurídica (compañía, corporación, fundación, etc.) al poseer los derechos de autor sobre un software tiene la posibilidad de controlar y restringir los derechos del usuario sobre su programa, lo que en el software privativo implica por lo general que el usuario sólo tendrá derecho a ejecutar el software bajo ciertas condiciones, comúnmente fijadas por el proveedor, que signifique la restricción de una o varias de las cuatro libertades.

Shareware

Se denomina shareware a una modalidad de distribución de software, tanto videojuegos como videos X, en la que el usuario puede evaluar de forma gratuita el producto, pero con limitaciones en el tiempo de uso o en algunas de las formas de uso o con restricciones en las capacidades finales.

Para adquirir una licencia de software que permita el uso del software de manera completa se requiere de un pago (muchas veces modesto) aunque también existe el llamado "shareware de precio cero", pero esta modalidad es poco común.

No debe confundirse el shareware con el sistema freeware que indica que un software es totalmente gratuito, si bien es cierto que el primero se inspira y tiene sus raíces en el segundo. Tampoco debe confundirse el hecho de que un software sea shareware o freeware con el hecho de que sea de código abierto, ya que esto último depende de la disponibilidad o no del código fuente, mientras que los primeros son denominaciones de la forma o sistema de comercialización.

Freeware

El término freeware define un tipo de software privativo que se distribuye sin costo, disponible para su uso y por tiempo ilimitado,1 siendo una variante gratuita del shareware, en el que la meta es lograr que un usuario pruebe el producto durante un tiempo ("trial") limitado, y si le satisface, pague por él, habilitando toda su funcionalidad. A veces se incluye el codigo fuente pero no es lo usual.

Freeware suele incluir una licencia de uso, que permite su redistribución pero con algunas restricciones, como no modificar la aplicación en sí, ni venderla, y dar cuenta de su autor. También puede desautorizar el uso en una compañía con fines comerciales o en una entidad gubernamental, o bien, requerir pagos si se le va a dar uso comercial. Todo esto depende del tipo de licencia en concreto a la que se acoge el software.

Software Libre

El software libre (en inglés free software, esta denominación también se confunde a veces con gratis por la ambigüedad del término en el idioma inglés) es la denominación del software que respeta la libertad de los usuarios sobre su producto adquirido y, por tanto, una vez obtenido puede ser usado, copiado, estudiado, cambiado y redistribuido libremente. Según la Free Software Foundation, el software libre se refiere a la libertad de los usuarios para ejecutar, copiar, distribuir, estudiar, modificar el software y distribuirlo modificado.

El software libre suele estar disponible gratuitamente, o al precio de costo de la distribución a través de otros medios; sin embargo no es obligatorio que sea así, por lo tanto no hay que asociar software libre a "software gratuito" (denominado usualmente freeware), ya que, conservando su carácter de libre, puede ser distribuido comercialmente("software comercial"). Análogamente, el "software gratis" o "gratuito" incluye en ocasiones el código fuente; no obstante, este tipo de software no es libre en el mismo sentido que el software libre, a menos que se garanticen los derechos de modificación y redistribución de dichas versiones modificadas del programa.

Tampoco debe confundirse software libre con "software de dominio público". Éste último es aquel software que no requiere de licencia, pues sus derechos de explotación son para toda la humanidad, porque pertenece a todos por igual. Cualquiera puede hacer uso de él, siempre con fines legales y consignando su autoría original. Este software sería aquel cuyo autor lo dona a la humanidad o cuyos derechos de autor han expirado, tras un plazo contado desde la muerte de este, habitualmente 70 años. Si un autor condiciona su uso bajo una licencia, por muy débil que sea, ya no es del dominio público.


Libertades

LibertadDescripción
0la libertad de usar el programa, con cualquier propósito.
1la libertad de estudiar cómo funciona el programa y modificarlo, adaptándolo a tus necesidades.
2la libertad de distribuir copias del programa, con lo cual puedes ayudar a tu prójimo.
3la libertad de mejorar el programa y hacer públicas esas mejoras a los demás, de modo que toda la comunidad se beneficie.
Las libertades 1 y 3 requieren acceso al código fuente porque estudiar y modificar software sin su código fuente es muy poco viable.

Aplicaciones Ejemplos

OpenOffice Writer: Procesador de texto sencillo, familiar y con todas las características de uno comercial.

Celtx: Te ayuda a mantener tus textos ordenados, sobre todo si utilizas un montón de formatos especiales.

Mozilla Firefox: El principal navegador de software libre.