
A diferencia de otros sistemas, Linux "piensa" que usted puede querer usar otros sistemas operativos. Por esto, su inicio depende de un cargador de arranque que lo identifique de otros sistemas operativos en la máquina; y que lleve a cabo tareas básicas de booteo. El cargador de arranque puede ser LILO (LInux LOader) o GRUB (GRand Unified Bootloader). El primero es el clásico, con una pantalla de selección de sistemas bonita. El segundo es más práctico pero menos elegante de ver. La elección es suya. Puede elegir entre GRUB (menú textual), LILO en menú textual o LILO en menú gráfico (la opción más elegante). De todos modos, estas opciones se pueden modificar posteriormente. Por ahora, puede seleccionar dónde instalarlo: en un disquete, en el sector de booteo del disco rígido, en la partición raíz de Linux, u omitirlo. Elija la última opción sólo si ya tiene otro cargador instalado de una distribución distinta (deberá configurar ese para que reconozca la nueva instalación). Normalmente querrá que esté en el MBR (Master Boot Record).
Si una instalación de Windows posterior borra el MBR (y esté
seguro de que lo hará), puede reinstalarlo de la siguiente manera:
inicie su PC con el primer disco de la distribución, y siga las
instrucciones para iniciar en modo RESCUE (basta escribir "rescue" en
la línea de comandos que aparece). Cuando el sistema haya booteado,
elija la opción "Restaurar el cargador de arranque". Si no, elija
la opción "Montar las particiones bajo /mnt" (mount partitions
under /mnt) y salga a la línea de comandos. ingrese allí
lo siguiente:
loadkeys es (esto carga un teclado español; use la si su teclado
es latinoamericano, o déjelo como está si es norteamericano).
cd /mnt/sbin (esto nos lleva al directorio de LILO)
./lilo -C /mnt/etc/lilo.conf (esto reescribe lilo en la MBR)
Ahora reinicie su PC con las teclas Ctrl + Alt + Supr o con el comando
reboot.
Si lo que desea es desinstalar Linux definitivamente, deberá borrar las particiones de Linux usando un disquete booteable de Windows y el programa FIPS que puede encontrar en el CD de instalación. También usar el programa de instalación hasta la etapa del particionador, usarlo para eliminar las particiones Linux, y resetear la máquina. Luego de dejar ese espacio libre, deberá crear y formatear nuevas particiones bajo Windows, pero además deberá eliminar LILO del MBR. Desde Linux, antes de borrar las particiones, ejecute como usuario root el comando lilo -u, o use un disquete booteable de Windows y en modo DOS, ingrese el comando siguiente: fdisk /mbr (consulte la ayuda del comando para más datos). Para más información, lea este artículo de Microsoft TechNet: Cómo quitar el administrador de inicio LILO de Linux, o este artículo, aún más claro: Quitar Linux en sistemas con Windows XP.
Si usaba el administrador de inicio GRUB, las opciones son desinstalarlo desde Windows con los métodos mencionados arriba, o instalar lilo sobre él y luego desinstalar lilo. GRUB no dispone de un sistema de desinstalación.

Sigamos con la instalación. En esta pantalla se le ofrece modificar los sistemas operativos disponibles, en particular deseará elegir cuál sistema operativo cargar por defecto al arrancar la máquina. Otras posibilidades que verá aquí son el modo de arranque, la demora antes de iniciar el sistema por defecto, etc. Si no sabe, no toque demasiado y no se preocupe. Todo esto es configurable nuevamente en la próxima pantalla.

En esta pantalla puede ver un resumen de su configuración actual y puede también editar cada parte. En particular tendrá que revisar las secciones de País y Huso horario (Argentina no es España); la interfaz gráfica, y la red. Esto depende de los dispositivos conectados a su PC, claro. Otra sección a revisar (y que veremos debajo) es la de los servicios que se inician con el sistema. Por defecto pueden cargarse programas que usted no necesita.
Puede reconfigurar sus dispositivos más adelante, desde el Centro de Control de Mandriva, en la Sección Hardware. Si usted dispone de una placa de video NVIDIA o ATI, es posible que las características 3D estén soportadas, pero deberá conseguir de Internet los drivers e instalarlos luego.
Un truco en la sección de Video: si selecciona una resolución menor a la máxima, la performance de su sistema puede aumentar notablemente.
Por último: es posible que al iniciar el sistema luego de instalarlo, no obtenga sonido aunque usted haya visto que su placa era detectada. Pruebe a ejecutar Aumix (en el menú de aplicaciones, en la sección Multimedios - Audio) y deseleccione la opción "Silenciar todo" (Mute all) en el menú del programa. Ahora ponga las barras de volumen en un nivel aceptable. Si ve que cada vez que enciende la PC tiene que volver a configurar el sonido, es porque no está corriendo el servicio ALSA correctamente.

En Linux (y en Unix en general) lo que se conoce por Services en Windows NT, 2000 o XP se llaman Dæmons, término que se traduce por servicios y que significa "espíritus protectores". Se cargan al arrancar y, dependiendo del caso, corren todo el tiempo o sólo durante el arranque. Los dividiremos en dos secciones: servicios a desactivar y servicios a dejar andando. Entre medio, dependerá de su configuración, y usted deberá probar a ver qué pasa.
Servicios que deberían desactivarse por defecto:
Servicios que deberían funcionar siempre:
Ya habrá notado que la mayoría de los "servicios indispensables" están clasificados con un "si usted necesita esto" o "si usted hace lo otro". Esto es otro concepto importante de Linux: la configurabilidad. Los desarrolladores de Mandriva Linux no pueden saber exactamente qué quiere o necesita usted, por lo que prefieren darle un sistema funcionante y dejarle a usted la decisión final. Podrá modificar nuevamente las decisiones que tome aquí desde el Centro de Control de Mandriva.
Se le ofrecerá, si dispone de una conexión adecuada a Internet, el instalar las actualizaciones disponibles, cosa que le recomendamos haga. Si no, esto termina la instalación. Esperamos haberle sido de ayuda. Reinicie el sistema y disfrute de Mandriva Linux.
|
Samba |
|
|
Desarrollador: |
Equipo de Samba |
|
Última versión: |
3.0.26a (11 de septiembre de 2007) |
|
S.O.: |
Multiplataforma |
|
Género: |
Acceso Remoto |
|
Licencia: |
GPL |
|
En español: |
- |
|
Sitio Web: |
http://www.samba.org/ |
Samba es una implementación libre del protocolo de archivos compartidos de Microsoft Windows (antiguamente llamado SMB, renombrado recientemente a CIFS) para sistemas de tipo UNIX. De esta forma, es posible que ordenadores con Linux, Mac OS X o Unix en general se vean como servidores o actúen como clientes en redes de Windows. Samba también permite validar usuarios haciendo de Controlador Principal de Dominio (PDC), como miembro de dominio e incluso como un dominio Active Directory para redes basadas en Windows; aparte de ser capaz de servir colas de impresión, directorios compartidos y autenticar con su propio archivo de usuarios.
Entre los sistemas tipo Unix en los que se puede ejecutar Samba, están las distribuciones GNU/Linux, Solaris y las diferentes variantes BSD entre las que podemos encontrar el Mac OS X Server de Apple.
Historia
Samba fue desarrollado originalmente para Unix por Andrew Tridgell utilizando un sniffer o capturador de tráfico para entender el protocolo usando ingeniería inversa. El nombre viene de insertar dos vocales al protocolo estándar que Microsoft usa para sus redes, el SMB o server message block. En un principio Samba tomó el nombre de smbserver pero tuvieron que cambiarlo por problemas con una marca registrada. Tridgell buscó en el diccionario de su máquina Unix alguna palabra que incluyera las letras.
Características
Samba es una implementación de una docena de servicios y una docena de protocolos, entre los que están: NetBIOS sobre TCP/IP (NetBT), SMB (también conocido como CIFS), DCE/RPC o más concretamente, MSRPC, el servidor WINS también conocido como el servidor de nombres NetBIOS (NBNS), la suite de protocolos del dominio NT, con su Logon de entrada a dominio, la base de datos del gestor de cuentas seguras (SAM), el servicio Local Security Authority (LSA) o autoridad de seguridad local, el servicio de impresoras de NT y recientemente el Logon de entrada de Active Directory, que incluye una versión modificada de Kerberos y una versión modificada de LDAP. Todos estos servicios y protocolos son frecuentemente referidos de un modo incorrecto como NetBIOS o SMB.
Samba configura directorios Unix/Linux (incluyendo sus subdirectorios) como recursos para compartir a través de la red. Para los usuarios de Microsoft Windows, estos recursos aparecen como carpetas normales de red. Los usuarios de Linux pueden montar en sus sistemas de archivos estas unidades de red como si fueran dispositivos locales, o utilizar la orden smbclient para conectarse a ellas muy al estilo del cliente de la línea de órdenes ftp. Cada directorio puede tener diferentes permisos de acceso sobrepuestos a las protecciones del sistema de archivos que se esté usando en Linux. Por ejemplo, las carpetas home pueden tener permisos de lectura y escritura para cada usuario, permitiendo que cada uno acceda a sus propios archivos; sin embargo, deberemos cambiar los permisos de los archivos localmente para dejar al resto ver nuestros archivos, ya que con dar permisos de escritura en el recurso no será suficiente.
La configuración de Samba se logra editando un solo archivo, accesible en /etc/smb.conf o en /etc/samba/smb.conf.
Archivo de configuración de Samba Mandriva Linux
/etc/samba/smb.conf.
Para configurar el Grupo de Trabajo del Samba
# 1. Server Naming Options:
# workgroup = NT-Domain-Name or Workgroup-Name
workgroup = home
Para configurar el Nombre del Servidor Samba
# server string is the equivalent of the NT Description field
server string = Samba Server
Servicio para la Impresion
# CHANGES TO ENABLE PRINTING ON ALL CUPS PRINTERS IN
THE NETWORK
# (as cups is now used in linux-mandrake 7.2 by default)
# if you want to automatically load your printer list rather
# than setting them up individually then you'll need this
printcap name = cups
# printcap cache time, so samba will automatically load new cups printers
printcap cache time = 60
# It should not be necessary to spell out the print system type unless
# yours is non-standard. Currently supported print systems include:
# bsd, sysv, plp, lprng, aix, hpux, qnx, cups
printing = cups
Seguridad del Samba (Usuarios)
# Security mode. Most people will want user level security. See
# security_level.txt for details.
security = share
# Password Level allows matching of _n_ characters of the password
# all combinations of upper and lower case.
; password level = 8
; username level = 8
Directorio del Samba
[homes]
path = /home/samba
comment = Home Directories
browseable = yes
public = yes
writable = yes
NFS, acrónimo de Network File System, es un popular protocolo utilizado para compartir volúmenes entre máquinas dentro de una red de manera transparente, más comúnmente utilizado entre sistemas basados sobre UNIX®. Es útil y fácil de utilizar, sin embargo no en vano es apodado cariñosamente como "No File Security". NFS no utiliza un sistema de contraseñas como el que tiene SAMBA, solo una lista de control de acceso determinada por direcciones IP o nombres. Es por esto que es importante que el administrador de la red local o usuario entienda que un servidor NFS puede ser un verdadero e inmenso agujero de seguridad si este no es configurado apropiadamente e implementado detrás de un contrafuegos o firewall.
Personalmente, solo recomiendo utilizar NFS dentro de una red local detrás de un contrafuegos o firewall que permita el accesos solo a las máquinas que integren la red local, nunca para compartir sistemas de archivos a través de Internet. Al no contar con un sistema de autenticación por contraseñas, es un servicio susceptible del ataque de algún cracker. SAMBA es un mucho mejor y más seguro protocolo para compartir sistemas de archivos.
Teniendo en cuenta los aspectos de seguridad mencionados, es importante que siga los procedimientos descritos a continuación al pie de la letra, y que posteriormente se comprometa también consultar a detalle la documentación incluida en el paquete nfs-utils, ya que este le proporcionará información adicional y completa sobre aspectos avanzados de configuración y utilización.
Se requiere tener instalados nfs-utils y portmap. Preguntaremos al sistema si estos están instalados con la siguiente línea de mandato:
|
rpm -q nfs-utils portmap |
Lo cual debe de regresar algo como lo siguiente:
|
nfs-utils-0.3.1-13.7.2.1 portmap-4.0-38 |
En caso de que falte alguno de estos paquetes, inserte el CD de instalación en la unidad correspondiente, abra una terminal o consola y ejecute lo siguiente:
|
mount /mnt/cdrom/ rpm -Uvh /mnt/cdrom/RedHat/RPMS/paquete_faltante |
Cabe mencionar que lo mejor será siempre utilizar la versiones de nfs-utils y portmap más actuales. Salvo por RedHat® Linux 7.1 o LinuxPPP 7.x, el resto de las versiones anteriores de RedHat® y LinuxPPP® incluyen paquetes de nfs-utils y portmap con serios agujeros de seguridad. Visite el servidor ftp de la distribución utilizada y descargue los paquetes actualizados, que seguramente incluirán los parches de seguridad necesarios:
Lo siguiente será configurar un nivel de seguridad para portmap. Esto se consigue editando los ficheros /etc/hosts.allow y /etc/hosts.deny. Debemos especificar que direcciones IP o rango de direcciones IP pueden acceder a los servicios de portmap y quienes no pueden hacerlo. Podemos entonces determinar en /etc/hosts.allow como rango de direcciones IP permitidas los siguiente:
|
portmap:192.168.1.0/255.255.255.0 |
Esto corresponde a la dirección IP de la red completa y la máscara de la sub-red. Adicionalmente podemos especificar direcciones IP individuales sin necesidad de establecer una máscara. Esto es de utilidad cuando se desea compartir volúmenes con otras máquinas en otras redes a través de Internet. Ejemplo:
|
portmap:192.168.1.0/255.255.255.0 portmap:192.168.20.25 portmap:192.168.30.2 portmap:216.200.152.96 portmap:148.240.28.171 |
Una vez determinado que direcciones IP pueden acceder a portmap, solo resta determinar quienes no pueden hacerlo. Evidentemente nos referimos al resto del mundo, y esto se hace agregando la siguiente línea:
|
portmap:ALL |
Es importante destacar que la línea anterior es INDISPENSABLE y NECESARIA si quiere tener un nivel de seguridad decente. De manera predeterminada las versiones más recientes de nfs-utils no permitirán iniciar el servicio si esta línea no se encuentra presente en /etc/hosts.deny.
Una vez configurado portmap, debe reiniciarse el servicio de portmap:
|
/sbin/service portmap restart |
Si tiene un DNS, de de alta las direcciones IP asociadas a un nombre o bien edite /etc/hosts y agregue las direcciones IP asociadas con un nombre. Esto nos servirá como listas de control de accesos. Ejemplo del fichero /etc/hosts:
|
127.0.0.1 localhost.localdomain localhost 192.168.1.254 servidor.mi-red-local.org servidor 192.168.1.2 algun_nombre.mi-red-local.org algun_nombre 192.168.1.3 otro_nombre.mi-red-local.org otro_nombre 192.168.1.4 otro_nombre_mas.mi-red-local.org otro_nombre_mas 192.168.1.5 como_se_llame.mi-red-local.org como_se_llame 192.168.1.6 como_sea.mi-red-local.org como_sea 192.168.1.7 lo_que_sea.mi-red-local.org lo_que_sea |
Procederemos a determinar que directorio se va a compartir. Puede crear también uno nuevo:
|
mkdir -p /var/nfs/publico |
Una vez hecho esto, necesitaremos establecer que directorios en el sistema serán compartidos con el resto de las máquinas de la red, o bien a que máquinas, de acuerdo al DNS o /etc/hosts se permitirá el accesos. Esto deberemos agregarlos en /etc/exports determinado con que máquinas y en que modo lo haremos. Se puede especificar una dirección IP o bien nombre de alguna máquina, o bien un patrón común con comodín para definir que máquinas pueden acceder. De tal modo podemos utilizar el siguiente ejemplo (la separación de espacios se hace con un tabulador):
|
/var/nfs/publico *.mi-red-local.org(ro,sync) |
En el ejemplo anterior se esta definiendo que se compartirá /var/nfs/publico/ a todas las máquinas cuyo nombre, de acuerdo al DNS o /etc/hosts, tiene como patrón común mi-red-local.org, en modo de lectura escritura. Se utilizó un asterisco (*) como comodín, seguido de un punto y el nombre del dominio. Esto permitirá que como_se_llame.mi-red-local.org, como_sea.mi-red-local.org, lo_que_sea.mi-red-local.org, etc., podrán acceder al volumen /var/nfs/publico/ en modo solo lectura. Si queremos que el accesos a este directorio sea en modo de lectura y escritura, cambiamos (ro) por (rw):
|
/var/nfs/publico *.mi-red-local.org(rw,sync) |
Ya que se definieron los volúmenes a compartir, solo resta iniciar o reiniciar el servicio nfs. Utilice cualquiera de las dos líneas dependiendo el caso:
|
/sbin/service nfs start /sbin/service nfs restart |
A fin de asegurarnos de que el servicio de nfs esté habilitado la siguiente vez que se encienda el equipo, debemos ejecutar lo siguiente:
|
/sbin/chkconfig --level 345 nfs on |
El mandato anterior hace que se habilite nfs en los niveles de corrida 3, 4 y 5.
Como medida de seguridad adicional, si tiene un contrafuegos o firewall implementado, cierre, para todo aquello que no sea parte de su red local, los puertos tcp y udp 2049, ya que estos son utilizados por NFS para escuchar peticiones.
Para probar la configuración, es necesario que las máquinas clientes se encuentren definidas en el DNS o en el fichero /etc/hosts del servidor. Si no hay un DNS configurado en la red, deberán definirse los nombres y direcciones IP correspondientes en el fichero /etc/hosts de todas las máquinas que integran la red local.
Como root, en el equipo cliente, ejecute el siguiente mandato para consultar los volúmenes exportados (-e) a través de NFS por un servidor en particular:
|
showmount -e 192.168.1.254 |
Lo anterior mostrará una lista con los nombres y rutas exactas a utilizar. Ejemplo:
|
Export list for 192.168.1.254: /var/nfs/publico 192.168.1.0/24 |
A continuación creamos, como root, desde cualquier otra máquina de la red local un punto de montaje:
|
mkdir /mnt/servidornfs |
Y para proceder a montar el volumen remoto, utilizaremos la siguiente línea de mandato :
|
mount servidor.mi-red-local.org:/var/nfs/publico /mnt/servidornfs |
Si por alguna razón en el DNS de la red local, o el fichero /etc/hosts de la máquina cliente, decidió no asociar el nombre de la máquina que fingirá como servidor NFS a su correspondiente dirección IP, puede especificar ésta en lugar del nombre. Ejemplo:
|
mount -t nfs 192.168.1.254:/var/nfs/publico /mnt/servidornfs |
Podremos acceder entonces a dicho volumen remoto con solo cambiar al directorio local definido como punto de montaje, del mismo modo que se haría con un disquete o una unidad de CDROM:
|
cd /mnt/servidornfs |
Si queremos poder montar este volumen NFS con una simple línea de mandato o bien haciendo doble clique en un icono sobre el escritorio, será necesario agregar la correspondiente línea en /etc/fstab. Ejemplo:
|
servidor.mi-red-local.org:/var/nfs/publico /mnt/servidornfs nfs user,exec,dev,nosuid,rw,noauto 0 0 |
La línea anterior especifica que el directorio /var/nfs/publico/ de la máquina servidor.mi-red-local.org será montado en en directorio local /mnt/servidor/nfs, permitiéndole a los usuarios el poder montarlo, en modo de lectura y escritura y que este volumen no será montado durante el arranque del sistema. Esto último es de importancia, siendo que si el servidor no está encendido al momento de arrancar la máquina cliente, este se colgará durante algunos minutos.
Una vez agregada la línea en /etc/fstab de la máquina cliente, si utiliza GNOME Midnight Commander, el administrador de archivos de GNOME-1.1 y 1.2, solo restará iniciar una sesión gráfica, hacer clique derecho sobre el escritorio y seleccionar Actualizar dispositivos o Rescan devices. Esto colocará un icono adicional sobre el escritorio que deberá ser tratado del mismo modo que se haría con un disquete o unidad de CDROM.
Si utiliza GNOME-1.4 o superior, éste incorpora Nautilus como administrador de archivos, mismo que auto-detecta cualquier cambio en /etc/fstab. Solo debe hacerse clique derecho sobre el escritorio y debe seleccionarse el disco que se desee montar.
Este es quizás el uso más común para un volumen NFS. Permite compartir un volumen que contenga una copia del CD de instalación de alguna distribución y realizar inclusive instalaciones simultáneas en varios equipos. Tiene como ventaja el que la instalación puede resultar más rápida que si se hiciese con un CDROM, siendo que la tasa de trasferencia de archivos será determinada por el ancho de banda de la red local, y nos permitirá instalar GNU/Linux en máquinas que no tengas unidad de CDROM.
Una vez creado y configurado un volumen a compartir copiaremos todo el contenido del CD de instalación en éste:
|
cp -r /mnt/cdrom/* /var/nfs/publico/ |
En el directorio images del CD encontraremos varias imágenes para crear disquetes de arranque. Utilizaremos bootnet.img para crear el número de disquetes necesarios para cada máquina en la que realizaremos una instalación, y que nos permitirán acceder a la red. Inserte un disquete y ejecute lo siguiente:
|
cd /var/nfs/publico/images/ dd if=bootnet.img of=/dev/fd0 bs=1440k |
Añada en /etc/hosts, o bien de de alta en el DNS, las direcciones IP, que serán utilizadas por las nuevas máquinas, asociadas a un nombre con el dominio que específico como regla de control de acceso en /etc/exports -es decir *.mi-red-local.org-. Para /etc/hosts, puede quedar algo así:
|
127.0.0.1 localhost.localdomain localhost 192.168.1.254 servidor.mi-red-local.org servidor 192.168.1.2 algun_nombre.mi-red-local.org algun_nombre 192.168.1.3 otro_nombre.mi-red-local.org otro_nombre 192.168.1.4 otro_nombre_mas.mi-red-local.org otro_nombre_mas 192.168.1.5 como_se_llame.mi-red-local.org como_se_llame 192.168.1.6 como_sea.mi-red-local.org como_sea 192.168.1.7 lo_que_sea.mi-red-local.org lo_que_sea 192.168.1.8 nueva_maquina.mi-red-local.org nueva_maquina 192.168.1.9 otra_nueva_maquina.mi-red-local.org otra_nueva_maquina |
Utilice estos disquetes para arrancar en los equipos, ingrese una dirección IP y demás parámetros para esta máquina y cuando se le pregunte ingrese la dirección IP del servidor NFS y el directorio en éste donde se encuentra la copia del CD de instalación. El resto continuará como cualquier otra instalación.
|
MySQL |
|
|
|
|
|
Desarrollador: |
MySQL AB |
|
Última versión: |
5.0.45 (Community Server) (4 de julio de 2007) |
|
S.O.: |
Multiplataforma |
|
Género: |
RDBMS |
|
Licencia: |
GPL o Uso comercial |
|
En español: |
- |
|
Sitio Web: |
www.mysql.com |
MySQL es un sistema de gestión de base de datos relacional, multihilo y multiusuario con más de seis millones de instalaciones. MySQL AB desarrolla MySQL como software libre en un esquema de licenciamiento dual. MySQL AB pertenece a Sun Microsystems desde enero de 2008.
Por un lado se ofrece bajo la GNU GPL para cualquier uso compatible con esta licencia, pero las empresas que quieran incorporarlo en productos privativos pueden comprar a la empresa una licencia específica que les permita este uso. Está desarrollado en su mayor parte en ANSI C.
Al contrario que proyectos como Apache, donde el software es desarrollado por una comunidad pública y el copyright del código está en poder del autor individual, MySQL es propiedad y está patrocinado por una empresa privada, que posee el copyright de la mayor parte del código.
Esto es lo que posibilita el esquema de licenciamiento anteriormente mencionado. Además de la venta de licencias privativas, la compañía ofrece soporte y servicios. Para sus operaciones contratan trabajadores alrededor del mundo que colaboran vía Internet. MySQL AB fue fundado por David Axmark, Allan Larsson, y Michael Widenius.
SQL (Lenguaje de Consulta Estructurado) fue comercializado por primera vez en 1981 por IBM, el cual fue presentado a ANSI y desde ese entonces ha sido considerado como un estándar para las bases de datos relacionales. Desde 1986, el estándar SQL ha aparecido en diferentes versiones como por ejemplo: SQL:92, SQL:99, SQL:2003. MySQL es una idea originaria de la empresa opensource MySQL AB establecida inicialmente en Suecia en 1995 y cuyos fundadores son David Axmark, Allan Larsson, y Michael "Monty" Widenius. El objetivo que persigue esta empresa consiste en que MySQL cumpla el estándar SQL, pero sin sacrificar velocidad, fiabilidad o usabilidad.
Michael Widenius en la década de los 90 trató de usar mSQL para conectar las tablas usando rutinas de bajo nivel ISAM, sin embargo, mSQL no era rápido y flexible para sus necesidades. Esto lo conllevó a crear una API SQL denominada MySQL para bases de datos muy similar a la de mSQL pero más portable.
La procedencia del nombre de MySQL no es clara. Desde hace más de 10 años, las herramientas han mantenido el prefijo My. También, se cree que tiene relación con el nombre de la hija del cofundador Monty Widenius quien se llama My.
Por otro lado, el nombre del delfín de MySQL es Sakila y fue seleccionado por los fundadores de MySQL AB en el concurso "Name the Dolphin". Este nombre fue enviado por Ambrose Twebaze, un desarrollador de Open source Africano, derivado del idioma SiSwate, el idioma local de Swazilandia y corresponde al nombre de una ciudad en Arusha, Tanzania, cerca de Uganda la ciudad origen de Ambrose.
Instalación de Mysql
Supongamos que ya nos hemos conseguido los paquetes y los tenemos en el directorio /root/install, lo primiero que hacemos es descomprimirlos:
tar zxvf /root/instal/mysql-3.22.x.tar.gz
Compilamos e instalamos MySQL
cd /usr/local/mysql
./configure --witout-debug --prefix=/usr/local/mysql
make
make install
cp /usr/local/support-files/mysql.server /etc/rc.d/init.d/mysql
chmod 755 /etc/rc.d/init.d/mysql
Creamos la bases del datos del sistema MySQL
/usr/local/mysql/bin/mysql_install_db
Arrancamos el servidor MySQL
/etc/rc.d/init.d/mysql start
Asignamos la password del adminstrador (root ) de MySQL
/usr/local/mysql/bin/mysqladmin -u root password "clave"
Ya hemos terminado con MySQL, ahora compilaremos PHP como módulo de Apache.
cd /usr/local/php
./configure --with-mysql=/usr/local/mysql \
--with-apache=/usr/local/apache \
--enable-track-vars
make
make install
#cp php3.ini-dist /usr/local/lib/php3.ini
|
Apache |
|
|
|
|
|
Desarrollador: |
Apache Software Foundation |
|
Última versión: |
2.2.6 (01 de Agosto de 2007) |
|
S.O.: |
Multiplataforma |
|
Género: |
Servidor web |
|
Licencia: |
Licencia Apache |
|
En español: |
- |
|
Sitio Web: |
[ http://httpd.apache.org/] |
El servidor HTTP Apache es un software (libre) servidor HTTP de código abierto para plataformas Unix (BSD, GNU/Linux, etc.), Windows, Macintosh y otras, que implementa el protocolo HTTP/1.1 y la noción de sitio virtual. Cuando comenzó su desarrollo en 1995 se basó inicialmente en código del popular NCSA HTTPd 1.3, pero más tarde fue reescrito por completo. Su nombre se debe a que Behelendorf eligió ese nombre porque quería que tuviese la connotación de algo que es firme y enérgico pero no agresivo, y la tribu Apache fue la última en rendirse al que pronto se convertiría en gobierno de EEUU, y en esos momentos la preocupación de su grupo era que llegasen las empresas y "civilizasen" el paisaje que habían creado los primeros ingenieros de internet. Además Apache consistía solamente en un conjunto de parches a aplicar al servidor de NCSA. Era, en inglés, a patchy server (un servidor "emparchado").
El servidor Apache se desarrolla dentro del proyecto HTTP Server (httpd) de la Apache Software Foundation.
Apache presenta entre otras características mensajes de error altamente configurables, bases de datos de autenticación y negociado de contenido, pero fue criticado por la falta de una interfaz gráfica que ayude en su configuración.
Apache tiene amplia aceptación en la red: en 2005, Apache fue el servidor HTTP más usado, siendo el servidor empleado en el 48% de los sitios web en el mundo. Sin embargo ha sufrido un descenso en su cuota de mercado en los últimos años. (Estadísticas históricas y de uso diario proporcionadas por Netcraft.
La mayoría de las vulnerabilidades de la seguridad descubiertas y resueltas tan sólo pueden ser aprovechadas por usuarios locales y no remotamente. Sin embargo, algunas se pueden accionar remotamente en ciertas situaciones, o explotar por los usuarios locales malévolos en las disposiciones de recibimiento compartidas que utilizan PHP como módulo de Apache.
Módulos
La arquitectura del servidor Apache es muy modular. El servidor consta de una sección core y diversos módulos que aportan mucha de la funcionalidad que podría considerarse básica para un servidor web. Algunos de estos módulos son:
mod_ssl - Comunicaciones Seguras vía TLS.
mod_rewrite - reescritura de direcciones (generalmente utilizado para transformar páginas dinámicas como php en páginas estáticas html para así engañar a los navegantes o a los motores de búsqueda en cuanto a como fueron desarrolladas estas páginas).
mod_dav - Soporte del protocolo WebDAV (RFC 2518).
mod_deflate - Compresión transparente con el algoritmo deflate del contenido enviado al cliente.
mod_auth_ldap - Permite autentificar usuarios contra un servidor LDAP.
mod_proxy_ajp - Conector para enlazar con el servidor Jakarta Tomcat de páginas dinámicas en Java (servlets y JSP).
El servidor de base puede ser extendido con la inclusión de módulos externos entre los cuales se encuentran:
mod_perl - Páginas dinámicas en Perl.
mod_php - Páginas dinámicas en PHP.
mod_python - Páginas dinámicas en Python.
mod_rexx - Páginas dinámicas en REXX y Object REXX.
mod_ruby - Páginas dinámicas en Ruby.
mod_aspdotnet - Páginas dinámicas en .NET_de_Microsoft (Módulo retirado).
mod_mono - Páginas dinámicas en Mono
mod_security - Filtrado a nivel de aplicación, para seguridad.
Supongamos que ya nos hemos conseguido los paquetes y los tenemos en el directorio /root/install, lo primiero que hacemos es descomprimirlos:
tar zxvf /root/install/apache-1.3.x.tar.gz
Creamos enlaces sencillos (blandos) a código fuente
ln -s /usr/local/apache-1.3.x /usr/local/apache
Preparamos la fuentes par al compilación de Apache
cd /usr/loca/apache
./configure --prefix=/usr/local/apache
Compilamos Apache
cd /usr/local/apache
./configure --prefix=/usr/local/apache \
--activate-module=src/modules/php3/libphp3.a
# si hemos compilado PHP4 utilizaremos
#--activate-module=src/modules/php4/libphp4.a
# quitar los comentarios para habilitar el módulo de proxy
#--activate-module=src/modules/proxy/libproxy.a
make
make install
|
Postfix |
|
|
Desarrollador: |
Wietse Venema y otros |
|
Última versión: |
2.5.0 (23 de enero de 2008) |
|
Última versión de prueba: |
2.6 Instancia 20080127 |
|
S.O.: |
Tipo Unix |
|
Género: |
Agente de Transporte de Correo (MTA) |
|
Licencia: |
Licencia Pública IBM |
|
En español: |
No |
|
Sitio Web: |
http://www.postfix.org/ |
Postfix es un Agente de Transporte de Correo (MTA) de software libre / código abierto, un programa informático para el enrutamiento y envío de correo electrónico, creado con la intención de que sea una alternativa más rápida, fácil de administrar y segura al ampliamente utilizado Sendmail. Formalmente conocido como VMailer e IBM Secure Mailer, fue originalmente escrito por Wietse Venema durante su estancia en el Thomas J. Watson Research Center de IBM, y continúa siendo desarrollado activamente.
Postfix es el agente de transporte por omisión en diversas distribuciones de Linux y en las dos últimas versiones del Mac OS X (Panther y Tiger).
Postfix es también una forma de notación algebraica.
DHCP (sigla en inglés de Dynamic Host Configuration Protocol) es un protocolo de red que permite a los nodos de una red IP obtener sus parámetros de configuración automáticamente. Se trata de un protocolo de tipo cliente/servidor en el que generalmente un servidor posee una lista de direcciones IP dinámicas y las va asignando a los clientes conforme éstas van estando libres, sabiendo en todo momento quién ha estado en posesión de esa IP, cuánto tiempo la ha tenido y a quién se la ha asignado después.
Asignación de direcciones IP
Sin DHCP, cada dirección IP debe configurarse manualmente en cada ordenador y, si el ordenador se mueve a otro lugar en otra parte de la red, se debe configurar otra dirección IP diferente. El DHCP le permite al administrador supervisar y distribuir de forma centralizada las direcciones IP necesarias y, automáticamente, asignar y enviar una nueva IP si el ordenador es conectado en un lugar diferente de la red.
El protocolo DHCP incluye tres métodos de asignación de direcciones IP:
Algunas implementaciones de DHCP pueden actualizar el DNS asociado con los servidores para reflejar las nuevas direcciones IP mediante el protocolo de actualización de DNS establecido en RFC 2136 (Inglés).
El DHCP es una alternativa a otros protocolos de gestión de direcciones IP de red, como el BOOTP (Bootstrap Protocol). DHCP es un protocolo más avanzado, pero ambos son los usados normalmente.
En Windows 98 o posterior, cuando el DHCP es incapaz de asignar una dirección IP, se utiliza un proceso llamado "Automatic Private Internet Protocol Addressing".
Parámetros configurables
Un servidor DHCP puede proveer de una configuración opcional a la computadora cliente. Dichas opciones están definidas enRFC 2132 (Inglés)
Lista de opciones configurables:
Configuración del servidor DHCP
La configuración del servidor DHCP, como hemos visto anteriormente, se realiza en el fichero /etc/dhcpd.conf. Es un fichero de texto, donde cada línea que comience por # indica un comentario y no se tiene en cuenta. Las distintas entradas de este fichero terminan en ;. Si una entrada de configuración necesita distintos parámetros los podemos agrupar mediante { y }. Ver el siguiente ejemplo de cofiguración.
Este fichero contendrá línea de configuración de la forma
parámetro valor;
y línea de la forma:
option parámetro valor;
El valor dependerá del parámetro que queramos configurar; podrá ser un valor lógico (on u off, por ejemplo), una dirección, un nombre predefinido u otro valor según el caso.
En este fichero también se definen las subredes en las que actúa el servidor DHCP y qué rangos de direcciones puede asignar. Existe unos parámetros que pueden ser globales o se pueden especificar dentro de una declaración de subred. Cualquier parámetro especificado en una subred tiene preferencia en esta subred sobre los establecidos de forma global.
Primero vemos un ejemplo de configuración y posteriormente veremos una descripción de las línea que contiene y otras que podría contener:
|
authoritative; one-lease-per-client on; server-identifier ppfm.atenea.dom; default-lease-time 604800; max-lease-time 604800; option subnet-mask 255.255.255.0; option broadcast-address 192.168.1.255; option routers 192.168.1.10; option domain-name-servers 192.168.1.10; option domain-name "atenea.dom"; ddns-domainname "atenea.dom"; ddns-update-style ad-hoc; ddns-updates on; option netbios-name-servers 192.168.1.10; subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.7 192.168.1.9; range 192.168.1.90 192.168.1.150; } |
En una vista rápida para impacientes:
authoritative; Supone que la configuración correcta para la red es la definida en el servidor DHCP y tratará de reasignar datos a los clientes mal configurados. Este parámetro puede ser global o asigando a una declaración de subred. Los cambios realizados en en servidor marcado como authoritative tienen una rápida propagación en la subred ya que se reconfigura cualquier cliente con la antigua configuración.
authoritative; tiene el significado opuesto al anterior parámetro.
one-lease-per-client on; cuando esta opción está en "on" y un cliente solicita una asignación, el servidor libera automáticamente cualquier otra asignación que tenga ese cliente. Se supone que si el cliente hace una solicitud es porque ha olvidado que tuviera alguna, es decir tiene un solo interfaz de red. Si no se da esta situación en los clientes hay que usar este parámetro con precaución.
server-identifier 192.168.1.10; este parámetro identifica el nodo que alberga el servicio DHCP. Sólo se deber usar cuando el nodo tenga más de una dirección IP asignada al interfaz.
default-lease-time 604800; indica el tiempo de asignación en segundos.
max-lease-time 604800; indica el tiempo máximo de asignación en segundos.
ddns-updates on; activa la actualización DNS con los valores asignados mediante DHCP.
ddns-domainname "atenea.dom"; indica el dominio en el que se actualizan los DNS
ddns-update-style interim; esta línea indica el método de actualización DNS automática con los valores de la IP asignados por DHCP. Más adelante veremos como hay que modificar las zonas en el fichero /etc/named.conf para permtir la actualización.
option subnet-mask 255.255.255.0; definimos la máscara general de red que vamos a utilizar.
option broadcast-address 192.168.1.255; definimos la dirección de difusión de la red.
option routers 192.168.1.10; definimos el gatewaye de la red.
option domain-name-servers 192.168.1.10; definimos la dirección del servidor DNS de la red.
option domain-name "atenea.dom"; definimos el nombre del dominio DNS que se añade a los nombres de host.
option netbios-name-servers 192.168.1.10; definimos ls dirección del servidor WINS para NetBios.
|
subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.7 192.168.1.9; range 192.168.1.90 192.168.1.150; } |
y por último definimos la red en la que queremos hacer asignaciones y los rangos de direcciones que puede asignar el servidor DHCP.
Una vez vista la descripcíón preliminar de la configuración DHCP vamos a entrar en más detalles.
Podíamos haber definido una descripción de subred más simple si sólo tuviéramos un rango de asignaciones:
|
subnet 192.168.1.0 netmask 255.255.0.0 range 192.168.1.100 192.168.1.200; |
Nota: En cualquier red serán necesarios distintos host con dirección IP fija, por ejemplo los servidores DNS o gateways. Habrá que tener cuidado con la asignación de estas direcciones y definir los rangos correctamente para no llevarnos sorpresas. También se pueden configurar equipos concretos mediante el parámetro host.
Vemos otras opciones disponibles
fixed-address lista_direcciones_ip; define direcciones estáticas para asignar a un host
group comienza una declaración de grupo.
hardware tipo_hardware dirección; se utiliza para indicar el tipo de hardware, Ethernet o token ring. por ejemplo: hardware ethernet 00:50:b3:c5:60:05;
host comienza una declaración de host. Por ejemplo:
host cli004 {
hardware ethernet 00:50:b3:c5:60:23;
fixed-address 192.168.1.122;
}
fixed-address direccion-ip; dirección fija para asignar a un host, como vemos en el ejemplo anterior.
host-name nombre; nombre para asignar al host solicitado.
max-lease-time segundos; Máximo tiempo de asignación de la asignación. Esta parámetro lo podemos utilizar para evitar que los clientes tomen una dirección IP por tiempo indefinido.
netbios-name-servers lista_IP; Lista de IP de servidores WINS.
range ip-menot ip-mayor; el rango de diecciones que se asignarán en la correspondiente subred.
routers lista_IP; Lista de IP de gateways.
subnet comienza un declaración de subred.
subnet-mask máscara; mascara de red
shared-network define unadeclaración de subred compartida.
Alguna veces es necesario especificar opciones para cierto número de máquinas de la red sin tener que tratarlas como una subred separada. Por ejemplo, se puede definir una subred para un grupo de equipos y entonces aplicarle unas opciones específicas a esa subred. Esto significa que tendremos que especificarle todas las opciones de configuración necesarias.
Por ejemplo:
|
shared-network 192.168.2.253 { subnet 192.168.2.0 netmask 255.255.255.0 { option routers 192.168.2.253; option subnet-mask 255.255.255.0; option broadcast-address 192.168.2.255; option domain-name-servers ns.atenea.dom, ns2.atenea.dom; pool { default-lease-time 400; max-lease-time 400; range 192.168.2.100 192.168.2.200; ddns-domainname "atenea.dom"; ddns-rev-domainname "in-addr.arpa"; } } } shared-network 192.168.3.253 { subnet 192.168.3.0 netmask 255.255.255.0 { option routers 192.168.3.253; option subnet-mask 255.255.255.0; option broadcast-address 192.168.3.255; option domain-name-servers ns.atenea.dom, ns2.atenea.dom; pool { default-lease-time 400; max-lease-time 400; range 192.168.3.100 192.168.3.200; ddns-domainname "atenea.dom"; ddns-rev-domainname "in-addr.arpa"; } } |
}
CUPS (Common UNIX Printing System) (http://www.cups.org) provee una opcion de impresión para impresoras que soporten Postscript (http://es.wikipedia.org/wiki/PostScript). En este pequeño "como" trataremos de enseñarles como configurar para imprimir localmente y en red teniendo la impresora compartida.
Primeramente debemos verificar que tengamos instalado CUPS, lo hacemos con el comando find de esta forma:
$ find /var/log/packages/ -name cups*
tiene que mostrarnos algo así
/var/log/packages/cups-1.1.23-i486-1
Para poder continuar, es importante que tengamos instalado y configurado Samba, ya que será necesario para compartir la impresora en red, si no lo tienen pueden ir al "como" de Samba en http://wiki.linuxbaja.org/doku.php?id=comosamba.
Ya teniendo listo Samba tenemos que hacerle una pequeña modificación a su archivo de configuración /etc/samba/smb.conf y en la linea printing agregar:
printing = cups
INSTALACIÓN DE CUPS
Instalamos CUPS y lo haremos con Swaret:
# swaret --install cups
Si quieres que se arranque desde el inico del sistema, que es lo recomendable, tienes que hacer esto:
# chmod +x /etc/rc.d/rc.cupsd
de esta forma podras usarlo:
#/etc/rc.d/rc.cups start | stop | restart | status
Para verificar que este corriendo checamos nuestros servicios:
#ps aux | grep cups
y nos tiene que dar algo así:
root 3990 0.0 0.4 5180 2464 ? Ss Aug06 0:00 /usr/sbin/cupsd
INSTALACIÓN Y CONFIGURACIÓN DE IMPRESORA LOCAL
Tenemos dos formas de hacerlo, una por medio de comandos a travez de consola y otra usando una interfase web.
En modo consola vamos a hacer uso del comando lpadmin con la opción -p ($man lpadmin para conocer las opciones). Esta es la sintaxis que tenemos que llevar:
#/usr/bin/lpadmin -p impresora -E -v dispositivo -m driver.ppd
En mi caso yo tengo una HP Deskjet 3550, entonces seria de esta forma si usamos el puerto paralelo:
#/usr/bin/lpadmin -p Deskjet3550 -E -v parallel:/dev/lp1 -m HP3550.ppd
De forma similar si estamos usando una interface de red (JetDirect) podemos hacer esto, suponiendo que la impresora tiene el IP 192.168.0.157:
#/usr/bin/lpadmin -p LaserJet -E -v socket://192.168.0.157 -m laserjet.pdd
Si preferimos la interface web, que seria la forma más sencilla, accesamos en nuestro navegador lo siguiente:
http://localhost:631/admin
Ahí seleccionamos Do Administration Tasks, donde pedirá un usuario y un password, usamos el de root:
user = root
password = tu password de root
Estando en la pantalla de administración agregamos la impresora con el botón add printer, nos va a pedir los datos de la impresora:
name -> ejemplo: HP3550
location ->ejemplo: casa
description -> ejemplo: HP Deskjet 3550
Damos continuar y seleccionamos la conexion que vamos a usar, en mi caso utilizare el puerto USB:
USB printer #1
Nota: En caso de que la impresora este compartida en Windows y este trabajando en un dominio esta sería la configuración, usar la opción Windows Printer via Samba: smb://usuario:password@dominio/host/compartido, en mi caso: smb://alex:mipassword@cecutit/alex/epsonsty
Presionamos continuar y escogemos la marca de la impresora, recuerden que tiene que soportar Postscript, algunas epson no lo tienen, en http://www.cups.org/doc-1.1/sam.html#PRINTER_DRIVERS nos da una lista.
Damos continuar seleccionando el modelo, (si nuestra impresora no se encuentra en la lista podemos ir a http://linuxprinting.org y buscar los drivers, que se tienen que copiar a /usr/share/cups/model) y listo, impresora agregada.
Ahora, si nos vamos a Administration y luego a Manage Printers podemos hacer la prueba de impresión en el botón Print Test Page
Si no hay ningún problema ya esta listo para imprimir localmente.
CONFIGURAR IMPRESORA COMPARTIDA
Seguira compartir la impresora con maquinas que usen el sistema de las ventanas (clientes) y lo haremos tocando los archivos de configuracion de Samba.
En /etc/samba/smb.conf tenemos que verificar que en la sección de [global] esten habilitadas estas opciones:
load printers = yes
printing = cups
printcap name = cups
y en [printers]
comment = All Printers
path = /var/spool/samba
printer admin = root
create mode = 0700
browseable = no
public = yes
guest ok = yes
writable = no
printable = yes
use client driver = yes
En /etc/samba/mime.convs descomentar la siguiente linea:
application/octet-stream application/vnd.cups-raw 0 -
y en /etc/samba/mime.types descomentar
application/octet-stream
(Puedes verificar los datos de las impresoras en /etc/cups/printers.conf )
Con estas configuraciones ya está listo para imprimir desde windows, donde tienes que configurar la impresora que eso ya debes saber como hacerlo, si no lo sabes puedes marcar a Microsoft por ayuda o puedes buscar algún pringao o mejor aún, si deseas puedes contactarme y hablamos $$$.
PHP es un lenguaje de programación interpretado usado normalmente para la creación de páginas web dinámicas. PHP es un acrónimo recursivo que significa "PHP Hypertext Pre-processor" (inicialmente PHP Tools, o, Personal Home Page Tools). Actualmente también se puede utilizar para la creación de otros tipos de programas incluyendo aplicaciones con interfaz gráfica usando las bibliotecas Qt o GTK+.
Visión general
El gran parecido que posee PHP con los lenguajes más comunes de programación estructurada, como C y Perl, permiten a la mayoría de los programadores crear aplicaciones complejas con una curva de aprendizaje muy corta. También les permite involucrarse con aplicaciones de contenido dinámico sin tener que aprender todo un nuevo grupo de funciones.
Aunque todo en su diseño está orientado a facilitar la creación de página web, es posible crear aplicaciones con una interfaz gráfica para el usuario, utilizando la extensión PHP-Qt o PHP-GTK. También puede ser usado desde la línea de órdenes, de la misma manera como Perl o Python pueden hacerlo, a esta versión de PHP se la llama PHP CLI (Command Line Interface).
Cuando el cliente hace una petición al servidor para que le envíe una página web, el servidor ejecuta el intérprete de PHP. Éste procesa el script solicitado que generará el contenido de manera dinámica (por ejemplo obteniendo información de una base de datos). El resultado es enviado por el intérprete al servidor, quien a su vez se lo envía al cliente. Mediante extensiones es también posible la generación de archivos PDF, Flash, así como imágenes en diferentes formatos.
Permite la conexión a diferentes tipos de servidores de bases de datos tales como MySQL, Postgres, Oracle, ODBC, DB2, Microsoft SQL Server, Firebird y SQLite.
PHP también tiene la capacidad de ser ejecutado en la mayoría de los sistemas operativos, tales como UNIX (y de ese tipo, como Linux o Mac OS X) y Windows, y puede interactuar con los servidores de web más populares ya que existe en versión CGI, módulo para Apache, e ISAPI.
PHP es una alternativa a las tecnologías de Microsoft ASP y ASP.NET (que utiliza C#/VB.NET como lenguajes), a ColdFusion de la compañía Adobe (antes Macromedia), a JSP/Java de Sun Microsystems, y a CGI/Perl. Aunque su creación y desarrollo se da en el ámbito de los sistemas libres, bajo la licencia GNU, existe además un IDE (entorno de desarrollo integrado) comercial llamado Zend Studio. Recientemente, CodeGear (la división de lenguajes de programación de Borland) ha sacado al mercado un entorno integrado de desarrollo para PHP, denominado Delphi for PHP, Existe un módulo para Eclipse uno de los IDE más populares.
Wily Costa
Caaguazu-Paraguay
Página anterior | ![]() Volver al principio del trabajo | Página siguiente ![]() |
Trabajos relacionados
Ver mas trabajos de Programacion |
|
Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.