Linux From Scratch: Versión 4.0 | ||
---|---|---|
Anterior | Capítulo 6. Instalando los programas del sistema base | Siguiente |
Ahora que están todos los paquetes instalados, lo que tenemos que hacer para conseguir que algunos programas funcionen correctamente es crear sus ficheros de configuración.
Por defecto, vim se ejecuta en modo compatible con vi. Hay gente a la que le puede gustar esto, pero nosotros preferimos ejecutar vim en modo vim (de otra forma, no habríamos incluido vim en este libro, sino el vi original). Crea el fichero /root/.vimrc ejecutando lo siguiente:
cat > /root/.vimrc << "EOF" # Inicio de /root/.vimrc set nocompatible set bs=2 # Fin de /root/.vimrc EOF |
Necesitamos crear el fichero /etc/nsswitch.conf. Aunque glibc debería darnos valores por defecto cuando este fichero no se encuentra o está corrupto, estos valores por defecto no funcionan bien con la conexión de red, lo cual se tratará en un capítulo posterior. También tendremos que configurar nuestra zona horaria.
Crea un fichero nuevo /etc/nsswitch.conf ejecutando lo siguiente:
cat > /etc/nsswitch.conf << "EOF" # Inicio de /etc/nsswitch.conf passwd: files group: files shadow: files publickey: files hosts: files dns networks: files protocols: db files services: db files ethers: db files rpc: db files netgroup: db files # Fin de /etc/nsswitch.conf EOF |
Tienes que ejecutar el guión tzselect y contestar a las preguntas referentes a tu zona horaria. Cuando lo hayas hecho, el guión te dará la localización del fichero con la zona horaria requerida.
Crea el enlace simbólico /etc/localtime ejecutando:
ln -sf ../usr/share/zoneinfo/<salida de tzselect> /etc/localtime |
La salida de tzselect puede ser algo como EST5EDT o Canada/Eastern.
El enlace simbólico que tienes que crear con esa información será:
ln -sf ../usr/share/zoneinfo/EST5EDT /etc/localtime |
O:
ln -sf ../usr/share/zoneinfo/Canada/Eastern /etc/localtime |
Por defecto, el cargador dinámico (/lib/ld-linux.so.2) busca en /lib y /usr/lib las librerías dinámicas que necesitan los programas cuando los ejecutas. No obstante, si hay librerías en otros directorios que no sean /lib y /usr/lib, necesitas añadirlos en el fichero de configuración /etc/ld.so.conf para que el cargador dinámico pueda encontrarlas. Dos directorios típicos que contienen librerías adicionales son /usr/local/lib y /opt/lib, así que añadimos estos directorios a la ruta de búsqueda del cargador dinámico.
Crea un nuevo fichero /etc/ld.so.conf ejecutando lo siguiente:
cat > /etc/ld.so.conf << "EOF" # Inicio de /etc/ld.so.conf /usr/local/lib /opt/lib # Fin de /etc/ld.so.conf EOF |
Crea un nuevo fichero /etc/syslog.conf ejecutando lo siguiente:
cat > /etc/syslog.conf << "EOF" # Inicio de /etc/syslog.conf auth,authpriv.* -/var/log/auth.log *.*;auth,authpriv.none -/var/log/sys.log daemon.* -/var/log/daemon.log kern.* -/var/log/kern.log mail.* -/var/log/mail.log user.* -/var/log/user.log *.emerg * # Fin de /etc/syslog.conf EOF |
Este paquete contiene las utilidades para modificar las contraseñas de los usuarios, añadir o borrar nuevos usuarios y grupos, y similar. No vamos a explicar lo que significa 'password shadowing'. Puedes econtrar una completa explicación en el fichero doc/HOWTO que está en el árbol de fuentes de la Shadow Password Suite al desempaquetarla. Hay una cosa que debes recordar si decides usar soporte para contraseñas ocultas: aquellos programas que necesiten verificar contraseñas (por ejemplo xdm, demonios de ftp, demonios de pop3, etc) necesitarán ser 'compatibles con shadow', es decir, necesitan ser capaces de trabajar con 'shadow passwords'.
Para habilitar las contraseñas ocultas, ejecuta el siguiente comando:
/usr/sbin/pwconv |
Crea un nuevo fichero /etc/inittab ejecutando lo siguiente:
cat > /etc/inittab << "EOF" # Inicio de /etc/inittab id:3:initdefault: si::sysinit:/etc/rc.d/init.d/rc sysinit l0:0:wait:/etc/rc.d/init.d/rc 0 l1:S1:wait:/etc/rc.d/init.d/rc 1 l2:2:wait:/etc/rc.d/init.d/rc 2 l3:3:wait:/etc/rc.d/init.d/rc 3 l4:4:wait:/etc/rc.d/init.d/rc 4 l5:5:wait:/etc/rc.d/init.d/rc 5 l6:6:wait:/etc/rc.d/init.d/rc 6 ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now su:S016:once:/sbin/sulogin 1:2345:respawn:/sbin/agetty tty1 9600 2:2345:respawn:/sbin/agetty tty2 9600 3:2345:respawn:/sbin/agetty tty3 9600 4:2345:respawn:/sbin/agetty tty4 9600 5:2345:respawn:/sbin/agetty tty5 9600 6:2345:respawn:/sbin/agetty tty6 9600 # Fin de /etc/inittab EOF |
Nada es más molesto que usar Linux teniendo cargado un mapa de teclado incorrecto. Si tienes un teclado estándar de US (EEUU), te puedes saltar esta sección. El mapa de teclado US es el mapa por defecto si no lo cambias.
Para asignar un mapa de teclado por defecto, crea el enlace simbólico /usr/share/kbd/keymaps/defkeymap.map.gz ejecutando los siguientes comandos:
ln -s <ruta/al/mapa/del/teclado> /usr/share/kbd/keymaps/defkeymap.map.gz |
Reemplaza <ruta/al/mapa/del/teclado> por tu fichero de mapa de teclado. Por ejemplo, si tienes un teclado español, deberías ejecutar:
ln -s i386/qwerty/es.map.gz defkeymap.map.gz |
La segunda opción para configurar la disposición de tu teclado es compilar el mapa de teclado directamente en el núcleo. Esto asegurará que tu teclado siempre funcione como se espera, incluso cuando has arrancado en modo de rescate (pasando `init=/bin/sh' al núcleo) y los guiones de arranque que normalmente se encargan de cargar el mapa de teclado adecuado no se hayan ejecutado.
Ejecuta el siguiente comando para parchear el mapa de teclado correcto dentro de las fuentes del núcleo. Debes repetir este comando siempre que desenpaquetes un nuevo núcleo:
loadkeys -m /usr/share/kbd/keymaps/defkeymap.map.gz > \ /usr/src/linux/drivers/char/defkeymap.c |
Programas como login, shutdown, uptime y otros necesitan leer y escribir en /var/run/utmp, /var/log/btmp y /var/log/wtmp. Estos ficheros contienen información acerca de quién está conectado en ese momento. También contienen información acerca de cuándo fue arrancado y parado por última vez el ordenador y un registro de los intentos de conexión fallidos.
Crea estos ficheros con los permisos apropiados ejecutando los siguientes comandos:
touch /var/run/utmp /var/log/{btmp,lastlog,wtmp} && chmod 644 /var/run/utmp /var/log/{btmp,lastlog,wtmp} |