Ultima actualizacion (dd mm aaaa): 16 05 2008
El handbook es un libro completisimo donde nos explican muchas cosas importantes para entender y poner a funcionar
nuestro FreeBSD, simpre es recomendable darle una mirada general y si no sabemos como se hace algo, releerlo, y si luego de
esto e intentar con google aun no nos funciona la cosa, podemos entrar al IRC en el servidor FreeNode, en los cuartos de charla #bsdes , #bsd.pe , #freebsd . En estos lugares hay personas que nos pueden ayudar, pero ojo, no entrar y preguntar
olimpicamente "como puedo instalar FreeBSD" eso es una pregunta estupida y posiblemente te responda "Lee el handbook"
si es que te responden...(no es que sean poco amables, es que detestan a los flojos que no leen los manuales)
Si quieres aprender a hacer preguntas de manera intelingente puedes leer esto:
http://sindominio.net/ayuda/preguntas-inteligentes.html
Para poder pedir ayuda en los chat IRC es muy util el programa XChat, para instalarlo en FreeBSD se hace esto en el
terminal como root
# whereis xchat
xchat: /usr/ports/irc/xchat
# cd /usr/ports/irc/xchat
# make install clean
Y para arrancarlo se usa este comando como usuario normal, nunca como root, xchat
(en Microchof Wintendo :-) los usuarios siempre usan el equipo como el Administrador o un usuario con esos permisos, esto
en FreeBSD o en Gnu/Linux nunca se hace por razones de seguridad y simple logica, solo se usa el root para crear usuarios,
instalar, quitar programas o configurar cosas!
Posiblemente estando como usuario normal $ tenga que cambiar a root # y para que un usuario normal pueda utilizar el
comando "su" debera permitirselo editando este archivo y agregando su login al grupo wheel
# edit /etc/group
y agregamos un usuario con login angel separado con , se veria asi
wheel:*:0:root,angel
Una recomendacion es anotar los nombres de los dispositivos que nos muestra el instalador, como pueden ser
Discos duros, Unidades de CD, Tarjetas de red como "bge0", "sis0", etc.
1) Instalar lo basico solo el kernel
1.1) Solo el kernel y los ports
Leer en el handbook la seccion 2.6 Choosing What to Install
[X] 6 Kern-Developer Full binaries and doc, kernel sources only
1.2) Especificar nuestro procesador /etc/make.conf CPUTYPE?=
Intel x86 architecture:
# (AMD CPUs) opteron athlon64 athlon-mp athlon-xp athlon-4
# athlon-tbird athlon k8 k6-3 k6-2 k6 k5
# (Intel CPUs) nocona pentium4[m] prescott pentium3[m] pentium-m
# pentium2 pentiumpro pentium-mmx pentium i486 i386
# (Via CPUs) c3 c3-2
# Alpha/AXP architecture: ev67 ev6 pca56 ev56 ev5 ev45 ev4
# AMD64 architecture: opteron, athlon64, nocona
# Intel ia64 architecture: itanium2, itanium
Ejemplo:
CPUTYPE?=nocona
Nota:
Existe la posibilidad que una optimizacion genere bloqueos, esto me esta pasando actualmente en un Intel Xeon 3.4 Ghz 1 MB L2, con la opcion nocona en FreeBSD 6.2 amd64 STABLE
2) Instalar mediante los ports el programa para test de velocidad de los servidores fastest_cvsup
# whereis fastest_cvsup
fastest_cvsup: /usr/ports/sysutils/fastest_cvsup
# cd /usr/ports/sysutils/fastest_cvsup
# make install clean
3) Actualizar el sistema
3.1) Generar el archivo para la compilacion de nuestro kernel.
(tenga en cuenta que en este caso lo llamaremos FREEBSD debe ser en mayusculas y es importante que el archivo tenga
igual nombre internamente en la parte donde dice "ident FREEBSD")
# cd /usr/src/sys/arq/conf
Nota:
Cambie la parte "arq" segun sea su version seleccionada, si esta instalando amd64 o un Intel Xeon a 64 bits use
amd64 (los intel Xeon usan la tecnologia AMD64 y algunos Pentium 4 EMT64, por eso para estos procesadores se deben
usar los discos de instalacion de FreeBSD AMD64 y no los i386 si queremos aprovechar su capacidad de 64 bits)
Nota:
Actualmente el FlashPlayer y el Java de Sun (diablo-jre-1.5.x o diablo-jdk-1.5.x) no funcionan como plugins para el Firefox, si usted no quiere perder la capacidad de ver flash y java en su navegador Firefox, mejor instale la version i386, perdera la capacidad a 64 bits de su procesador, pero es la mas estable y podra ver flash y java
Resumiendo...
Intel Xeon 64 bits (nombre clave "nocona"), Intel Pentium 4 EMT64 o AMD Athlon 64 bits entre a:
# cd /usr/src/sys/amd64/conf
Intel a 32 bits (sin EMT64), como los Pentium 1, 2, 3, 4 entre a:
# cd /usr/src/sys/i386/conf
# mkdir /root/kernels
# cp GENERIC /root/kernels/FREEBSD
# ln -s /root/kernels/FREEBSD
Editar el archivo /root/kernels/FREEBSD
Especificar el tipo de arquitectura y procesador
Ejemplo para procesadores Intel (aqui desactivamos el soporte para procesadores viejos i486_CPU y i586_CPU)
machine i386
#cpu I486_CPU
#cpu I586_CPU
cpu I686_CPU
ident FREEBSD
Ejemplo para procesadores AMD64 e Intel 64 bits EMT64
machine amd64
cpu HAMMER
ident FREEBSD
(Al final de nuestro archivo personalizado para compilar nuestro kernel, podemos adicionarle cosas extras como
QUOTA y FIREWALL como ejemplo aqui puede ver como seria esto y es perfectamente funcional)
# Custom kernels
# Soporte para Quotas en samba por ejemplo
options QUOTA
# Soporte para firewall y compartir internet con la LAN
# 28.4 The OpenBSD Packet Filter (PF) and ALTQ
# 28.4.1 Enabling PF
# 28.4.2 Kernel options
device pf
device pflog
device pfsync
# Soporte para DVD-RW (internos IDE)
device atapicam
Nota:
Las opciones PF activan el FIREWALL en nuestro FreeBSD, se deben adicionar estas lineas en el archivo /etc/rc.conf
# Activar OpenBSD Packet Filter (PF)
pf_enable="YES" # Enable PF (load module if required)
pf_rules="/etc/pf.conf" # rules definition file for pf
pf_flags="" # additional flags for pfctl startup
pflog_enable="YES" # start pflogd(8)
pflog_logfile="/var/log/pflog" # where pflogd should store the logfile
pflog_flags="" # additional flags for pflogd startup
gateway_enable="YES" # Enable as LAN gateway (PF)
Descargar de este lugar: http://alpha.telemedellin.tv/public/
el archivo "pf.conf", cambie en ellos los nombres de las tarjetas de red "bge0" y "bge1"
por los nombres de sus tarjetas, para una mejor comprension aclaro que tengo la siguiente configuracion:
Internet---Router---bge0-FreeBSD-bge1---Suiche---LAN
Sin esto es posible que no pueda navegar correctamente en internet y logicamente no podra descargar, actualizar o instalar nada en su computador, luego de tener esta parte terminada re-inicie y continue con el siguiente paso.
3.2) Instalar el programa para actualizar cvsup-without-gui
# whereis cvsup-without-gui
cvsup-without-gui: /usr/ports/net/cvsup-without-gui
# cd /usr/ports/net/cvsup-without-gui
# make install clean
3.3) Copiar el archivo de ejemplo stable-supfile
# cp /usr/share/examples/cvsup/stable-supfile /root
3.4) Ejecutar el programa
# cvsup -L 2 -h cvsup9.FreeBSD.org /root/stable-supfile
Puede usar este otro comando y es mas rapido, ya que chequea las velocidades de los servidores
cvsup -L 2 -h `(fastest_cvsup -q -c us)` /root/stable-supfile
3.5) Cambiar al directorio /usr/src
# cd /usr/src
3.6) Leer el archivo /usr/src/UPDATING
# edit UPDATING
(para salir del editor use las teclas Esc + a)
3.7) Compilar los sources
# make buildworld
3.8) Crear el nuevo kernel usando el archivo de configuracion personalizado FREEBSD
# make buildkernel KERNCONF=FREEBSD
3.9) Iniciar en modo mono-usuario (estos pasos son opcionales (3.10, 3.11, 3.14, 3.15, 3.16) si no hay otros usuarios logeados al servidor, en caso de ser un servidor de archivos con samba igualmente no es requerido)
3.10) Ejecutar
# shutdown now
3.11) Ejecutar estos comandos
# fsck -p
# mount -u /
# mount -a -t ufs
# swapon -a
3.12) Cambiar al directorio /usr/src
# cd /usr/src
3.13) Instalar el nuevo kernel usando el archivo de configuracion personalizado FREEBSD
# make installkernel KERNCONF=FREEBSD
3.14) Re-iniciar
# reboot
3.15) Iniciar en modo mono-usuario
(En el menu de inicio, presionar la tecla 4)
3.16) Ejecutar estos comandos
# fsck -p
# mount -u /
# mount -a -t ufs
# swapon -a
3.17) Cambiar al directorio /usr/src
# cd /usr/src
3.18) Ejecutar comando para comparar archivos
# mergemaster -p
Nos preguntara que si remove /var/tmp/temproot. Responder NO
(Esto comparara archivos de configuracion, simplemente use las teclas PageDown y Enter, ya que no hay mucho que leer)
3.19) Ejecutar este comando
# make installworld
3.20) Ejecutar comando para comparar archivos
# mergemaster
(Esto comparara archivos de configuracion, simplemente use las teclas PageDown y Enter, ya que no hay mucho que leer)
3.21) Re-iniciar el sistema
# reboot
4) Actualizar el arbol de ports
(Los ports son los archivos que nos permiten instalar facilmente los programas que queramos)
# cvsup /usr/share/examples/cvsup/ports-supfile -h cvsup17.freebsd.org
(Puede usar este otro comando y es mas rapido ya que chequeara la velocidad de los servidores de US y usara el mas rapido)
# cvsup /usr/share/examples/cvsup/ports-supfile -h `(fastest_cvsup -q -c us)`
5) Actualizar los ports instalados
(Esto es actualizar los programas que tenemos ya instalados en nuestro equipo a las ultimas versiones disponibles)
Instalar el port portupgrade
# whereis portupgrade
portupgrade: /usr/ports/sysutils/portupgrade
# cd /usr/ports/sysutils/portupgrade
# make install clean
Actualizar
# portupgrade -af
(-a all the installed packages, -f Force the upgrade of a package)
6) Instalar X11
# cd /usr/ports/x11/xorg
# make install clean
7) Instalar KDE
El KDE se puede instalar mediante los ports muy facilmente y hay 2 opciones que son el kdebase3 y el kde3 la diferencia es que el primero solo instala el KDE con lo basico y el segundo instalara el KDE con otras cosas extas (este seria recomendable para un desktop de escritorio y el primero para un servidor)
(Aqui solo instalaremos el KDE con lo basico)
7.1) Instalar el port kdebase3
# whereis kdebase3
kdebase3: /usr/ports/x11/kdebase3
# cd /usr/ports/x11/kdebase3
# make install clean
7.2) Generar el archivo xorg.conf
Leer en el handbook la seccion 5.4.2 Configuring X11
(Al instalar el kdebase3 se instalara automaticamente el port /usr/ports/x11/xorg)
Ejecutar este comando como root
# Xorg -configure
Chequear que funcione con este comando
# Xorg -config xorg.conf.new
Nota:
Los mouse USB son detectados automaticamente y no hay que configurarlos, pero si no es su caso
Leer en el handbook seccion 2.9.10 Mouse Settings
Cargara las X, para salir use estas teclas simultaneamente
Ctrl+Alt+Backspace
Dele una mirada al archivo que se genero automaticamente /root/xorg.conf.new y verifique que
este correcto los parametros de su monitor (si forza su monitor lo puede danar)
Copie el archivo en este lugar con nombre xorg.conf con este comando
# cp /root/xorg.conf.new /etc/X11/xorg.conf
7.3) Crear el archivo .xnitrc para poder ejecutar el comando startx y que arranque KDE
En el directorio de cada usuario se debera crear este archivo .xinitrc que hace que cuando el
usuario ejecute el comando startx se inicie el KDE.
Para el root
# echo "exec startkde" > ~/.xinitrc
Para un usuario, debera ejecutar este comando estando como ese usuario en el terminal
$ echo "exec startkde" > ~/.xinitrc
8) Instalar el Firefox
(ojo, como el flash player solo existe para 32 bits en sistemas a 64 bits no podremos ver flash,
culpa de Adobe)
Instalar el port firefox
# whereis firefox
firefox: /usr/ports/www/firefox
# cd /usr/ports/www/firefox
# make install clean
9) Instalar el JAVA de Sun Microsystems
JRE es para que los programas que requieren java funcionen
Instalar el port diablo-jre15
# whereis diablo-jre15
diablo-jre15: /usr/ports/java/diablo-jre15
# cd /usr/ports/java/diablo-jre15
# make install clean
Nota:
Aun cuando el diablo-jre15 se instale, el plugin para el Firefox no funciona si instalo la version amd64, culpa de Sun?... No! java ya es GPL, parece que aun los desarrolladores no lo logran hacer funcionar, esperemos que en un tiempo lo logren!
10) Automatizar la actualizacion de los ports mediante Cron
Crear la programacion para cron
# crontab -u root -e
( -u Especifica el usuario, -e Especifica que se editara)
(El comando abre un editor vi, se escribe y para guardar se presiona Esc :wq o para salir sin guardar Esc :q! )
10.1) Agregar la siguiente linea al archivo
0 1 * * * /usr/local/bin/cvsup /usr/share/examples/cvsup/ports-supfile -h cvsup17.freebsd.org
(con esta linea se actualizara diariamente a las 01:00)
# Para programar correctamente en Cron tener en cuenta
# el * significa cualquiera
# 1(0-60) 2(0-24) 3(1-30) 4(1-12) 5(1-7)
# min hora diames mes dia
11) Internet
Para poder realizar los pasos aqui descritos tenemos que tener conexion a internet, tenemos dos opciones para esto
11.1) Conexion directa por la tarjeta de red, esto es en caso de un ADSL, CABLE-MODEM o LAN
En este caso sera simplemente tener los datos en el momento de la instalacion
leer en el handbook la seccion 2.9.1 Network Device Configuration
Host: Domain:
demonio.example.com example.com
IPv4 Gateway: Name server:
192.168.1.254 200.13.249.101
IPv4 Address: Netmask:
192.168.1.1 255.255.255.0
Si luego de tener estos datos configurados nos vemos en el caso de tener que modificarlos, esto se puede hacer
editando estos archivos
/etc/rc.conf
# edit /etc/rc.conf
usted vera algo como esto y lo debera modificar segun su caso
defaultrouter="192.168.1.254"
hostname="alpha.telemedellin.com"
ifconfig_bge0="inet 192.168.7.100 netmask 255.255.255.0"
/etc/resolv.conf
usted vera algo como esto y lo debera modificar segun su caso
domain telemedellin.com
nameserver 200.13.249.101
nameserver 200.75.78.78
(Existe otra posibilidad y es que se configure automaticamente por DHCP)
ifconfig_bge0="DHCP"
11.2) Conexion PPPoE por la tarjeta de red, esto es en caso de un ADSL u otros dispositivos
En este caso sera simplemente tener los datos dados por el ISP
leer en el handbook la seccion 23.5 Using PPP over Ethernet (PPPoE)
Crear el archivo ppp.conf en este lugar /etc/ppp/ppp.conf
(este archivo funciona perfectamente en Colombia con Geonet o Coldecon y se debe cambiar milogin y mipassowr
por datos reales)
su contenido podra ser como esto:
default:
set log Phase tun command # you can add more detailed logging if you wish
set ifaddr 10.0.0.1/0 10.0.0.2/0
nombreisp:
set device PPPoE:sis0 # replace sis0 with your Ethernet device
set authname milogin
set authkey mipassword
set dial
set login
add default HISADDR
Ojo la parte donde dice sis0 se debera cambiar por nuestra tarjeta de red que da hacia internet, si tenemos
dos tarjetas se debera colocar la que conecta a internet y no la que conecta a la LAN
Para iniciar la conexion manualmente ejecutamos este comando como root:
# ppp -ddial nombreisp
Si queremos que se conecte automaticamente al iniciar el computador, ponemos estas lineas en el /etc/rc.conf
ppp_enable="YES"
ppp_mode="ddial"
ppp_profile="nombreisp"
12) Tarjeta de red adicional (si solo tiene una esto sobrara)
Es posible que su equipo tenga mas de una tarjeta de red y logicamente la queremos activar, para esto
debemos saber como se llama en FreeBSD, en el proceso de instalacion nos mostro que tarjetas teniamos
Editar el archivo /etc/rc.conf y colocarle una linea como esta
ifconfig_bge1="inet 192.168.1.1 netmask 255.255.255.0"
Si lo vemos luego de ponerle la linea, deberia verse similar a esto:
defaultrouter="192.168.7.1"
hostname="alpha.telemedellin.com"
ifconfig_bge0="inet 192.168.7.100 netmask 255.255.255.0"
sshd_enable="YES"
usbd_enable="YES"
# Mi segunda tarjeta de red bge1 (IP manual)
ifconfig_bge1="inet 192.168.1.1 netmask 255.255.255.0"
# o por DHCP (configuracion automatica)
# ifconfig_bge1="DHCP"
Nota:
no se puede dejar simultaneamente "IP manual" y "configuracion automatica" para la misma tarjeta, solo active una de las dos opciones:
(con esta linea le asigna mos la direccion IP 192.168.1.1 mask 255.255.255.0)
ifconfig_bge1="inet 192.168.1.1 netmask 255.255.255.0"
(con esta linea le diriamos que pida direccion IP a un servidor DHCP
ifconfig_bge1="DHCP" )
Note que hay dos tarjetas en nuestro caso son bge0 y bge1 esto es por que tenemos dos tarjetas iguales pero
debera ponerles el nombre segun sus tarjetas, algo como esto ifconfig_sis0 ifconfig_vr0
Para mayor claridad colocare aqui una copia de mi archivo /etc/rc.conf
# -- sysinstall generated deltas -- # Fri Dec 8 07:40:08 2006
# Created: Fri Dec 8 07:40:08 2006
# Enable network daemons for user convenience.
# Please make all changes to this file, not to /etc/defaults/rc.conf.
# This file now contains just the overrides from /etc/defaults/rc.conf.
#defaultrouter="192.168.7.1"
hostname="alpha.company.com"
ifconfig_bge0="inet 192.168.7.100 netmask 255.255.255.0"
sshd_enable="YES"
usbd_enable="YES"
ifconfig_bge1="inet 192.168.1.1 netmask 255.255.255.0"
# Activar OpenBSD Packet Filter (PF)
pf_enable="YES" # Enable PF (load module if required)
pf_rules="/etc/pf.conf" # rules definition file for pf
pf_flags="" # additional flags for pfctl startup
pflog_enable="YES" # start pflogd(8)
pflog_logfile="/var/log/pflog" # where pflogd should store the logfile
pflog_flags="" # additional flags for pflogd startup
gateway_enable="YES" # Enable as LAN gateway (PF)
#
# Activamos PPPoE
ppp_enable="YES"
ppp_mode="ddial"
#ppp_nat="YES" # if you want to enable nat for your local network, otherwise NO
ppp_profile="pppoe"
#
# Activamos el Squid para cachear y controlar la navegacion
squid_enable="YES"
# Activamos el plugin c-icap para Squid
# El c-icap no esta funcionando bien
#c_icap_enable="YES"
#
# Activamos FTP-PROXY para darle salida a la navegacion
ftpproxy_flags=""
# Activamos el Internet Super-Server (inetd)
inetd_enable="YES"
# Activar la revision del disco si no se desmonta bien
fsck_y_enable="YES"
background_fsck="NO"
# Activamos el DenyHosts
#denyhosts_enable="YES"
#syslogd_flags="-c"
# Activamos el Apache v. 2.2 (/usr/local/etc/rc.d/apache22)
apache22_enable="YES"
# Activamos el Domain Name System (ISC-DNS)
named_enable="YES"
# Activamos el DHCPD (ISC-DHCP)
dhcpd_enable="YES"
dhcpd_ifaces="bge1"
# Activamos SAMBA
samba_enable="YES"
# Activamos QUOTAS
enable_quotas="YES"
check_quotas="YES"
# Activamos NTP Server
ntpd_enable="YES"
ntpd_sync_on_start="YES"
ntpd_flags="-c /etc/ntp.conf -p /var/run/ntpd.pid"
# contenido de /etc/ntp.conf
# server 0.es.pool.ntp.org
# server 1.europe.pool.ntp.org
# server 2.europe.pool.ntp.org
# Activamos Linux compatibility
linux_enable="YES"
# Activamos PostgreSQL
postgresql_enable="YES"
# Activamos MySQL
mysql_enable="YES"
# Activamos CUPS
cupsd_enable="YES"
# Activamos el CLAMAV antivirus
clamav_clamd_enable="YES"
# Activamos las actualizaciones automaticas
clamav_freshclam_enable="YES"
# Activamos el p3scan
#p3scan_enable="YES"
# Optional
#p3scan_config="/usr/local/etc/p3scan/p3scan.conf"
# Activamos BOINC
#boinc_enable="YES"
#boinc_flags="allow_remote_gui_rpc"
#boinc_flags="-no_gui_rpc"
# added by mergebase.sh
# Activamos NAGIOS
nagios_enable="YES"
#nagios_flags=""
#nagios_configfile="/usr/local/etc/nagios/nagios.cfg"
# Activamos snmpd (para cacti)
snmpd_enable="YES"
# Activamos ntop
#ntop_enable="YES"
#ntop_flags="-d --use-syslog=daemon -i bge0 -w 192.168.1.1:3000"
# Activamos MLDonkey
mlnet_enable="YES"
mlnet_user="mlnet"
mlnet_flags=""
#mlnet_logfile="/var/log/mlnet"
# 11.1.1 Configuring the Dump Device
#dumpdev="AUTO"
#dumpdir="/var/crash"
# Dejar esta linea al final del archivo
local_startup="/usr/local/etc/rc.d"
# -- sysinstall generated deltas -- # Sun Oct 28 15:13:40 2007
keymap="us.iso"
13) Si tienes tus "ports" actualizados, habrás notado que últimamente al instalar algún paquete "make install clean" te aparece algo como: ===> Vulnerability check disabled
Para activar esta opción tienes que instalar el port: /usr/ports/security/portaudit el cual se encargara de verificar vulnerabilidades en los "ports" además de contar con unas herramientas para revisar los ports ya instalados.
(Punto 13 tomado de este lugar http://www.unixmexico.org/modules.php?name=News&file=article&sid=1066 )
No hay comentarios.:
Publicar un comentario