Administracion de sistema Donde estan los ficheros de configuracion de arranque del sistema

De la version 2.0.5R a la 2.2.1R, el fichero principal de configuracion es /etc/sysconfig. Todas las opciones son especificadas en este fichero y otros como y /etc/netstart.

Mira en el fichero /etc/sysconfig y cambia los valores para tu sistema. Este fichero esta comentado para ayudar en la configuracion

En versiones posteriores a la 2.2.1 y 3.0 el fichero /etc/sysconfig fue renombrado como . La sintaxis tambien fue retocada para ser mas descriptiva. El fichero /etc/netstart tambien fue renombrado como /etc/rc.network para que todos los ficheros de configuracion puedan ser copiados con el comando /usr/src/etc/rc* /etc.

/etc/rc.local existe como siempre y deberia ser usado para arrancar servicios locales adicionales como o programas propios.

El fichero /etc/rc.serial es para la inicializacion de puertos serie.

El fichero /etc/rc.i386 es para especificaciones propias de Intel, como la emulacion iBCS2 o la configuracion de la consola del sistema.

A partir de la version 2.1.0R, tambien puedes tener un directorio en el que instalar ficheros de arranque locales especificado en /etc/sysconfig (o /etc/rc.conf): # Location of local startup files. local_startup=/usr/local/etc/rc.local.d

Cada fichero acabado en Si quieres asegurarte de un cierto orden en la ejecucion sin tener que cambiar todos los nombres de los ficheros, puedes usar un esquema similar al siguiente con digitos al principio del nombre de cada fichero: 10news.sh 15httpd.sh 20ssh.sh

Puede ser visto como "malo" (o SysV :-)) pero nos provee de un esquema regular para programas anyadidos localmente sin tener que hacer ediciones complicadas del fichero /etc/rc.local. Muchos de los ports/packages asumen que /usr/local/etc/rc.d es un directorio de arranque local. Como anyado un usuario facilmente?

Usa el comando .

Hay otro package llamado <roberto@FreeBSD.ORG> sobre el. En estos momentos esta en desarrollo.

Para borrar a un usuario, usa el comando . Como puedo anyadir mi nuevo disco a FreeBSD?

La manera mas facil de hacer esto es desde el programa de instalacion. Puedes arrancar el programa de instalacion ejecutando /stand/sysinstall como root.

Alternativamente, si todavia tienes el floppy de instalacion, pueder arrancar desde el y usar el editor de etiquetas y particiones.

CUIDADO: Debes leer y entender perfectamente lo que estas haciendo!. Los comandos aqui descritos pueden BORRAR tu sistema. Procede con precaucion!. Recuerda, un BACKUP es tu amigo.

antes de poder ejecutar /. Esto significa que tendras que hacer tu mismo los calculos para las particiones. Mira si puedes obtener informacion del disco con disklabel -r <diskname> por ejemplo disklabel -r /dev/rwd0s2 asumiendo que tu nuevo disco es wd0, el primer disco IDE, y FreeBSD es el segundo slice (s2). Deberias ver algo como esto:- # /dev/rwd0s2: type: ESDI disk: wd0s2 label: flags: bytes/sector: 512 sectors/track: 63 tracks/cylinder: 64 sectors/cylinder: 4032 cylinders: 610 sectors/unit: 2459520 rpm: 3600 interleave: 1 trackskew: 0 cylinderskew: 0 headswitch: 0 # milliseconds track-to-track seek: 0 # milliseconds drivedata: 0 8 partitions: # size offset fstype [fsize bsize bps/cpg] c: 2459520 0 unused 0 0 # (Cyl. 0 - 609) e: 2459520 0 4.2BSD 0 0 0 # (Cyl. 0 - 609)

Aegurate que el tamanyo es correcto, en este caso, 2459520 sectores x 512 bytes/sector / 2**20 (1 Megabyte) = 1200 MB. El resto de datos (b/s, t/c, s/c, interleave, etc.) deberian funcionar con los que salen por defecto con , pero mira para discos antiguos. fsize es el del sistema de ficheros y bsize es el . 'c' es la particion que ocupa FreeBSD (o el disco completo en caso de una unica particion para FreeBSD), y debe quedar como esta. No deberia ser usada para un sistema de ficheros. La particion 'c' es magica en que es reconocida y usada por el kernel aunque no exista ninguna etiqueta en ella.

En el caso trivial de querer usar todo el sistema de ficheros para FreeBSD, la entrada para el campo "e" tiene que ser corregida poniendo fsize a 1023 y bsize a 8192 (8 fragmentos/bloque), los cuales son razonables. La entrada correcta para "e" seria: e: 2459520 0 4.2BSD 1024 8192

Ahora el caso mas complicado, donde queremos 2 particiones para 2 sistemas de ficheros. Siguiendo la , las particiones seran 8 partitions: # size offset fstype [fsize bsize bps/cpg] c: 2459520 0 unused 0 0 # (Cyl. 0 - 609) e: 614400 0 4.2BSD 1024 8192 f: 1843200 614400 4.2BSD 1024 8192

disklabel -e wd0s2''. Para mas informacion mira en .

Si tienes la version 2.1.5 o superior, y quieres dedicar enteramente el disco para FreeBSD sin compartirlo con otros sistemas operativos, se pueden reducir las operaciones a realizar de la siguiente manera: # dd if=/dev/zero of=/dev/rwd0 count=100 # disklabel -Brw wd0 auto # disklabel -e wd0

El primer comando asegura que no hay basura en el inicio del disco que pueda confundir al kernel. Lo siguiente a realizar es una generacion automatica de etiqueta usando los procesos por defecto ejecutados en el arranque del sistema. La edicion de la etiqueta continua de la manera descrita anteriormente.

Has acabado!. Ahora debes inicializar el sistema de ficheros con algo como: newfs -d0 /dev/rwd0s2e newfs -d0 /dev/rwd0s2f

Dependiendo del nombre del disco y la particion, quizas sea requerida la ejecucion del script para la creacion de los dispositivos.

Y montar tus nuevos discos/particiones (mira el comando ) mount /dev/wd0s2e /mnt/foo mount /dev/wd0s2f /mnt/bar

Deberias editar el fichero para montar automaticamente los discos/particiones al arrancar el sistema.

Unidad basica de almacenamiento para en tu sistema. Un bloque se compone de uno o mas fragmentos. Mira la referencia correspondiente en: Necesitaras dar mas informacion a si quieres usar un "disco verdadero". Necesitaras saber la geometria uniforme, cabezales reales, sectores y cilindros, como en los discos ESDI antiguos. Toda esta informacion deberia ser facilmente localizable en la cubierta del propio disco, manual, etc. La particion 'a', por convencion, esta reservada para particiones 'bootables' y la particion 'b' para swap. Las particiones regulares deben empezar en la 'd'. La particion 'e' corresponde a la primera particion no bootable y a usar como sistema de ficheros. El espacio requerido por la tabla de particion de BSD esta permitido en el sistema de ficheros. No empieces la particion swap en el cilindro 0. Tengo un nuevo disco removible, como lo uso?

Se trate de un disco removible como un ZIP o EA (o un floppy, si quieres usarlo de esta manera), o un nuevo disco duro, una vez instalado y reconocido por el sistema, y tengas tu cartridge/floppy/etc en su interior, las cosas son como para la mayoria de dispositivos.

Si es un disco ZIP o floppy, y esta formateado en DOS, puedes usar el comando: mount -t msdos /dev/fd0c /floppy

Si es un floppy, o este: mount -t msdos /dev/sd2s4 /zip

para un disco ZIP con la configuracion de fabrica.

Para otros discos, mira como configurados usando /stand/sysinstall.

El resto de ejemplos seran para un disco ZIP en sd2, el tercer disco SCSI.

A no ser que se trate de un floppy o disco removible, lo que planeas compartir con otros usuarios, es aconsejable convertir el formato de ficheros a BSD. Obtendras nombre de ficheros largos, como minimo doblaras la velocidad de acceso del disco, y mucha mas estabilidad. Antes, necesitas rehacer las particiones. Puedes usar el comando o la utilidad /stand/sysinstall. Si es un disco peque¤o que quieres dedicar enteramente a FreeBSD, solo tienes que eliminar la FAT y tabla de particiones, y usar el sistema de particiones de FreeBSD: dd if=/dev/zero of=/dev/rsd2 count=2 disklabel -Brw sd2 auto

Puedes usar el comando disklabel (mas informacion en ) o /stand/sysinstall para crear multiples particiones BSD.

Finalmente, crea un nuevo sistema de ficheros: newfs /dev/rsd2c

y montalo: mount /dev/sd2c /zip

Seria una buena idea anyadir una linea como esta en el fichero para que solo tengas que teclear "mount /zip" las siguientes veces. /dev/sd2c /zip ffs rw,noauto 0 0 Como monto una particion secundaria DOS?

Las particiones DOS secundarias se encuentran despues de TODAS las particiones primarias. Por ejemplo, si tienes una particion "E" como la segunda particion DOS en el segundo disco SCSI, necesitas crear los ficheros especiales para el dispositivo 5 en /dev, y despues montar /dev/sd1s5: # cd /dev # ./MAKEDEV sd1s5 # mount -t msdos /dev/sd1s5 /dos/e Puedo montar otros sistemas de ficheros bajo FreeBSD?

para mas informacion. Como puedo usar el "NT loader" para arrancar FreeBSD?

La idea general es que copies el primer sector de la particion root nativa de FreeBSD en un fichero en la particion DOS/NT. Asumiento que nombras a ese fichero como c:\bootsect.bsd puedes editar el fichero c:\boot.ini para conseguir algo como esto: [boot loader] timeout=30 default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS [operating systems] multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows NT" C:\BOOTSECT.BSD="FreeBSD" C:\="DOS"

Este proceso asume que DOS, NT, FreeBSD o cualquier otro sistema ha sido instalado en sus respectivas particiones en el mismo disco. En nuestro caso, DOS y NT estan en la primera particion y FreeBSD en la segunda. Instalamos FreeBSD para arrancarlo desde su particion nativa y no desde el disco MBR.

Monta un floppy formateado en DOS bajo la particion /mnt. dd if=/dev/rsd0a of=/mnt/bootsect.bsd bs=512 count=1

Rearranca en DOS o NT. Copia el fichero attrib -s -r c:\boot.ini

Edita y anyade las lineas apropiadas del boot.ini mostrado enteriormente de ejemplo, y vuelve a poner los atributos originales: attrib -r -s c:\boot.ini

Si FreeBSD esta arrancando desde el MBR, restauralo desde el comando Como arranco FreeBSD y Linux desde LILO?

Teoricamente deberias poder arrancar FreeBSD desde LILO tratandolo como un sistema operativo DOS, pero no hemos podido hacerlo. Si instalas LILO al inicio de tu particion de arranque Linux en vez de instalarla en el MBR, puedes arrancar LILO desde el boot manager de FreeBSD. Asi es como lo hacemos.

Si estas usando Windows 95 y Linux, esta es la manera recomendada de hacer que Linux arranque aunque tengas que hacer una reinstalacion de Windows (el cual no deja que haya otro sistema operativo en el Master Boot Record). Puede un disco "dedicado" provocar problemas?

Mientras este es el caso mas comun para gente proveniente del mundo de PC, para la gente proveniente del mundo Unix y quienes quieren instalar una maquina para funcionar con FreeBSD y solo FreeBSD, es mas habitual usar el sistema de reservar todo el espacio del disco para un solo sistema operativo. Si seleccionas "A)ll FreeBSD" en el editor de fdisk de la utilidad sysinstall, y respondes la siguiente pregunta con "No", usaras este ultimo sistema. Ten en cuenta que usando este sistema no te permitira la instalacion de ningun otro sistema operativo o selector de arranque (boot manager).

Entonces, por que se llama "peligroso"?. Un disco en este modo no contiene lo que las utilidades normales de un PC considerarian una tabla de particion de ficheros valida. Dependiendo del disenyo de estas aplicaciones, puede que danyen el sector de arranque una vez entren en contacto con el disco. Por lo menos una BIOS Award usada en por maquinas HP Netservers (pero no solo por ellos) es concocida por ignorar los disco duros que no contengan lo que la BIOS entiende por una tabla de ficheros valida.

Para volver un disco "peligrosamente dedicado" a formato estandard de PC, hay basicamente dos opciones. La primera es, escribes suficientes bytes NULL sobre el MBR para hacer que las siguientes instalaciones crean que estan en un disco sin usar. Puedes hacer esto asi: dd if=/dev/zero of=/dev/rsd0 count=15

Alternativamente, puedes hacer: fdisk /mbr

que instalara un nuevo master boot record. Como puedo anyadir mas espacio de swap?

La mejor manera es incrementar el tamanyo de tu particion de swap, o usar esta excusa para anyadir un otro disco nuevo (mira si lo haces).

Anyadir swap en discos separados hace las cosas mas rapidas que simplemente anyadir swap en el mismo disco. Como ejemplo, si estas compilando codigo fuente en un disco, y el swap esta en otro disco, es mucho mas rapido que si el swap y la compilacion se realizaran en el mismo disco. Esto es cierto especificamente para disco SCSI.

Disco IDE no son capaces de permitir el acceso a ambos discos en el mismo canal al mismo tiempo (FreeBSD no soporta el modo 4, ya que todas las I/O de discos IDE con "programadas").

Es realmente muy mala idea instalar el swap sobre NFS a no ser que trabajes en una red muy rapida con un muy buen servidor.

Aqui hay un ejemplo para un fichero de swap de 64Mb /usr/swap0, piensa que puedes usar el nombre que quieras).

Asegurate que el kernel esta compilado con la linea pseudo-device vn 1 #Vnode driver (turns a file into a device)

en tu fichero de configuracion. El kernel GENERIC la contiene. crea un vn-device cd /dev sh ./MAKEDEV vn0 crea un swapfile (/usr/swap0) dd if=/dev/zero of=/usr/swap0 bs=1024k count=64 activa el fichero de swap en /etc/rc.conf swapfile="/usr/swap0" # Set to name of swapfile if aux swapfile desired. rebota la maquina.

Para activar el fichero de swap inmediatamente teclea vnconfig -ce /dev/vn0c /usr/swap0 swap Tengo problemas para poner en marcha mi impresora.

Por favor, revisa la seccion de impresoras del manual. Cubre la mayoria de posibles problemas. Pasate por Mi teclado no coincide con los caracteres de pantalla.

El programa de control de teclado tiene una opcion para cargar el mapa de teclado. En el directorio /usr/share/syscons/keymaps hay diferentes ficheros de mapas de teclado. Selecciona el que corresponde a tu sistema y cargalo. kbdcontrol -l uk.iso

Tanto el directorio /usr/share/syscons/keymaps como la extension .

Esto puede ser configurado en /etc/sysconfig (o ). Mira los comentarios correspondientes en el propio fichero.

En la version 2.0.5R y posteriores, todo lo referente a fuentes, teclado, etc esta en /usr/share/examples/syscons.

Actualmente se soportan los siguientes mapas de teclado: Belgian ISO-8859-1 Brazilian 275 keyboard Codepage 850 Brazilian 275 keyboard ISO-8859-1 Danish Codepage 865 Danish ISO-8859-1 French ISO-8859-1 German Codepage 850 German ISO-8859-1 Italian ISO-8859-1 Japanese 106 Japanese 106x Latin American Norwegian ISO-8859-1 Polish ISO-8859-2 (programmer's) Russian Codepage 866 (alternative) Russian koi8-r (shift) Russian koi8-r Spanish ISO-8859-1 Swedish Codepage 850 Swedish ISO-8859-1 Swiss-German ISO-8859-1 United Kingdom Codepage 850 United Kingdom ISO-8859-1 United States of America ISO-8859-1 United States of America dvorak United States of America dvorakx Las cuotas de usuario no funcionan correctamente.

No actives las cuotas en '/', Pon el fichero de cuotas en el sistema de ficheros en el que se vayan a forzar las cuotas de usuario: FS QUOTA FILE /usr /usr/admin/quotas /home /home/admin/quotas ... Que es incorrecto en mi ccd?

El sintoma es: # ccdconfig -C ccdconfig: ioctl (CCDIOCSET): /dev/ccd0c: Inappropriate file type or format #

Esto actualmente ocurre cuando estas intentando concatenar las particiones c'. El driver ccd requiere que la particion sea del tipo FS_BSDFFS. Edita la etiqueta del disco (disklabel) que estas intentando concatenar y cambia el tipo de particion a '4.2BSD'. Por que no puedo editar el disklabel en mi ccd?

El sintoma es: # disklabel ccd0 (it prints something sensible here, so let's try to edit it) # disklabel -e ccd0 (edit, save, quit) disklabel: ioctl DIOCWDINFO: No disk label on disk; use "disklabel -r" to install initial label #

Esto es porque el disklabel retornado por el ccd es actualmente uno que no corresponde con el real. Puedes resolver este problema escribiendo explicitamente: # disklabel ccd0 > /tmp/disklabel.tmp # disklabel -Rr ccd0 /tmp/disklabel.tmp # disklabel -e ccd0 (this will work now) Soporta FreeBSD primitivas IPC System V?

Si, FreeBSD las soporta. Estas incluyen memoria compartida, mensajes y semaforos. Necesitas anyadir las siguientes lineas en la configuracion de tu kernel para activarlas. options SYSVSHM options "SHMMAXPGS=64" # 256Kb of sharable memory options SYSVSEM # enable for semaphores options SYSVMSG # enable for messaging

Recompila e instala.

Como uso sendmail para envio de mail via UUCP?

La configuracion de sendmail incluida en FreeBSD esta preparada para sistemas que conectan directamente con Internet. Los sistemas que quieran usar UUCP para el envio de mail deben utilizar otro fichero de configuracion.

Retocar /etc/sendmail.cf manualmente esta considerado algo para puristas. La version 8 de sendmail incluye un nuevo sistema de configuracion llamado , en el cual la configuracion se realiza en un nivel mas alto. Deberias usar los ficheros de configuracion situados en /usr/src/usr.sbin/sendmail/cf

Si no instalaste tu sistema con el codigo fuente completo, el paquete de configuracion de sendmail esta en una distribucion aparte. Asumiendo que tienes tu CD-ROM montado, haz: cd /usr/src tar -xvzf /cdrom/dists/src/ssmailcf.aa

No te preocupes, solo son unos cientos de kilobytes de tamanyo. El fichero README en el directorio cf puede servir como introduccion a la configuracion del m4.

Para envio y recepcion via UUCP, te aconsejamos usar la opcion mailertable. Se basa en una base de datos que sendmail puede usar como base para tomar las decisiones de enrutado del mail.

Primero tienes que crear tu fichero .mc. Estos ficheros se encuentran en el directorio /usr/src/usr.sbin/sendmail/cf/cf. Si miras, encontraras algunos ejemplos. Asumiendo que tu fichero se llama foo.com, todo lo que necesitas hacer para convertirlo en un fichero sendmail.cf valido es: cd /usr/src/usr.sbin/sendmail/cf/cf make foo.cf cp foo.cf /etc/sendmail.cf

Un fichero tipico .mc seria algo como: include(`../m4/cf.m4') VERSIONID(`Your version number') OSTYPE(bsd4.4) FEATURE(nodns) FEATURE(nocanonify) FEATURE(mailertable) define(`UUCP_RELAY', your.uucp.relay) define(`UUCP_MAX_SIZE', 200000) MAILER(local) MAILER(smtp) MAILER(uucp) Cw your.alias.host.name Cw youruucpnodename.UUCP

Las opciones nodns y nocanonify previenen del uso del DNS durante el trafico de correo. La clausula UUCP_RELAY se necesita por razones imperiosas, no preguntes :). Simplemente pon un nombre de maquina de Internet que sea capaz de gestionar pseudo-dominios .UUCP; mas sencillo, entraras el mail relay de tu ISP.

Una vez hayas hecho esto, necesitas el fichero llamado /etc/mailtertable. Un ejemplo tipico seria: # # makemap hash /etc/mailertable.db < /etc/mailertable # horus.interface-business.de uucp-dom:horus .interface-business.de uucp-dom:if-bus interface-business.de uucp-dom:if-bus .heep.sax.de smtp8:%1 horus.UUCP uucp-dom:horus if-bus.UUCP uucp-dom:if-bus . uucp-dom:sax

Como puedes ver, esto es parte de un fichero real. Las tres primeras lineas manejan casos especiales donde el correo dirigido a un dominio no debe ser enviado a traves de la ruta por defecto, si no a traves de un UUCP vecino para acortar el path de envio. La siguiente linea gestiona el mail del dominio local para que sea enviado via SMTP. Finalmente, los vecinos UUCP son anotados en la parte .UUCP pseudo-domains, para poder sobreescribir las reglas por defecto. La ultima linea es siempre un punto, que indica el mail gateway hacia el resto del mundo. Todos los nombres de nodos detras de uucp-dom: deben ser vecinos validos UUCP.

Como recordatorio de que este fichero debe ser convertido a una base de datos DBM antes de ser usada, la linea de comandos para realizar esta operacion esta puesta como un comentario al inicio del fichero. Siempre tienes que ejecutar este comando cada vez que realices algun cambio en tu mailtertable.

Si no tienes la seguridad de que una ruta de correo vaya a funcionar correctamente, recuerda la opcion -bt de sendmail. Esta opcion arranca el sendmail en modo test; simplemente entra 0, seguido por la direccion de mail sobre la que quieres testear la ruta. La ultima linea te indica el agente interno, el host de destino y la direccion (posiblemente traducido). Sal de este modo tecleando Control-D. j@uriah 191% sendmail -bt ADDRESS TEST MODE (ruleset 3 NOT automatically invoked) Enter

> 0 foo@interface-business.de rewrite: ruleset 0 input: foo @ interface-business . de ... rewrite: ruleset 0 returns: $# uucp-dom $@ if-bus $: foo \ < @ interface-business . de > > ^D j@uriah 192% Como configuro el correo para conexiones NO permanentes a Internet?

Si tienes una direccion IP fija en la conexion, no necesitaras ajustar nada de lo que ya viene por defecto. Configura tu host name como el nombre asignado a tu IP de Internet y sendmail hara el resto.

Si tienes direcciones IP asignadas dinamicamente y usas una conexion Para poder recoger el correo de tu buzon necesitaras instalar un agente de recogida de correo. /etc/ppp/ppp.linkup: MYADDR: !bg su user -c fetchmail

Asumimos que tienes una cuenta para poll myISP.com protocol pop3 fetchall pass MySecret;

No hace falta decir que este fichero no debe ser "leible" por nadie excepto Para enviar el correo con la cabecera El siguiente fichero VERSIONID(`bsd.home.mc version 1.0') OSTYPE(bsd4.4)dnl FEATURE(nouucp)dnl MAILER(local)dnl MAILER(smtp)dnl Cwlocalhost Cwbsd.home CwmyISP.com MASQUERADE_AS(`myISP.com')dnl FEATURE(allmasquerade)dnl FEATURE(masquerade_envelope)dnl FEATURE(nocanonify)dnl FEATURE(nodns)dnl define(SMART_HOST, `relay.myISP.com') DmmyISP.com define(`confDOMAIN_NAME',`myISP.com')dnl define(`confDELIVERY_MODE',`deferred')dnl

Mira en la seccion anterior para los detalles de como convertir este fichero