Avanlinux
De McWiki
Tabla de contenidos |
Introducción
La introducción correspondera a como mantener una instalacion de Gentoo tanto a nivel de servidor.
Conociendo portage
Portage es junto con la herramienta emerge el corazón de Gentoo.
Portage es un árbol de directorios en el cual se albergan los ficheros ebuild de los cuales hablaremos mas adelante. Este árbol esta dividido en catgorias segun el tipo de software.
Ej: sys-kernel, games-fps, dev-ruby, etc
Como es lógico en el directorio sys-kernel podremos enconrtrar todos los kernels disponibles en el árbol portage.
Ej: gentoo-sources, ck-sources, mm-sources, etc
El primer directorio corresponde al kernel vanilla parcheado con parches de gentoo, el segundo seria con los parches Con Kolivas. Dentro del directorio gentoo-sources podremos encontrar todos los ficheros ebuild correspondientes a las versiones de gentoo-sources.
Ej: gentoo-sources-2.4.32-r4.ebuild, gentoo-sources-2.6.16-r1.ebuild, gentoo-sources-2.6.16-r6.ebuild, etc.
EL contenido de los ficheros ebuild lo explicaremos con detalle más adelante, pero para que os hagais una idea, contienen las instrucciones para instalar un paquete.
Conociendo emerge
Emerge es la herramienta de Gentoo para instalar (y desinstalar software) en nuestro sistema.
Hoy veremos una breve reseña acerca de emerge, ya que a lo largo del curso iremos ampliando conocimientos acerca de esta herramienta y optimizando su uso.
No podemos comenzar con emerge sin echar un primer vistazo a su fichero de configuración /etc/make.conf. El fichero de configuración minimo el instalado por el stage 3
| Archivo: /etc/make.conf |
# These settings were set by the catalyst build script that automatically built this stage
# Please consult /etc/make.conf.example for a more detailed example
CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
|
En este primer ejemplo conocemos las variables más importantes.
CFLAGS hace referencia a las flags de compilacion que recibira gcc cada vez que instalemos software.
CHOST declara el objetivo de la compilacion.
CXXFLAGS igual que CFLAGS pero para programas en C++.
A este fichero le añadiremos unas opciones basicas que explicaremos ahora, a lo largo del curso iremos añadiendo y explicando otras muchas opciones.
Lo primero que añadiremos sera la variable USE , esta variable informara a emerge acerca de que soporte debe añadir a cada paquete de software.
Apache
Instalación de Apache
Ahora que ya conocemos el funcionamiendo de emerge, vamos a instalar y configurar Apache.
| Código: Viendo las USES |
emerge apache -vp |
En la salida podremos ver que tenemos dos USES activadas apache2 y ssl, la primera le indica a emerge que debe instalar la version dos de apache y la segunda hara que apache se instale con soporte ssl (Secure Socket Layer).
Como no queremos modificar ninguna USE procedemos a instalarlo.
| Código: Instalando apache |
emerge apache -v |
Configuración basica: 1 host
Configuración avanzada: Virtual hosts
Proftpd
Instalacion de proftpd
Configuracion basica
Configuracion avanzada
Samba
Iptables
Instalando Iptables
Configuración basica: Firewall
Configuración avanzada: NAT y SNAT
Configurar dispositivos USB, mp3, pen-drives, cámaras digitales, etc
Esta configuración servirá para:
- El dispositivo USB se monte automáticamente.
- Permitir tantos dispositivos USB como queramos.
- Se desmonte automáticamente para su desconexión segura.
- Crear un acceso directo en el escritorio cuando se conecte el USB y este se desconecte al extraer el USB
Instalación de componentes
Instalamos lo necesario:
emerge hotplug usbutils autofs -v
Y lo añadimos al inicio:
rc-update hotplug add default rc-update usbutils add default
Configuración
Añadimos una línea en /etc/auto.master
echo '/mnt/usb /etc/auto.removable --timeout=1' >> /etc/auto.master
Con esto indicamos que los dispositivos están especificados en el fichero /etc/auto.removable, que estos los tiene que montar en /mnt /usb[*] y que tras un segundo de inactividad lo desmonte; así, nos permitirá extraer el dispositivo sin peligro de corromper su sistema de ficheros. [*] AVISO: no indiquéis / como punto de montaje si no queréis que desaparezca toda vuestra información!
Ahora, crearemos el fichero /etc/auto.removable e introducimos unas líneas:
echo 'USB1 -fstype=vfat,uid=1000,gid=100,umask=002 :/dev/sda' >> /etc/auto.removable echo 'USB2 -fstype=vfat,uid=1000,gid=100,umask=002 :/dev/sdb' >> /etc/auto.removable echo 'USB3 -fstype=vfat,uid=1000,gid=100,umask=002 :/dev/sdc' >> /etc/auto.removable echo 'USB4 -fstype=vfat,uid=1000,gid=100,umask=002 :/dev/sdd' >> /etc/auto.removable
Tantas líneas como conexiones USB tengamos en nuestro ordenador. Con esto cambiamos también los valores uid y gid para que coincidan con nuestro usuario y grupo habitual.
Y ahora creamos el punto de montaje:
mkdir /mnt/usb
y reiniciamos el servicio autofs:
/etc/init.d/autofs restart
Ahora cuando conectamos y desconectamos dispositivos USB tendría que hacer que estos se montaran automáticamente en /mnt/usb/USB1, /mnt/usb/USB2, etc. podemos hacer un test con:
less /var/log/syslog
y pulsamos mayúsculas+F. Conectamos un cacharrito USB y deberíamos ver cómo syslog se actualiza. Desconectamos, y los cambios también aparecen. Pulsamos Control+C y Q para salir de less.
Ahora lo preparamos bonito cuando conectamos aparezca un icono en el escritorio, y cuando lo desconectemos el icono desaparezca.
Editamos el fichero /etc/hotplug/usb.agent y añadimos esta línea al final: . ./usb/usb-storage &
Pues lanzamos:
echo '. ./usb/usb-storage &' >> /etc/hotplug/usb.agent
el & es importante, porque el USB no se activará hasta que no finalice el script, y para ejecutar usb-storage necesitamos que los dispositivos estén activados.
También tenemos que crear el un fichero /etc/hotplug/usb/usb-storage con:
- !/bin/sh
HOME=/vuestro/home sleep 2 for i in USB1 USB2 USB3 USB4 USB5 USB6 do
if [ -d /mnt/usb/$i ]
then
if [ ! -L $HOME/Desktop/$i ]
then
ln -s /mnt/usb/$i $HOME/Desktop/$i
fi
else
if [ -L $HOME/Desktop/$i ]
then
rm -f $HOME/Desktop/$i
fi
fi
done
(Ojo cambiar el HOME por el vuestro)
Y le damos permisos de ejecución:
chmod +x /etc/hotplug/usb/usb-storage
Y listo ya lo tenemos. Si ahora conectamos algo USB, nos aparecerá en el escritorio un icono de acceso a este dispositivo. Cuando desconectemos, este icono desaparecerá.

