aboutsummaryrefslogtreecommitdiff
path: root/es_ES.ISO8859-1/articles/fbsd-from-scratch/fase_1.sh
diff options
context:
space:
mode:
Diffstat (limited to 'es_ES.ISO8859-1/articles/fbsd-from-scratch/fase_1.sh')
-rw-r--r--es_ES.ISO8859-1/articles/fbsd-from-scratch/fase_1.sh243
1 files changed, 0 insertions, 243 deletions
diff --git a/es_ES.ISO8859-1/articles/fbsd-from-scratch/fase_1.sh b/es_ES.ISO8859-1/articles/fbsd-from-scratch/fase_1.sh
deleted file mode 100644
index 22d76fc8d0..0000000000
--- a/es_ES.ISO8859-1/articles/fbsd-from-scratch/fase_1.sh
+++ /dev/null
@@ -1,243 +0,0 @@
-#!/bin/sh
-#
-# fase_1.sh - FreeBSD From Scratch, Primera Fase: Instalación del Sistema.
-# Uso: ./fase_1.sh
-#
-# $FreeBSD$
-
-set -x -e
-PATH=/bin:/usr/bin:/sbin:/usr/sbin
-
-# Requisitos:
-#
-# a) Haber completado sin errores "make buildworld" y "make buildkernel"
-# b) Particiones sin usar (al menos una para el sistema de ficheros raíz,
-# probablemente más para los nuevos /usr y /var, a gusto de cada uno.)
-
-# El punto montaje de la raíz bajo la que va usted a crear el sistema nuevo.
-# Sólo va a usarse como punto de montaje; que no se usará espacio en él
-# puesto que todos los ficheros serán depositados en el o los sistemas
-# de ficheros que están efectivamente montados.
-DESTDIR=/rootnuevo
-SRC=/usr/src # Aquí está su árbol de fuentes.
-
-# ---------------------------------------------------------------------------- #
-# Primer Paso: Creación de un árbol de directorios vacío bajo $DESTDIR.
-# ---------------------------------------------------------------------------- #
-
-step_one () {
- # El nuevo raíz del sistema de ficheros. Obligatorio.
- # Cambie los nombres de dispositivo (DEV_*) para hacerlos acordes con
- # sus necesidades o el "script" le
- # estallará en la cara.
- DEV_ROOT=/dev/da3s1a
- mkdir -p ${DESTDIR}
- newfs ${DEV_ROOT}
- tunefs -n enable ${DEV_ROOT}
- mount -o noatime ${DEV_ROOT} ${DESTDIR}
-
- # Sistemas de ficheros extra y sus correspondientes puntos de montaje.
- # Opcional.
- DEV_VAR=/dev/vinum/var_a
- newfs ${DEV_VAR}
- tunefs -n enable ${DEV_VAR}
- mkdir -m 755 ${DESTDIR}/var
- mount -o noatime ${DEV_VAR} ${DESTDIR}/var
-
- DEV_USR=/dev/vinum/usr_a
- newfs ${DEV_USR}
- tunefs -n enable ${DEV_USR}
- mkdir -m 755 ${DESTDIR}/usr
- mount -o noatime ${DEV_USR} ${DESTDIR}/usr
-
- mkdir -m 755 -p ${DESTDIR}/usr/ports
- mount /dev/vinum/ports ${DESTDIR}/usr/ports
-
- # Aquí crearemos los demás directorios. Obligatorio.
- cd ${SRC}/etc; make distrib-dirs DESTDIR=${DESTDIR}
- # Personalmente me gusta enlazar tmp a var/tmp. Opcional.
- cd ${DESTDIR}; rmdir tmp; ln -s var/tmp
-}
-
-# ---------------------------------------------------------------------------- #
-# Segundo Paso: Poblamos el árbol de directorios /etc que está vacío aún y
-# ubicamos unos cuantos ficheros en /.
-# ---------------------------------------------------------------------------- #
-
-step_two () {
- # Añada o borre de ésta lista según su criterio. La mayoría son obligatorios.
- for f in \
- /.profile \
- /etc/group \
- /etc/hosts \
- /etc/inetd.conf \
- /etc/ipfw.conf \
- /etc/make.conf \
- /etc/master.passwd \
- /etc/nsswitch.conf \
- /etc/ntp.conf \
- /etc/printcap \
- /etc/profile \
- /etc/rc.conf \
- /etc/resolv.conf \
- /etc/start_if.xl0 \
- /etc/ttys \
- /etc/ppp/* \
- /etc/mail/aliases \
- /etc/mail/aliases.db \
- /etc/mail/hal9000.mc \
- /etc/mail/service.switch \
- /etc/ssh/*key* \
- /etc/ssh/*_config \
- /etc/X11/XF86Config-4 \
- /boot/splash.bmp \
- /boot/loader.conf \
- /boot/device.hints ; do
- cp -p ${f} ${DESTDIR}${f}
- done
- # Borre el temproot que haya creado mergemasger. Si lo ha creado.
- TEMPROOT=/var/tmp/temproot.fase1
- if test -d ${TEMPROOT}; then
- chflags -R 0 ${TEMPROOT}
- rm -rf ${TEMPROOT}
- fi
- mergemaster -i -m ${SRC}/etc -t ${TEMPROOT} -D ${DESTDIR}
- cap_mkdb ${DESTDIR}/etc/login.conf
- pwd_mkdb -d ${DESTDIR}/etc -p ${DESTDIR}/etc/master.passwd
-
- # Mergemaster no crea ficheros vacíos por ejemplo en /var/log. Lo haremos
- # aquí pero sin sobreescribir (y destruír) ficheros copiados en el bucle
- # de más arriba.
- cd ${TEMPROOT}
- find . -type f | sed 's,^\./,,' |
- while read f; do
- if test -r ${DESTDIR}/${f}; then
- echo "${DESTDIR}/${f} ya existe; no copiado"
- else
- echo "Creando ${DESTDIR}/${f} vacío"
- cp -p ${f} ${DESTDIR}/${f}
- fi
- done
- chflags -R 0 ${TEMPROOT}
- rm -rf ${TEMPROOT}
-}
-
-# ---------------------------------------------------------------------------- #
-# Tercer Paso: Instalando el mundo (install world).
-# ---------------------------------------------------------------------------- #
-
-step_three () {
- cd ${SRC}
- make installworld DESTDIR=${DESTDIR}
-}
-
-# ---------------------------------------------------------------------------- #
-# Cuarto Paso: Instalación del kernel y los módulos.
-# ---------------------------------------------------------------------------- #
-
-step_four () {
- cd ${SRC}
- # loader.conf y device.hints son necesarios para installkernel.
- # Si en el segundo paso no los ha copiado hágalo tal y como se muestra en
- # las dos líneas siguientes.
- # cp sys/boot/forth/loader.conf ${DESTDIR}/boot/defaults
- # cp sys/i386/conf/GENERIC.hints ${DESTDIR}/boot/device.hints
- make installkernel DESTDIR=${DESTDIR} KERNCONF=NOMBRE_DE_SU_KERNEL
-}
-
-# ---------------------------------------------------------------------------- #
-# Quinto Paso: Instalación y modificación de algunos ficheros clave.
-# ---------------------------------------------------------------------------- #
-
-step_five () {
- # Creamos /etc/fstab; obligatorio. Modifíquelo para que coincida con sus
- # dispositivos.
- cat <<EOF >${DESTDIR}/etc/fstab
-# Device Mountpoint FStype Options Dump Pass#
-/dev/da3s1b none swap sw 0 0
-/dev/da4s2b none swap sw 0 0
-/dev/da3s1a / ufs rw 1 1
-/dev/da1s2a /src ufs rw 0 2
-/dev/da2s2f /share ufs rw 0 2
-/dev/vinum/var_a /var ufs rw 0 2
-/dev/vinum/usr_a /usr ufs rw 0 2
-/dev/vinum/home /home ufs rw 0 2
-/dev/vinum/ncvs /home/ncvs ufs rw,noatime 0 2
-/dev/vinum/ports /usr/ports ufs rw,noatime 0 2
-#
-/dev/cd0 /dvd cd9660 ro,noauto 0 0
-/dev/cd1 /cdrom cd9660 ro,noauto 0 0
-proc /proc procfs rw 0 0
-EOF
-
- # Más directorios; opcional.
- mkdir -m 755 -p ${DESTDIR}/src; chown root:wheel ${DESTDIR}/src
- mkdir -m 755 -p ${DESTDIR}/share; chown root:wheel ${DESTDIR}/share
- mkdir -m 755 -p ${DESTDIR}/dvd; chown root:wheel ${DESTDIR}/dvd
- mkdir -m 755 -p ${DESTDIR}/home; chown root:wheel ${DESTDIR}/home
- mkdir -m 755 -p ${DESTDIR}/usr/ports; chown root:wheel ${DESTDIR}/usr/ports
- # Configuración de la zona horaria; no es obligatorio pero casi.
- cp ${DESTDIR}/usr/share/zoneinfo/Antarctica/South_Pole ${DESTDIR}/etc/localtime
- if test -r /etc/wall_cmos_clock; then
- cp -p /etc/wall_cmos_clock ${DESTDIR}/etc/wall_cmos_clock
- fi
-}
-
-# ---------------------------------------------------------------------------- #
-# Sexto Paso: Lo que considero importante tener cuando accedo a un sistema
-# nuevo por primera vez.
-# NOTA: No instale demasiados binarios en éste paso. Con el sistema viejo
-# en funcionamiento y los nuevos binarios y ficheros de cabecera instalados
-# es casi seguro tener problemas de bootstrap. Los "ports" deberían compilarse
-# después de haber arrancado el nuevo sistema.
-# ---------------------------------------------------------------------------- #
-
-step_six () {
- chroot ${DESTDIR} sh -c "cd /usr/ports/shells/zsh; make clean install clean"
- chroot ${DESTDIR} sh -c "cd /etc/mail; make install" # configuración
- # de sendmail
-
- # Si no enlazamos simbólicamente compat los ficheros de linux_base
- # irán a parar al sistema de ficheros raíz.
- cd ${DESTDIR}; mkdir -m 755 usr/compat
- chown root:wheel usr/compat; ln -s usr/compat
- mkdir -m 755 usr/compat/linux
- mkdir -m 755 boot/grub
-
- # Creación de los directorios "spool" para las impresoras que hay en
- # mi /etc/printcap
- cd ${DESTDIR}/var/spool/output/lpd; mkdir -p as od ev te lp da
- touch ${DESTDIR}/var/log/lpd-errs
-
- # Más ficheros que quiero heredar del sistema antíguo.
- for f in \
- /var/cron/tabs/root \
- /var/mail/* \
- /boot/grub/*; do
- cp -p ${f} ${DESTDIR}${f}
- done
-
- # Si no tiene /home en una partición compartida es un buen momento para
- # copiarlo al sitio correcto.
- # mkdir -p ${DESTDIR}/home
- # cd /home; tar cf - . | (cd ${DESTDIR}/home; tar xpvf -)
-
- # Como novedad en FreeBSD 5.x perl está en /usr/local/bin pero la
- # mayoría de "scripts" esperan encontrarlo en /usr/bin/perl y así lo
- # reflejan en su primera línea; use un enlace simbólico para que funcionen.
- cd ${DESTDIR}/usr/bin; ln -s ../local/bin/perl
- cd ${DESTDIR}/usr; rmdir src; ln -s ../src/current src
-}
-
-do_steps () {
- step_one
- step_two
- step_three
- step_four
- step_five
- step_six
-}
-
-do_steps 2>&1 | tee fase_1.log
-
-# EOF $RCSfile: fase_1.sh,v $ vim: tabstop=2:expandtab: