SlideShare una empresa de Scribd logo
1 de 19
Descargar para leer sin conexión
© Alex Marín Méndez – marinmendez@hotmail.com
Estándar de Jerarquía de Sistema de Archivos
Introducción
El estándar de jerarquía de archivos (FHS o Filesystem Hierarchy Standard) define los
principales directorios y sus contenidos en GNU/Linux y otros sistemas operativos similares a
Unix.
En agosto de 1993 inició el proceso para desarrollar un estándar de sistema de archivos
jerárquico, como un esfuerzo para reorganizar las estructuras de archivos y directorios de
GNU/Linux. El 14 de Febrero de 1994 se publicó el FSSTND (Filesystem Standard), un
estándar de jerarquía de archivos específico para GNU/Linux. Revisiones de éste se publicaron
el 9 de Octubre de 1994 y el 28 de Marzo de 1995.
A principios de 1996, con la ayuda de miembros de la comunidad de desarrolladores de BSD,
se fijó como objetivo el desarrollar una versión de FSSTND más detallada y dirigida no solo
hacia Linux sino también hacia otros sistemas operativos similares a Unix. Como uno de los
resultados el estándar cambió de nombre a FHS o Filesystem Hierarchy Standard.
El FHS es mantenido por Free Standards Group, una organización sin fines de lucro constituida
por compañías que manufacturan sustento físico (Hardware) y equipamiento lógico (Software)
como Hewlett Packard, Dell, IBM y Red Hat. La mayoría de las distribuciones de Linux,
inclusive las que forman parte de Free Software Standards, utilizan este estándar sin aplicarlo
de manera estricta.
La versión 2.3 del FHS, que es la utilizada por CentOS, Fedora™, Red Hat™ Enterprise Linux,
openSUSE™ y SUSE™ Linux Enterprise, fue anunciada el 29 de enero de 2004.
Estructura de directorios
Todos los archivos y directorios aparecen debajo del directorio raíz /, aún si están
almacenados en dispositivos físicamente diferentes.
© Alex Marín Méndez – marinmendez@hotmail.com
© Alex Marín Méndez – marinmendez@hotmail.com
© Alex Marín Méndez – marinmendez@hotmail.com
Más detalles acerca del FHS en http://www.pathname.com/fhs/
Particiones recomendadas para instalar CentOS, Fedora™, Red Hat™ Enterprise
Linux, openSUSE™ y SUSE™ Linux Enterprise
Si las condiciones limitan el número de particiones a utilizar, como mínimo se requieren dos
particiones (diseño predeterminado de openSUSE™ y SUSE™ Linux Enterprise):
© Alex Marín Méndez – marinmendez@hotmail.com
Para uso general, se recomienda utilizar un diseño de tres particiones (predeterminado del
instalador de CentOS, Fedora™ yRed Hat™ Enterprise Linux):
Lo siguientes directorios jamás deberán estar fuera de la partición que corresponda a /, es
decir, jamás se deben asignar como particiones separadas:
 /etc
 /bin
 /dev
 /lib y /lib64
 /media
 /mnt
 /proc
 /root
© Alex Marín Méndez – marinmendez@hotmail.com
 /sbin
 /sys
Para futuras versiones de CentOS, Fedora™, Red Hat™ Enterprise
Linux, openSUSE™ y SUSE™ Linux Enterprise, el directorio /var también deberá estar
dentro de la misma partición que corresponda a /, pues el proceso de arranque, que será
gestionado por Systemd, así lo requerirá.
Otras particiones que se recomienda asignar, son:
© Alex Marín Méndez – marinmendez@hotmail.com
© Alex Marín Méndez – marinmendez@hotmail.com
Gestión de espacio de memoria de intercambio (swap) en GNU/Linux
Introducción
Hace muchos años, GNU/Linux, en los tiempos del núcleo versión 2.0, se encontraba limitado
a utilizar una sola partición de memoria de intercambio de un máximo de 128 MB, siendo esto
una de los principales argumentos utilizados por sus detractores. Por fortuna las cosas han
cambiado y hoy en día ya no existe dicho límite y es posible además utilizar cuanta memoria de
intercambio sea requerida para satisfacer las necesidades de cualquier sistema.
¿Qué es y cómo funciona el espacio de intercambio?
El espacio de memoria de intercambio o Swap, es lo que se conoce como memoria virtual. La
diferencia entre la memoria real y la virtual es que ésta última utiliza espacio en el disco duro
en lugar de un módulo de memoria. Cuando la memoria real se agota, el sistema copia parte
del contenido de esta directamente en este espacio de memoria de intercambio a fin de poder
realizar otras tareas.
Utilizar memoria virtual tiene como ventaja el proporcionar la memoria adicional necesaria
cuando la memoria real se ha agotado y se tiene que realizar un proceso. El inconveniente
radica en que, como consecuencia de utilizar espacio en el disco duro, la utilización de esta es
mucho muy lenta. Uno puede percatarse de esto cuando el disco duro empieza a trabajar
repentinamente hasta por varios minutos después de abrir varias aplicaciones.
¿Cuánto espacio para memoria de intercambio se debe asignar al sistema?
Menos de 1 GB RAM Doble de la cantidad total de memoria RAM
Más de 1 GB RAM Misma cantidad del total de memoria RAM, más 2 GB
Circunstancias en las que se requiere aumentar la cantidad de memoria de
intercambio
Contar con mayor espacio para utilizar memoria virtual puede ser práctico en los siguientes
casos:
 Sistemas en donde adquirir memoria adicional es imposible, y se está consciente que
la memoria de intercambio es muchísimo más lenta que la memoria RAM.
 En equipos con trabajo intensivo que consume mucha memoria (diseño gráfico, por
ejemplo).
 Servidores de alto desempeño en donde se desea contar con un amplio margen de
espacio de intercambio para satisfacer las demandas de servicios.
 Sistemas que actualizaron desde una versión de núcleo 2.2, a una versión de núcleo
2.4 o 2.6.
 Sistemas donde se aumentó la cantidad de memoria RAM y se encuentran con la
problemática de cubrir la cuota mínima de espacio de memoria de intercambio.
Procedimientos
Todos los procedimientos listados a continuación requieren hacerse como el usuario root o
bien utilizando el comando sudo.
© Alex Marín Méndez – marinmendez@hotmail.com
Cambiar el tamaño de la partición
Cambiar el tamaño de las particiones del disco duro y cambiar las dimensiones de una partición
de memoria de intercambio adicional es el método más efectivo. Sin embargo, esto representa
un riesgo, debido que podría ocurrir un error durante los procesos de repartición que podría
desencadenar en pérdida de datos en un disco duro. Si se utiliza este método, es importante
disponer de un respaldo de todos los datos importantes antes de comenzar el proceso.
Crear un archivo para memoria de intercambio
Otro método más sencillo y sin riesgo alguno, consiste en utilizar un archivo de intercambio de
forma similar a como se hace en otros sistemas operativos.
Ante todo, la mejor solución siempre será adquirir más RAM.
Procedimientos.
Activar una partición de intercambio adicional.
Si se cambió la tabla de particiones del disco duro y se ha creado una nueva partición de
memoria de intercambio, se le da formato de la siguiente forma con el mandato mkswap,
donde la opción -c indica se verifiquen sectores del disco duro buscando bloques dañados a fin
de marcar estos y evitar utilizarlos:
mkswap -c [dispositivo]
En el siguiente ejemplo se dará formato como partición de memoria de intercambio a la
partición /dev/sda8, de aproximadamente 1 GB, verificando sectores en busca de bloques
dañados:
mkswap -c /dev/sda8
Lo anterior puede devolver una salida similar a la siguiente:
Setting up swapspace version 1, size=1048576 bytes
no label, UUID=d2fea5ab-c677-8047-789a-e54ae19c506b
Para activar la partición y que sea utilizada inmediatamente por el sistema operativo, se ejecuta
el mandato swapon de la siguiente forma:
swapon [dispositivo]
En el siguiente ejemplo se activa como partición de memoria de intercambio a la
partición /dev/sda8:
swapon /dev/sda8
Para corroborar que la nueva partición de memoria de intercambio está siendo utilizada por el
sistema operativo, se ejecuta el el mandato free, que puede devolver una salida similar a la
siguiente:
total used free shared buffers cached
Mem: 321364 312576 8788 0 940 63428
-/+ buffers/cache: 248208 73156
© Alex Marín Méndez – marinmendez@hotmail.com
Swap: 1426416 0 1426416
Para que esta partición se utilice como memoria de intercambio automáticamente en el
siguiente arranque del sistema, se edita el archivo /etc/fstab:
vim /etc/fstab
La línea que se deba agregar, lleva el siguiente formato:
[partición] swap swap defaults 0 0
De tal modo, en el siguiente ejemplo se definirá como partición de memoria de intercambio a la
partición /dev/sda8:
/dev/sda8 swap swap defaults 0 0
Utilizar un archivo como memoria de intercambio.
Este método no requiere hacer cambios en la tabla de particiones del disco duro. Es idóneo
para usuarios poco experimentados, para quienes desean evitar tomar riesgos al cambiar la
tabla de particiones el disco duro o bien para quienes requieren más de memoria de
intercambio ocasional o de manera circunstancial.
Considerando que el archivo de memoria de intercambio puede ser colocado en cualquier
directorio del disco duro, se ejecuta el mandato dd, especificando que se escribirán ceros
(if=/dev/zero) para crear el archivo /swap (of=/swap), en bloques de 1024 bytes (bs=1024)
hasta completar una cantidad en bytes determinada (count=[cantidad multiplicada por el
valor debs]). En el siguiente ejemplo se realiza lo anterior hasta completar 524288000
bytes (1024 por ), que equivalen a 512 MB:
dd if=/dev/zero of=/swap bs=1024 count=512000
Para dar formato de memoria de intercambio al archivo creado, se ejecuta el
mandato mkswap, del siguiente modo:
mkswap /swap
Lo anterior puede devolver una salida similar a la siguiente:
Setting up swapspace version 1, size = 511996 KiB
no label, UUID=fed2aba5-77c6-4780-9a78-4ae5e19c506b
Para activar la partición y que sea utilizada inmediatamente por el sistema operativo, se ejecuta
el mandato swapon. En el siguiente ejemplo se activa como partición de memoria de
intercambio a el archivo /swap:
swapon /swap
Para corroborar que nuevo archivo de memoria de intercambio está siendo utilizada por el
sistema operativo, se ejecuta el el mandato free, que puede devolver una salida similar a la
siguiente:
total used free shared
buffers cached
Mem: 321364 312576 8788 0
940 63428
© Alex Marín Méndez – marinmendez@hotmail.com
-/+ buffers/cache: 248208 73156
Swap: 3145724 0 3145724
Para que este archivo se utilice como memoria de intercambio automáticamente en el siguiente
arranque del sistema, se edita el /etc/fstab:
Y se agrega la línea correspondiente, del siguiente modo, donde en lugar del dispositivo, se
pone la ruta del archivo de memoria de intercambio creado:
vim /etc/fstab
/swap swap swap defaults 0 0
Optimizando el sistema, cambiando el valor de /proc/sys/vm/swappiness
El núcleo de GNU/Linux permite cambiar con qué frecuencia las aplicaciones y programas son
movidas de la memoria física hacia la memoria de intercambio. El valor predeterminado es 60,
como puede observarse al mirar el contenido de /proc/sys/vm/swappiness de la siguiente
forma:
cat /proc/sys/vm/swappiness
Pueden establecerse valores entre 0 y 100, donde el valor más bajo establece que se utilice
menos la memoria de intercambio, lo cual significa que se reclamará en su lugar el caché de la
memoria. El valor predeterminado de 60, fue establecido teniendo en mente a quienes
desarrollan el núcleo de Linux, con la finalidad de permitir realizar pruebas y diagnósticos.
Para la mayoría de los casos, conviene cambiar este valor por uno más bajo a fin de que el
sistema utilice menos la memoria de intercambio y utilice más la memoria cache. Ésta es una
clase de memoria RAM estática de acceso aleatorio (SRAM oStatic Random Access Memory).
Se sitúa entre la Unidad Central de Procesamiento (CPU) y la memoria RAM y se presenta
de forma temporal y automática para el usuario proporcionado acceso rápido a los datos de
uso más frecuente.
Un valor apropiado y que funcionará para la mayoría de los sistemas en producción es 10. En
el siguiente ejemplo se aplica el valor 10 para el archivo /proc/sys/vm/swappiness.
echo 10 > /proc/sys/vm/swappiness
Para lo anterior, también se puede ejecutar el mandato sysctl de la siguiente forma:
sysctl -w vm.swappiness=10
Lo anterior devuelve una salida similar a la siguiente, confirmando que se ha aplicado el
cambio:
vm.swappiness = 10
Este cambio en las variables del sistema de forma aplica inmediata hasta el siguiente reinicio
del sistema. Para hacer que el cambio sea permanente, se edita el archivo /etc/sysctl.conf.
vim /etc/sysctl.conf
Y se añade la siguiente línea:
vm.swappiness = 10
© Alex Marín Méndez – marinmendez@hotmail.com
Los paquetes y su gestión
Los paquetes son la agrupación instalable de los diferentes archivos necesarios para que un
programa funcione. Se pueden parecer a los programas que se descargan de internet para
windows, es decir, un archivo ejecutable que contiene un programa. La diferencia es que en
GNULinux los paquetes no son ejecutables, sino que son gestionados por terceras
aplicaciones. Además, los paquetes de Linux suelen ser muchísimo más compactos y
reducidos ya que no traen consigo las librerías compartidas (dependencias) y, llegado el caso
de necesitarse, serán instaladas o se nos informará de la necesidad de hacerlo, según el
gestor de paquetes que estemos utilizando.
Las aplicaciones Linux se suministran normalmente en tres formatos o tipos de paquetes:
 RPM: se utilizan en distribuciones basadas en Red Hat, Fedora, Mandriva..., pueden
tener tanto binarios como código fuente.
 DEB: distribuciones basadas en Debian (Linex, Guadalinex...). Pueden contener tanto
binarios como código fuente.
 Tar.gz: código fuente empaquetado y comprimido para ser instalado directamente.
La mayor parte de las aplicaciones disponen de versiones DEB, y RPM. y, por supuesto, todas
se encontrarán también empaquetadas en tar.gz. Se pueden convertir paquetes y pasarlos de
rpm a deb y viceversa, si se diera el caso que no existieran paquetes en alguno de los
formatos,con el programa ALIEN, pero éste no siempre podrá garantizar el correcto
funcionamiento de un paquete convertido a otro, en general, se garantizará mejor la instalación
de un paquete si éste fue creado directamente para su tipo correspondiente.
Paquetes RPM:
Es un sistema de empaquetamiento que se está convirtiendo en un estándar de hecho en el
mundo Linux por las ventajas que supone sobre otros modelos, pero bajo mi punto de vista
todavía no alcanza a las posibilidades de la paquetería DEB, no obstante, al ser creado por
RedHat, y dado que ésta es una de las distribuciones más utilizadas en el mundo, hace que su
sistema de paquetes lo sea también.
RPM proporciona al usuario una serie de facilidades que hacen el mantenimiento del sistema
más sencillo de gestionar ya que mantiene una base de datos de los paquetes instalados y de
sus archivos, lo que permite realizar consultas y verificaciones del sistema. Asimismo, Otra
ventaja es que al actualizar software, los archivos de configuración se respetan de manera que
no sea necesario volver a realizar los ajustes específicos que ya tuviera definidos, o si no fuera
posible, realiza una copia de seguridad de los mismos.
Trabajar con RPM
RPM tiene cinco modos de trabajo: instalación, actualización, consulta, desinstalación y
verificación.
Instalación
Supongamos que tenemos al lector de pantallas yasr empaquetado en RPM:
yasr-0.7.6.i386.rpm
© Alex Marín Méndez – marinmendez@hotmail.com
Normalmente se nombran utilizando el nombre del paquete (yasr), versión (0.7), desarrollo (6),
y arquitectura (i386). Asegúrate de elegir la arquitectura adecuada para tu sistema!.
Para instalar un paquete: rpm -ivh yasr-0.7.6.i386.rpm
El parámetro i es el utilizado para la instalación. Los otros dos son opcionales, pero útiles. El
modo verbose, con v aporta información extra y la h (hash) imprime esas marcas de progreso
(#) que nos dicen que algo está ocurriendo, podemos hacer una prueba de lo que ocurrirá, sin
llegar a instalar, usando la opción: -test.
La instalación de paquetes resulta fácil, pero pueden ocurrir percances:
-Si intentas instalar un paquete que ya está instalado, toma como ejemplo el paquete yasr que
hemos instalado más arriba, el sistema nos dará un mensaje similar a este:
yasr package yasr-0.7.6 is already installed
error: yasr-0.7.6.i386.rpm cannot be installed
Para forzar la instalación usaremos: -replacepkgs
Si intentas instalar un paquete que contiene un archivo que ha sido ya instalado por algún otro
paquete el sistema te dará un error similar al siguiente:
yasr /usr/bin/yasr conflicts with file from mim-0.7.6
error: yasr-0.7.6.i386.rpm cannot be installed
Para hacer que rpm ignore el error, usa -replacefiles
Si intentas instalar un paquete para el cual existe una dependencia no satisfecha:
Los paquetes rpm pueden "depender" de otros paquetes, lo cual significa que requieren que
otros paquetes estén instalados en el sistema para que funcionen. En este caso el error será:
failed dependencies: yasr is needed by yyyy-x.x.x
donde yyy es el nombre del paquete dependiente y x.x.x es el número de versión de ese
paquete. La mejor forma de arreglar este error es instalar los paquetes requeridos. Se puede
forzar la instalación usando -nodeps, pero si no se satisface una dependencia es casi seguro
que el programa no va a funcionar.
Actualización:
Actualizar un paquete es como instalar un paquete con la salvedad de que rpm desinstala
automáticamente cualquier versión antigua del mismo.
rpm -Uvh yasr-2.0-1.i386.rpm
En la actualización se mantienen los ficheros de configuración si ello fuera posible. Si los
cambios fueran tan importantes para no permitirlo, rpm guarda los ficheros de configuración.
Consulta de paquetes:
Consultar la base de datos de paquetes instalados tampoco es complicado: lo conseguimos
con la opción rpm -q. La forma más sencilla de usarlo es:
© Alex Marín Méndez – marinmendez@hotmail.com
rpm -q yasr-0.7.6
Combinando -q con otros parámetros, extraeremos más información. Para consultar todos los
paquetes instalados utiliza -a
rpm -qa
Esto mostrará en pantalla una lista con los nombres de los paquetes. Para consultar el paquete
al que pertenece un fichero concreto: -f
rpm -qf /bin/ls fileutils-4.0-21
Con la opción -ql podemos ver un listado de los ficheros, con -qd vemos un listado de los
ficheros con la documentación y con la opción -qc los ficheros de configuración del paquete.
Desinstalación de paquetes:
Desinstalar un paquete es tan sencillo como instalarlo, rpm garantiza la limpieza del
procedimiento y que se desinstalarán todos los ficheros, no importa donde estén instalados:
rpm -e yasr
En la desinstalación se usa el nombre yasr y no el nombre completo del paquete.
Un error habitual es el de «romper» las dependencias al desinstalar un paquete si algún otro
paquete instalado depende del que estás intentando borrar. Para hacer que rpm no realice la
comprobación de dependencias y desinstale el paquete de todas maneras: -nodeps.
Verificación:
Verificar un paquete es comprobar la integridad del mismo, osea si tenemos en el sistema
actualmente lo mismo que se instaló en su día y si está como se supone que debería estar.
Entre otras cosas, se compara el tamaño, chequeo MD5, permisos, tipo, usuario y grupo de
cada archivo.
rpm -V yasr
Si el paquete está correcto, la salida es: nada. No hay cambios, o sea que no hay nada que
mostrar.
En el caso de encontrar diferencias muestra en pantalla una palabra de ocho caracteres, uno
por cada prueba que realiza. Un punto equivale a que la comparación es correcta. Una letra
indica un cambio en esa comparación concreta. Los chequeos que hace son:
 Tamaño del archivo: S
 Enlace simbólico: L
 Fecha del archivo: T
 Dispositivo distinto: D
 Usuario distinto: U
 Grupo distinto: G
 Modo (permisos) distinto: M
 MD5 modificado: 5
Para localizar ficheros que afectan a la gestión de las bases de datos de rpm tendremos que
mirar en /var/lib/rpm y en /usr/lib/rpm
Listado de /var/lib/rpm:
© Alex Marín Méndez – marinmendez@hotmail.com
conflictsindex.rpm groupindex.rpm packages.rpm
requiredby.rpm fileindex.rpm nameindex.rpm
providesindex.rpm triggerindex.rpm
packages.rpm es el que contiene la base de datos de los programas que tenemos instalados
en el sistema. La integridad de este fichero es importante para el correcto funcionamiento de
rpm.
Del contenido de /usr/lib/rpm, cabe destacar dos ficheros de configuración, rpmopt y rpmrc. La
configuración actual se puede ver ejecutando:
rpm –showrc
PAQUETES DEB:
En un paquete de este tipo, normalmente, tendremos un conjunto de aplicaciones que se
instalarán en la ubicación que esté preestablecida cuando se haya creado el paquete.
Por tanto, podremos sobreentender que un paquete es un fichero que a su vez contiene
ficheros y directorios comprimidos que se instalarán en el sistema cuando este paquete sea
invocado con las diferentes aplicaciones que tengamos para ello.
Los paquetes DEB se pueden reconocer fácilmente por utilizar como parte de su nombre "la
extensión" .DEB. Suelen formarse por un nombre que alude al paquete seguido de los números
de versión del paquete y puede contener también un indicativo de la plataforma para la que ha
sido creado y compilado. Un ejemplo podría ser algo parecido a lo siguiente:
yasr_0.6.7_i386.deb. Esto indicaría que el paquete es yasr, que su versión es la 0.6.7 y
que ha sido compilado para la plataforma intel 386. Generalmente el que esté compilado para
386 no indica que no vaya a funcionar en un 486 o en un 586, aunque podría no funcionar
adecuadamente si fuera al revés.
Utilidades para gestionar paquetes DEB:
Existen varias aplicaciones para su gestión desde la línea de comandos y desde el entorno
gráfico. Algunas de ellas son las siguientes:
Apt-get:
Es posiblemente la herramienta de gestión de paquetes más potente y fácil de manejar que
existe. Nos permite desinstalar y manejar todo lo referente a estos paquetes desde la línea de
comandos. La mejor de las capacidades de este programa es hacer instalaciones desde
internet bajando cada uno de los paquetes necesarios de ordenadores remotos especialmente
organizados para ello. A estos lugares en internet de los cuales se descargan los paquetes se
les llama repositorios. Casi la totalidad del material que se encuentra en estos repositorios
suele ser gratuito. Si un paquete necesita algún otro que sea requerido para su funcionamiento,
este programa, a diferencia de otros, busca e instala también esos paquetes. Cuando un
programa necesita de otros para funcionar correctamente, se dice que hay dependencias, por
ello, estamos haciendo con este programa de instalación de paquetes que gestione las
dependencias por nosotros, lo que nos evitará muchos dolores de cabeza por evitarnos la
búsqueda de dependencias a mano a lo largo de los miles de archivos que nos puede ofrecer
un repositorio o una colección de CDs. Asimismo, también la misma herramienta, en ocasiones,
© Alex Marín Méndez – marinmendez@hotmail.com
nos podrá ofrecer un listado de paquetes no dependientes pero sí recomendados que
podremos instalar o no a nuestro criterio.
Cada distribución que podamos estar utilizando tiene un número específico de repositorios a
los que apunta y de los que descargará paquetes o actualizaciones, pero esto no debe ser una
limitación, ya que podremos añadir otros diferentes que nos puedan agregar funcionalidades o
programas que en los repositorios originales no había. En el archivo etc/apt/sources.list
podemos consultar o modificar estos repositorios de paquetes.
Opciones principales de apt-get:
apt-get update - actualiza la lista de los paquetes disponibles en los repositorios. Modifica la
información en el fichero sources.list. Es recomendable hacerlo de vez en cuando para
asegurarnos de que a la hora de instalar o actualizar un paquete determinado o la distribución
en general dispongamos de las versiones más actualizadas.
apt-get upgrade - Comprueba las versiones de los paquetes instalados y, si existen versiones
posteriores, realiza una actualización.
apt-get dist-upgrade: Lo mismo que la anterior pero actualiza, no sólo los paquetes, sino
también, la propia distribución de linux.
apt-get install NombreDelPaquete: ejemplo apt-get yasr. No hace falta dar todo el nombre
completo, se puede introducir sin extensión ni número de versión.
apt-get remove NombreDelPaquete: desinstala el paquete indicado (no así con las posibles
dependencias, ya que éstas pueden ser necesarias para que otras aplicaciones puedan seguir
funcionando).
Otras opciones pueden ser:
source - Descarga archivos fuente
build-dep - Configura las dependencias de construcción para paquetes fuente
dselect-upgrade - Sigue las selecciones de dselect
clean - Elimina los archivos descargados
autoclean - Elimina los archivos descargados antiguos
check - Verifica que no haya dependencias incumplidas
Modificadores:
-h texto de ayuda.
-q Salida registrable - sin indicador de progreso
-qq Sin salida, excepto si hay errores
-d Sólo descarga - NO instala o desempaqueta los archivos
-s No actúa. Realiza una simulación
-y Asume Sí para todas las consultas
-f Intenta continuar si la comprobación de integridad falla
© Alex Marín Méndez – marinmendez@hotmail.com
-m Intenta continuar si los archivos no son localizables
-u Muestra también una lista de paquetes actualizados
-b Construye el paquete fuente después de obtenerlo
-V Muestra números de versión detallados
Dpkg:
Se trata de otra aplicación que gestiona paquetes DEB y proporciona información sobre los
paquetes instalados. A diferencia del apt-get, no instala automáticamente las dependencias
(otros paquetes que deben instalarse previamente) sino que se limita a indicarlas durante el
proceso de instalación. Por eso es un programa menos claro y más difícil de utilizar, pero en
ocasiones podrá resultarnos de más utilidad.
Algunas opciones:
dpkg -l
Comprueba los paquetes instalados en la máquina y ofrece un listado completo.
Si queremos información relacionada con un solo paquete, se puede utilizar el pipe GREEP
con el comando. Ejemplo: dpkg |grep. Más adelante veremos los pipes o tuberías, pero ahora
lo dejaremos así por no ser relevante.
dpkg -L NombrePaquete.
Informa sobre el contenido (los ficheros) que forman un paquete.
Ejemplo.: dpkg -L tree nos informará sobre los ficheros del paquete tree
/.
/usr
/usr/bin (el ejecutable)
/usr/bin/tree
/usr/share ()
/usr/share/man (información manuales)
/usr/share/man/man1
/usr/share/man/man1/tree.1.gz
/usr/share/doc
/usr/share/doc/tree
/usr/share/doc/tree/README
/usr/share/doc/tree/copyright
/usr/share/doc/tree/changelog.gz
© Alex Marín Méndez – marinmendez@hotmail.com
/usr/share/doc/tree/changelog.Debian.gz
dpkg -i NombrePaqueteCompleto
Para instalar paquetes que tenemos localmente y no necesitamos descargar.
dpkg -r NombrePaqueteCompleto
Desinstalación
dpkg -s fichero
Informa de los paquetes que contienen ese fichero (a que paquetes pertenece).
La instalación y desinstalación se pueden hacer indistintamente desde dpkg y apt-get ya que
gestionan el mismo tipo de ficheros, pero en la mayor parte de las ocasiones utilizaremos apt-
get, dejando dpkg para desinstalar paquetes problemáticos o para instalar paquetes sueltos
que hemos bajado de internet sin pasar por los repositorios.
FICHEROS TAR Y GZ
El formato tar de ficheros, frecuente en Linux, es una agrupación de éstos (como los zip de
Windows pero en este caso no están comprimidos). El empaquetador TAR se utiliza para hacer
copias de seguridad de varios archivos o de directorios enteros: el contenido quedará agrupado
en un sólo fichero cuyo archivo resultante tendrá, habitualmente, la extensión ".tar". Este
programa se utilizó, en un principio, para generar empaquetamientos dedicados a crear copias
de respaldo en unidades de cinta externa.
Agrupar y comprimir
El TAR se utiliza frecuentemente en combinación con el GZIP (herramienta de compresión) y
así los obtenemos agrupados y comprimidos. Se pueden hacer los dos procesos por separado
(agrupar con tar y comprimir después con gzip) pero también se pueden hacer
simultáneamente utilizando el carácter "z" con el comando tar. La opción z se utiliza para la
compresión y descompresión de archivos.
Ejemplo: tar cvfz fichero
V equivale al modo verboso o prolijo (aparece toda la información del proceso en pantalla); la z
es para comprimir.
A los ficheros comprimidos y agrupados se les pone la extensión .tar.gz (gz indica que está
comprimido), también, en algunas ocasiones podremos ver la extensión tgz, pero es más
común la otra.
Ejemplo: tar cvfz fichero.tar.gz /root
hará una copia del directorio root, comprimida y agrupada, en el fichero.tar.gz, dentro del
directorio en el que estamos.
Se pueden hacer a la vez varios directorios separándolos por espacios: tar cvfz directorio1
directorio2 directorio3.
© Alex Marín Méndez – marinmendez@hotmail.com
Configurando valores por defecto para el alta de cuentas
Procedimientos.
Como root, edite /etc/default/useradd.
vim /etc/default/useradd
Encontrará el siguiente contenido:
# useradd defaults file
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
Puede cambiar lo valores que considere convenientes, como por ejemplo el intérprete de
mandatos a utilizar para las nuevas cuentas que sean creadas en adelante. De modo
predeterminado el sistema asigna /bin/bash (BASH o Bourne Again Shell) como intérprete de
mandatos. Si el sistema se utilizará como servidor, lo más conveniente es que se asigne de
modo predeterminado /sbin/nologin como intérprete de mandatos predeterminado, pues éste
muestra brevemente un mensaje respecto a que la cuenta está inhabilitada y devuelve
inmediatamente a la pantalla de autenticación. Se utiliza regularmente como intérprete de
mandatos de reemplazo para cuentas que han sido deshabilitadas o bien que cuentas a las
que se quiere que evitar puedan acceder al sistema con intérprete de mandatos.
Cambie SHELL=/bin/bash por SHELL=/sbin/nologin.
# useradd defaults file
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/sbin/nologin
SKEL=/etc/skel
En adelante todo nuevo usuario que sea dado de alta en el sistema con el mandato useradd sin
parámetro alguno, de modo predeterminado tendrá denegado acceder al sistema a través de
intérprete de mandatos, es decir acceso en terminal local o acceso remoto a través de SSH o
Telnet. Los usuarios con estas características podrán, sin embargo, utilizar cuentas de correo o
Samba, cuando el caso aplique.
De modo predeterminado las cuentas de usuario del sistema utilizarán como plantilla al
directorio /etc/skel para crear el directorio de inicio de todos los usuarios del sistema.
Regularmente y como mínimo, /etc/skel incluye lo siguiente:
.bash_logout .bash_profile .bashrc .gtkrc

Más contenido relacionado

La actualidad más candente

sistemas operativos-maestra maricarmen
sistemas operativos-maestra maricarmensistemas operativos-maestra maricarmen
sistemas operativos-maestra maricarmenKaren Vidal
 
Sistema de archivos
Sistema de archivosSistema de archivos
Sistema de archivosKarla Green
 
Particiones en Linux
Particiones en LinuxParticiones en Linux
Particiones en LinuxNinrod Mena
 
Disco duro esclavo maestro
Disco duro esclavo maestroDisco duro esclavo maestro
Disco duro esclavo maestroricardo dueñas
 
Servidores de-impresoras-en-linux-power-point
Servidores de-impresoras-en-linux-power-pointServidores de-impresoras-en-linux-power-point
Servidores de-impresoras-en-linux-power-pointale abad aguilar
 
Particionar un disco duro ana ochoa 5e
Particionar un disco duro ana ochoa 5eParticionar un disco duro ana ochoa 5e
Particionar un disco duro ana ochoa 5eAnny Ochoa
 
Sistema de archivos y directorios - Ubuntu - Compendio
Sistema de archivos y directorios - Ubuntu - CompendioSistema de archivos y directorios - Ubuntu - Compendio
Sistema de archivos y directorios - Ubuntu - CompendioJose Diaz Silva
 
Comandos permisos linux centos
Comandos permisos linux centosComandos permisos linux centos
Comandos permisos linux centosche_carlitos
 
Particiones del disco duro
Particiones del disco duroParticiones del disco duro
Particiones del disco duroPipe Garzon
 
ARQUITECTURA - JERARQUIA DE MEMORIAS
ARQUITECTURA - JERARQUIA DE MEMORIASARQUITECTURA - JERARQUIA DE MEMORIAS
ARQUITECTURA - JERARQUIA DE MEMORIASNoralma Yanez
 

La actualidad más candente (20)

Dos
DosDos
Dos
 
Adc pre4
Adc pre4Adc pre4
Adc pre4
 
Gestion memoria windows
Gestion memoria windowsGestion memoria windows
Gestion memoria windows
 
sistemas operativos-maestra maricarmen
sistemas operativos-maestra maricarmensistemas operativos-maestra maricarmen
sistemas operativos-maestra maricarmen
 
Sistema de archivos
Sistema de archivosSistema de archivos
Sistema de archivos
 
Particiones en Linux
Particiones en LinuxParticiones en Linux
Particiones en Linux
 
Disco duro esclavo maestro
Disco duro esclavo maestroDisco duro esclavo maestro
Disco duro esclavo maestro
 
Samba
SambaSamba
Samba
 
Jerarquia de memorias
Jerarquia de memoriasJerarquia de memorias
Jerarquia de memorias
 
Servidores de-impresoras-en-linux-power-point
Servidores de-impresoras-en-linux-power-pointServidores de-impresoras-en-linux-power-point
Servidores de-impresoras-en-linux-power-point
 
Ext4
Ext4Ext4
Ext4
 
Disco duro
Disco duroDisco duro
Disco duro
 
Particiones
ParticionesParticiones
Particiones
 
Particionar un disco duro ana ochoa 5e
Particionar un disco duro ana ochoa 5eParticionar un disco duro ana ochoa 5e
Particionar un disco duro ana ochoa 5e
 
Sistema de archivos y directorios - Ubuntu - Compendio
Sistema de archivos y directorios - Ubuntu - CompendioSistema de archivos y directorios - Ubuntu - Compendio
Sistema de archivos y directorios - Ubuntu - Compendio
 
Particiones
ParticionesParticiones
Particiones
 
Exposicion samba
Exposicion sambaExposicion samba
Exposicion samba
 
Comandos permisos linux centos
Comandos permisos linux centosComandos permisos linux centos
Comandos permisos linux centos
 
Particiones del disco duro
Particiones del disco duroParticiones del disco duro
Particiones del disco duro
 
ARQUITECTURA - JERARQUIA DE MEMORIAS
ARQUITECTURA - JERARQUIA DE MEMORIASARQUITECTURA - JERARQUIA DE MEMORIAS
ARQUITECTURA - JERARQUIA DE MEMORIAS
 

Destacado (20)

pi995.pdf
pi995.pdfpi995.pdf
pi995.pdf
 
a
aa
a
 
Metodología de la Investigación
Metodología de la InvestigaciónMetodología de la Investigación
Metodología de la Investigación
 
Ley federal de proteccion de datos...
Ley federal de proteccion de datos...Ley federal de proteccion de datos...
Ley federal de proteccion de datos...
 
Valoración de un proyecto.
Valoración de un proyecto.Valoración de un proyecto.
Valoración de un proyecto.
 
Cuál es el negocio que siempre ha querido
Cuál es el negocio que siempre ha queridoCuál es el negocio que siempre ha querido
Cuál es el negocio que siempre ha querido
 
5º trabajo virtual plan de mejora
5º trabajo virtual plan de mejora5º trabajo virtual plan de mejora
5º trabajo virtual plan de mejora
 
meldung.pdf
meldung.pdfmeldung.pdf
meldung.pdf
 
DHBW Lörrach.doc
DHBW Lörrach.docDHBW Lörrach.doc
DHBW Lörrach.doc
 
Paola vasquez recursos humanos
Paola vasquez recursos humanosPaola vasquez recursos humanos
Paola vasquez recursos humanos
 
Eslovènia, datos de este pais.
Eslovènia, datos de este pais.Eslovènia, datos de este pais.
Eslovènia, datos de este pais.
 
ETICA PROFESIONAL JULETH
ETICA PROFESIONAL JULETHETICA PROFESIONAL JULETH
ETICA PROFESIONAL JULETH
 
Sistemas recuperacion correcta
Sistemas recuperacion correctaSistemas recuperacion correcta
Sistemas recuperacion correcta
 
energia laura sanae
energia laura sanaeenergia laura sanae
energia laura sanae
 
Tecnología móvil
Tecnología móvilTecnología móvil
Tecnología móvil
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Módulo IV, Orientaciones para activar la participación social en las escuelas...
Módulo IV, Orientaciones para activar la participación social en las escuelas...Módulo IV, Orientaciones para activar la participación social en las escuelas...
Módulo IV, Orientaciones para activar la participación social en las escuelas...
 
Gabriel Garcia Marquez homenaje
Gabriel Garcia Marquez homenajeGabriel Garcia Marquez homenaje
Gabriel Garcia Marquez homenaje
 
Herramientas de las TIC
Herramientas de las TICHerramientas de las TIC
Herramientas de las TIC
 
Dispositivos
DispositivosDispositivos
Dispositivos
 

Similar a Cent os_

Particiones Logicas y Primarias en Ubuntu y Aumento de la Swap en VirtualBox
Particiones Logicas y Primarias en Ubuntu y Aumento de la Swap en VirtualBoxParticiones Logicas y Primarias en Ubuntu y Aumento de la Swap en VirtualBox
Particiones Logicas y Primarias en Ubuntu y Aumento de la Swap en VirtualBoxMaggie Ann
 
Particionar un disco duro
Particionar un disco duroParticionar un disco duro
Particionar un disco duroVecky Siwon
 
Particiones paola de leon
Particiones paola de leonParticiones paola de leon
Particiones paola de leonpaola199936
 
Cuatro razones por las que debes tener varias particiones en tu pc
Cuatro razones por las que debes tener varias particiones en tu pcCuatro razones por las que debes tener varias particiones en tu pc
Cuatro razones por las que debes tener varias particiones en tu pctecnologiacetis100
 
File System Management
File System ManagementFile System Management
File System ManagementJuan Sánchez
 
Disco duro
Disco duro Disco duro
Disco duro maiteo9
 
Mantenimiento de computadores
Mantenimiento de computadoresMantenimiento de computadores
Mantenimiento de computadoresDrakan55
 
Administracion linux i 1-introduccion
Administracion linux i 1-introduccionAdministracion linux i 1-introduccion
Administracion linux i 1-introducciondannys_lan
 
Particionando sistema de archivos basados en windows
Particionando sistema de archivos basados en windowsParticionando sistema de archivos basados en windows
Particionando sistema de archivos basados en windowsCesar Nefazthor
 
Trabajo unidad 5
Trabajo unidad 5Trabajo unidad 5
Trabajo unidad 5sandrikk
 
El disco duro
El disco duroEl disco duro
El disco duroanderaoiz
 
El disco duro
El disco duroEl disco duro
El disco duroborjapr
 

Similar a Cent os_ (20)

Particiones Logicas y Primarias en Ubuntu y Aumento de la Swap en VirtualBox
Particiones Logicas y Primarias en Ubuntu y Aumento de la Swap en VirtualBoxParticiones Logicas y Primarias en Ubuntu y Aumento de la Swap en VirtualBox
Particiones Logicas y Primarias en Ubuntu y Aumento de la Swap en VirtualBox
 
Desfragmentador
DesfragmentadorDesfragmentador
Desfragmentador
 
Particionar un disco duro
Particionar un disco duroParticionar un disco duro
Particionar un disco duro
 
Particiones paola de leon
Particiones paola de leonParticiones paola de leon
Particiones paola de leon
 
Castillo Cevallos Swap
Castillo Cevallos SwapCastillo Cevallos Swap
Castillo Cevallos Swap
 
Tarea 5
Tarea 5Tarea 5
Tarea 5
 
Ud 5
Ud 5 Ud 5
Ud 5
 
Particionesdedisco
ParticionesdediscoParticionesdedisco
Particionesdedisco
 
Cuatro razones por las que debes tener varias particiones en tu pc
Cuatro razones por las que debes tener varias particiones en tu pcCuatro razones por las que debes tener varias particiones en tu pc
Cuatro razones por las que debes tener varias particiones en tu pc
 
File System Management
File System ManagementFile System Management
File System Management
 
T.5, diego villares y javier conde
T.5, diego villares y javier condeT.5, diego villares y javier conde
T.5, diego villares y javier conde
 
El disco duro
El disco duroEl disco duro
El disco duro
 
Disco duro
Disco duro Disco duro
Disco duro
 
Mantenimiento de computadores
Mantenimiento de computadoresMantenimiento de computadores
Mantenimiento de computadores
 
Administracion linux i 1-introduccion
Administracion linux i 1-introduccionAdministracion linux i 1-introduccion
Administracion linux i 1-introduccion
 
Particion
ParticionParticion
Particion
 
Particionando sistema de archivos basados en windows
Particionando sistema de archivos basados en windowsParticionando sistema de archivos basados en windows
Particionando sistema de archivos basados en windows
 
Trabajo unidad 5
Trabajo unidad 5Trabajo unidad 5
Trabajo unidad 5
 
El disco duro
El disco duroEl disco duro
El disco duro
 
El disco duro
El disco duroEl disco duro
El disco duro
 

Último

lollllllllllllllllllllllllllllllllllllllllllllllll
lolllllllllllllllllllllllllllllllllllllllllllllllllollllllllllllllllllllllllllllllllllllllllllllllll
lollllllllllllllllllllllllllllllllllllllllllllllllJesusFlores332
 
Inyección electrónica, Diagnostico por imagenes.pdf
Inyección electrónica, Diagnostico por imagenes.pdfInyección electrónica, Diagnostico por imagenes.pdf
Inyección electrónica, Diagnostico por imagenes.pdfmiltonantonioescamil
 
Ergonomía en Oficinas- Ergonomía en Oficina.pptx
Ergonomía en Oficinas- Ergonomía en Oficina.pptxErgonomía en Oficinas- Ergonomía en Oficina.pptx
Ergonomía en Oficinas- Ergonomía en Oficina.pptxmolinabdiego93
 
Manual de Camioneta Toyota doble traccion 20023
Manual de Camioneta Toyota doble traccion 20023Manual de Camioneta Toyota doble traccion 20023
Manual de Camioneta Toyota doble traccion 20023danyercatari1
 
la historia de nissan skyline y su evolucion
la historia de nissan skyline y su evolucionla historia de nissan skyline y su evolucion
la historia de nissan skyline y su evolucionemanuelrosalezsanche
 
PIAnGIMNACIA___19655c35a563e33___ 2.pdfh
PIAnGIMNACIA___19655c35a563e33___ 2.pdfhPIAnGIMNACIA___19655c35a563e33___ 2.pdfh
PIAnGIMNACIA___19655c35a563e33___ 2.pdfhjonathancallenteg
 

Último (6)

lollllllllllllllllllllllllllllllllllllllllllllllll
lolllllllllllllllllllllllllllllllllllllllllllllllllollllllllllllllllllllllllllllllllllllllllllllllll
lollllllllllllllllllllllllllllllllllllllllllllllll
 
Inyección electrónica, Diagnostico por imagenes.pdf
Inyección electrónica, Diagnostico por imagenes.pdfInyección electrónica, Diagnostico por imagenes.pdf
Inyección electrónica, Diagnostico por imagenes.pdf
 
Ergonomía en Oficinas- Ergonomía en Oficina.pptx
Ergonomía en Oficinas- Ergonomía en Oficina.pptxErgonomía en Oficinas- Ergonomía en Oficina.pptx
Ergonomía en Oficinas- Ergonomía en Oficina.pptx
 
Manual de Camioneta Toyota doble traccion 20023
Manual de Camioneta Toyota doble traccion 20023Manual de Camioneta Toyota doble traccion 20023
Manual de Camioneta Toyota doble traccion 20023
 
la historia de nissan skyline y su evolucion
la historia de nissan skyline y su evolucionla historia de nissan skyline y su evolucion
la historia de nissan skyline y su evolucion
 
PIAnGIMNACIA___19655c35a563e33___ 2.pdfh
PIAnGIMNACIA___19655c35a563e33___ 2.pdfhPIAnGIMNACIA___19655c35a563e33___ 2.pdfh
PIAnGIMNACIA___19655c35a563e33___ 2.pdfh
 

Cent os_

  • 1. © Alex Marín Méndez – marinmendez@hotmail.com Estándar de Jerarquía de Sistema de Archivos Introducción El estándar de jerarquía de archivos (FHS o Filesystem Hierarchy Standard) define los principales directorios y sus contenidos en GNU/Linux y otros sistemas operativos similares a Unix. En agosto de 1993 inició el proceso para desarrollar un estándar de sistema de archivos jerárquico, como un esfuerzo para reorganizar las estructuras de archivos y directorios de GNU/Linux. El 14 de Febrero de 1994 se publicó el FSSTND (Filesystem Standard), un estándar de jerarquía de archivos específico para GNU/Linux. Revisiones de éste se publicaron el 9 de Octubre de 1994 y el 28 de Marzo de 1995. A principios de 1996, con la ayuda de miembros de la comunidad de desarrolladores de BSD, se fijó como objetivo el desarrollar una versión de FSSTND más detallada y dirigida no solo hacia Linux sino también hacia otros sistemas operativos similares a Unix. Como uno de los resultados el estándar cambió de nombre a FHS o Filesystem Hierarchy Standard. El FHS es mantenido por Free Standards Group, una organización sin fines de lucro constituida por compañías que manufacturan sustento físico (Hardware) y equipamiento lógico (Software) como Hewlett Packard, Dell, IBM y Red Hat. La mayoría de las distribuciones de Linux, inclusive las que forman parte de Free Software Standards, utilizan este estándar sin aplicarlo de manera estricta. La versión 2.3 del FHS, que es la utilizada por CentOS, Fedora™, Red Hat™ Enterprise Linux, openSUSE™ y SUSE™ Linux Enterprise, fue anunciada el 29 de enero de 2004. Estructura de directorios Todos los archivos y directorios aparecen debajo del directorio raíz /, aún si están almacenados en dispositivos físicamente diferentes.
  • 2. © Alex Marín Méndez – marinmendez@hotmail.com
  • 3. © Alex Marín Méndez – marinmendez@hotmail.com
  • 4. © Alex Marín Méndez – marinmendez@hotmail.com Más detalles acerca del FHS en http://www.pathname.com/fhs/ Particiones recomendadas para instalar CentOS, Fedora™, Red Hat™ Enterprise Linux, openSUSE™ y SUSE™ Linux Enterprise Si las condiciones limitan el número de particiones a utilizar, como mínimo se requieren dos particiones (diseño predeterminado de openSUSE™ y SUSE™ Linux Enterprise):
  • 5. © Alex Marín Méndez – marinmendez@hotmail.com Para uso general, se recomienda utilizar un diseño de tres particiones (predeterminado del instalador de CentOS, Fedora™ yRed Hat™ Enterprise Linux): Lo siguientes directorios jamás deberán estar fuera de la partición que corresponda a /, es decir, jamás se deben asignar como particiones separadas:  /etc  /bin  /dev  /lib y /lib64  /media  /mnt  /proc  /root
  • 6. © Alex Marín Méndez – marinmendez@hotmail.com  /sbin  /sys Para futuras versiones de CentOS, Fedora™, Red Hat™ Enterprise Linux, openSUSE™ y SUSE™ Linux Enterprise, el directorio /var también deberá estar dentro de la misma partición que corresponda a /, pues el proceso de arranque, que será gestionado por Systemd, así lo requerirá. Otras particiones que se recomienda asignar, son:
  • 7. © Alex Marín Méndez – marinmendez@hotmail.com
  • 8. © Alex Marín Méndez – marinmendez@hotmail.com Gestión de espacio de memoria de intercambio (swap) en GNU/Linux Introducción Hace muchos años, GNU/Linux, en los tiempos del núcleo versión 2.0, se encontraba limitado a utilizar una sola partición de memoria de intercambio de un máximo de 128 MB, siendo esto una de los principales argumentos utilizados por sus detractores. Por fortuna las cosas han cambiado y hoy en día ya no existe dicho límite y es posible además utilizar cuanta memoria de intercambio sea requerida para satisfacer las necesidades de cualquier sistema. ¿Qué es y cómo funciona el espacio de intercambio? El espacio de memoria de intercambio o Swap, es lo que se conoce como memoria virtual. La diferencia entre la memoria real y la virtual es que ésta última utiliza espacio en el disco duro en lugar de un módulo de memoria. Cuando la memoria real se agota, el sistema copia parte del contenido de esta directamente en este espacio de memoria de intercambio a fin de poder realizar otras tareas. Utilizar memoria virtual tiene como ventaja el proporcionar la memoria adicional necesaria cuando la memoria real se ha agotado y se tiene que realizar un proceso. El inconveniente radica en que, como consecuencia de utilizar espacio en el disco duro, la utilización de esta es mucho muy lenta. Uno puede percatarse de esto cuando el disco duro empieza a trabajar repentinamente hasta por varios minutos después de abrir varias aplicaciones. ¿Cuánto espacio para memoria de intercambio se debe asignar al sistema? Menos de 1 GB RAM Doble de la cantidad total de memoria RAM Más de 1 GB RAM Misma cantidad del total de memoria RAM, más 2 GB Circunstancias en las que se requiere aumentar la cantidad de memoria de intercambio Contar con mayor espacio para utilizar memoria virtual puede ser práctico en los siguientes casos:  Sistemas en donde adquirir memoria adicional es imposible, y se está consciente que la memoria de intercambio es muchísimo más lenta que la memoria RAM.  En equipos con trabajo intensivo que consume mucha memoria (diseño gráfico, por ejemplo).  Servidores de alto desempeño en donde se desea contar con un amplio margen de espacio de intercambio para satisfacer las demandas de servicios.  Sistemas que actualizaron desde una versión de núcleo 2.2, a una versión de núcleo 2.4 o 2.6.  Sistemas donde se aumentó la cantidad de memoria RAM y se encuentran con la problemática de cubrir la cuota mínima de espacio de memoria de intercambio. Procedimientos Todos los procedimientos listados a continuación requieren hacerse como el usuario root o bien utilizando el comando sudo.
  • 9. © Alex Marín Méndez – marinmendez@hotmail.com Cambiar el tamaño de la partición Cambiar el tamaño de las particiones del disco duro y cambiar las dimensiones de una partición de memoria de intercambio adicional es el método más efectivo. Sin embargo, esto representa un riesgo, debido que podría ocurrir un error durante los procesos de repartición que podría desencadenar en pérdida de datos en un disco duro. Si se utiliza este método, es importante disponer de un respaldo de todos los datos importantes antes de comenzar el proceso. Crear un archivo para memoria de intercambio Otro método más sencillo y sin riesgo alguno, consiste en utilizar un archivo de intercambio de forma similar a como se hace en otros sistemas operativos. Ante todo, la mejor solución siempre será adquirir más RAM. Procedimientos. Activar una partición de intercambio adicional. Si se cambió la tabla de particiones del disco duro y se ha creado una nueva partición de memoria de intercambio, se le da formato de la siguiente forma con el mandato mkswap, donde la opción -c indica se verifiquen sectores del disco duro buscando bloques dañados a fin de marcar estos y evitar utilizarlos: mkswap -c [dispositivo] En el siguiente ejemplo se dará formato como partición de memoria de intercambio a la partición /dev/sda8, de aproximadamente 1 GB, verificando sectores en busca de bloques dañados: mkswap -c /dev/sda8 Lo anterior puede devolver una salida similar a la siguiente: Setting up swapspace version 1, size=1048576 bytes no label, UUID=d2fea5ab-c677-8047-789a-e54ae19c506b Para activar la partición y que sea utilizada inmediatamente por el sistema operativo, se ejecuta el mandato swapon de la siguiente forma: swapon [dispositivo] En el siguiente ejemplo se activa como partición de memoria de intercambio a la partición /dev/sda8: swapon /dev/sda8 Para corroborar que la nueva partición de memoria de intercambio está siendo utilizada por el sistema operativo, se ejecuta el el mandato free, que puede devolver una salida similar a la siguiente: total used free shared buffers cached Mem: 321364 312576 8788 0 940 63428 -/+ buffers/cache: 248208 73156
  • 10. © Alex Marín Méndez – marinmendez@hotmail.com Swap: 1426416 0 1426416 Para que esta partición se utilice como memoria de intercambio automáticamente en el siguiente arranque del sistema, se edita el archivo /etc/fstab: vim /etc/fstab La línea que se deba agregar, lleva el siguiente formato: [partición] swap swap defaults 0 0 De tal modo, en el siguiente ejemplo se definirá como partición de memoria de intercambio a la partición /dev/sda8: /dev/sda8 swap swap defaults 0 0 Utilizar un archivo como memoria de intercambio. Este método no requiere hacer cambios en la tabla de particiones del disco duro. Es idóneo para usuarios poco experimentados, para quienes desean evitar tomar riesgos al cambiar la tabla de particiones el disco duro o bien para quienes requieren más de memoria de intercambio ocasional o de manera circunstancial. Considerando que el archivo de memoria de intercambio puede ser colocado en cualquier directorio del disco duro, se ejecuta el mandato dd, especificando que se escribirán ceros (if=/dev/zero) para crear el archivo /swap (of=/swap), en bloques de 1024 bytes (bs=1024) hasta completar una cantidad en bytes determinada (count=[cantidad multiplicada por el valor debs]). En el siguiente ejemplo se realiza lo anterior hasta completar 524288000 bytes (1024 por ), que equivalen a 512 MB: dd if=/dev/zero of=/swap bs=1024 count=512000 Para dar formato de memoria de intercambio al archivo creado, se ejecuta el mandato mkswap, del siguiente modo: mkswap /swap Lo anterior puede devolver una salida similar a la siguiente: Setting up swapspace version 1, size = 511996 KiB no label, UUID=fed2aba5-77c6-4780-9a78-4ae5e19c506b Para activar la partición y que sea utilizada inmediatamente por el sistema operativo, se ejecuta el mandato swapon. En el siguiente ejemplo se activa como partición de memoria de intercambio a el archivo /swap: swapon /swap Para corroborar que nuevo archivo de memoria de intercambio está siendo utilizada por el sistema operativo, se ejecuta el el mandato free, que puede devolver una salida similar a la siguiente: total used free shared buffers cached Mem: 321364 312576 8788 0 940 63428
  • 11. © Alex Marín Méndez – marinmendez@hotmail.com -/+ buffers/cache: 248208 73156 Swap: 3145724 0 3145724 Para que este archivo se utilice como memoria de intercambio automáticamente en el siguiente arranque del sistema, se edita el /etc/fstab: Y se agrega la línea correspondiente, del siguiente modo, donde en lugar del dispositivo, se pone la ruta del archivo de memoria de intercambio creado: vim /etc/fstab /swap swap swap defaults 0 0 Optimizando el sistema, cambiando el valor de /proc/sys/vm/swappiness El núcleo de GNU/Linux permite cambiar con qué frecuencia las aplicaciones y programas son movidas de la memoria física hacia la memoria de intercambio. El valor predeterminado es 60, como puede observarse al mirar el contenido de /proc/sys/vm/swappiness de la siguiente forma: cat /proc/sys/vm/swappiness Pueden establecerse valores entre 0 y 100, donde el valor más bajo establece que se utilice menos la memoria de intercambio, lo cual significa que se reclamará en su lugar el caché de la memoria. El valor predeterminado de 60, fue establecido teniendo en mente a quienes desarrollan el núcleo de Linux, con la finalidad de permitir realizar pruebas y diagnósticos. Para la mayoría de los casos, conviene cambiar este valor por uno más bajo a fin de que el sistema utilice menos la memoria de intercambio y utilice más la memoria cache. Ésta es una clase de memoria RAM estática de acceso aleatorio (SRAM oStatic Random Access Memory). Se sitúa entre la Unidad Central de Procesamiento (CPU) y la memoria RAM y se presenta de forma temporal y automática para el usuario proporcionado acceso rápido a los datos de uso más frecuente. Un valor apropiado y que funcionará para la mayoría de los sistemas en producción es 10. En el siguiente ejemplo se aplica el valor 10 para el archivo /proc/sys/vm/swappiness. echo 10 > /proc/sys/vm/swappiness Para lo anterior, también se puede ejecutar el mandato sysctl de la siguiente forma: sysctl -w vm.swappiness=10 Lo anterior devuelve una salida similar a la siguiente, confirmando que se ha aplicado el cambio: vm.swappiness = 10 Este cambio en las variables del sistema de forma aplica inmediata hasta el siguiente reinicio del sistema. Para hacer que el cambio sea permanente, se edita el archivo /etc/sysctl.conf. vim /etc/sysctl.conf Y se añade la siguiente línea: vm.swappiness = 10
  • 12. © Alex Marín Méndez – marinmendez@hotmail.com Los paquetes y su gestión Los paquetes son la agrupación instalable de los diferentes archivos necesarios para que un programa funcione. Se pueden parecer a los programas que se descargan de internet para windows, es decir, un archivo ejecutable que contiene un programa. La diferencia es que en GNULinux los paquetes no son ejecutables, sino que son gestionados por terceras aplicaciones. Además, los paquetes de Linux suelen ser muchísimo más compactos y reducidos ya que no traen consigo las librerías compartidas (dependencias) y, llegado el caso de necesitarse, serán instaladas o se nos informará de la necesidad de hacerlo, según el gestor de paquetes que estemos utilizando. Las aplicaciones Linux se suministran normalmente en tres formatos o tipos de paquetes:  RPM: se utilizan en distribuciones basadas en Red Hat, Fedora, Mandriva..., pueden tener tanto binarios como código fuente.  DEB: distribuciones basadas en Debian (Linex, Guadalinex...). Pueden contener tanto binarios como código fuente.  Tar.gz: código fuente empaquetado y comprimido para ser instalado directamente. La mayor parte de las aplicaciones disponen de versiones DEB, y RPM. y, por supuesto, todas se encontrarán también empaquetadas en tar.gz. Se pueden convertir paquetes y pasarlos de rpm a deb y viceversa, si se diera el caso que no existieran paquetes en alguno de los formatos,con el programa ALIEN, pero éste no siempre podrá garantizar el correcto funcionamiento de un paquete convertido a otro, en general, se garantizará mejor la instalación de un paquete si éste fue creado directamente para su tipo correspondiente. Paquetes RPM: Es un sistema de empaquetamiento que se está convirtiendo en un estándar de hecho en el mundo Linux por las ventajas que supone sobre otros modelos, pero bajo mi punto de vista todavía no alcanza a las posibilidades de la paquetería DEB, no obstante, al ser creado por RedHat, y dado que ésta es una de las distribuciones más utilizadas en el mundo, hace que su sistema de paquetes lo sea también. RPM proporciona al usuario una serie de facilidades que hacen el mantenimiento del sistema más sencillo de gestionar ya que mantiene una base de datos de los paquetes instalados y de sus archivos, lo que permite realizar consultas y verificaciones del sistema. Asimismo, Otra ventaja es que al actualizar software, los archivos de configuración se respetan de manera que no sea necesario volver a realizar los ajustes específicos que ya tuviera definidos, o si no fuera posible, realiza una copia de seguridad de los mismos. Trabajar con RPM RPM tiene cinco modos de trabajo: instalación, actualización, consulta, desinstalación y verificación. Instalación Supongamos que tenemos al lector de pantallas yasr empaquetado en RPM: yasr-0.7.6.i386.rpm
  • 13. © Alex Marín Méndez – marinmendez@hotmail.com Normalmente se nombran utilizando el nombre del paquete (yasr), versión (0.7), desarrollo (6), y arquitectura (i386). Asegúrate de elegir la arquitectura adecuada para tu sistema!. Para instalar un paquete: rpm -ivh yasr-0.7.6.i386.rpm El parámetro i es el utilizado para la instalación. Los otros dos son opcionales, pero útiles. El modo verbose, con v aporta información extra y la h (hash) imprime esas marcas de progreso (#) que nos dicen que algo está ocurriendo, podemos hacer una prueba de lo que ocurrirá, sin llegar a instalar, usando la opción: -test. La instalación de paquetes resulta fácil, pero pueden ocurrir percances: -Si intentas instalar un paquete que ya está instalado, toma como ejemplo el paquete yasr que hemos instalado más arriba, el sistema nos dará un mensaje similar a este: yasr package yasr-0.7.6 is already installed error: yasr-0.7.6.i386.rpm cannot be installed Para forzar la instalación usaremos: -replacepkgs Si intentas instalar un paquete que contiene un archivo que ha sido ya instalado por algún otro paquete el sistema te dará un error similar al siguiente: yasr /usr/bin/yasr conflicts with file from mim-0.7.6 error: yasr-0.7.6.i386.rpm cannot be installed Para hacer que rpm ignore el error, usa -replacefiles Si intentas instalar un paquete para el cual existe una dependencia no satisfecha: Los paquetes rpm pueden "depender" de otros paquetes, lo cual significa que requieren que otros paquetes estén instalados en el sistema para que funcionen. En este caso el error será: failed dependencies: yasr is needed by yyyy-x.x.x donde yyy es el nombre del paquete dependiente y x.x.x es el número de versión de ese paquete. La mejor forma de arreglar este error es instalar los paquetes requeridos. Se puede forzar la instalación usando -nodeps, pero si no se satisface una dependencia es casi seguro que el programa no va a funcionar. Actualización: Actualizar un paquete es como instalar un paquete con la salvedad de que rpm desinstala automáticamente cualquier versión antigua del mismo. rpm -Uvh yasr-2.0-1.i386.rpm En la actualización se mantienen los ficheros de configuración si ello fuera posible. Si los cambios fueran tan importantes para no permitirlo, rpm guarda los ficheros de configuración. Consulta de paquetes: Consultar la base de datos de paquetes instalados tampoco es complicado: lo conseguimos con la opción rpm -q. La forma más sencilla de usarlo es:
  • 14. © Alex Marín Méndez – marinmendez@hotmail.com rpm -q yasr-0.7.6 Combinando -q con otros parámetros, extraeremos más información. Para consultar todos los paquetes instalados utiliza -a rpm -qa Esto mostrará en pantalla una lista con los nombres de los paquetes. Para consultar el paquete al que pertenece un fichero concreto: -f rpm -qf /bin/ls fileutils-4.0-21 Con la opción -ql podemos ver un listado de los ficheros, con -qd vemos un listado de los ficheros con la documentación y con la opción -qc los ficheros de configuración del paquete. Desinstalación de paquetes: Desinstalar un paquete es tan sencillo como instalarlo, rpm garantiza la limpieza del procedimiento y que se desinstalarán todos los ficheros, no importa donde estén instalados: rpm -e yasr En la desinstalación se usa el nombre yasr y no el nombre completo del paquete. Un error habitual es el de «romper» las dependencias al desinstalar un paquete si algún otro paquete instalado depende del que estás intentando borrar. Para hacer que rpm no realice la comprobación de dependencias y desinstale el paquete de todas maneras: -nodeps. Verificación: Verificar un paquete es comprobar la integridad del mismo, osea si tenemos en el sistema actualmente lo mismo que se instaló en su día y si está como se supone que debería estar. Entre otras cosas, se compara el tamaño, chequeo MD5, permisos, tipo, usuario y grupo de cada archivo. rpm -V yasr Si el paquete está correcto, la salida es: nada. No hay cambios, o sea que no hay nada que mostrar. En el caso de encontrar diferencias muestra en pantalla una palabra de ocho caracteres, uno por cada prueba que realiza. Un punto equivale a que la comparación es correcta. Una letra indica un cambio en esa comparación concreta. Los chequeos que hace son:  Tamaño del archivo: S  Enlace simbólico: L  Fecha del archivo: T  Dispositivo distinto: D  Usuario distinto: U  Grupo distinto: G  Modo (permisos) distinto: M  MD5 modificado: 5 Para localizar ficheros que afectan a la gestión de las bases de datos de rpm tendremos que mirar en /var/lib/rpm y en /usr/lib/rpm Listado de /var/lib/rpm:
  • 15. © Alex Marín Méndez – marinmendez@hotmail.com conflictsindex.rpm groupindex.rpm packages.rpm requiredby.rpm fileindex.rpm nameindex.rpm providesindex.rpm triggerindex.rpm packages.rpm es el que contiene la base de datos de los programas que tenemos instalados en el sistema. La integridad de este fichero es importante para el correcto funcionamiento de rpm. Del contenido de /usr/lib/rpm, cabe destacar dos ficheros de configuración, rpmopt y rpmrc. La configuración actual se puede ver ejecutando: rpm –showrc PAQUETES DEB: En un paquete de este tipo, normalmente, tendremos un conjunto de aplicaciones que se instalarán en la ubicación que esté preestablecida cuando se haya creado el paquete. Por tanto, podremos sobreentender que un paquete es un fichero que a su vez contiene ficheros y directorios comprimidos que se instalarán en el sistema cuando este paquete sea invocado con las diferentes aplicaciones que tengamos para ello. Los paquetes DEB se pueden reconocer fácilmente por utilizar como parte de su nombre "la extensión" .DEB. Suelen formarse por un nombre que alude al paquete seguido de los números de versión del paquete y puede contener también un indicativo de la plataforma para la que ha sido creado y compilado. Un ejemplo podría ser algo parecido a lo siguiente: yasr_0.6.7_i386.deb. Esto indicaría que el paquete es yasr, que su versión es la 0.6.7 y que ha sido compilado para la plataforma intel 386. Generalmente el que esté compilado para 386 no indica que no vaya a funcionar en un 486 o en un 586, aunque podría no funcionar adecuadamente si fuera al revés. Utilidades para gestionar paquetes DEB: Existen varias aplicaciones para su gestión desde la línea de comandos y desde el entorno gráfico. Algunas de ellas son las siguientes: Apt-get: Es posiblemente la herramienta de gestión de paquetes más potente y fácil de manejar que existe. Nos permite desinstalar y manejar todo lo referente a estos paquetes desde la línea de comandos. La mejor de las capacidades de este programa es hacer instalaciones desde internet bajando cada uno de los paquetes necesarios de ordenadores remotos especialmente organizados para ello. A estos lugares en internet de los cuales se descargan los paquetes se les llama repositorios. Casi la totalidad del material que se encuentra en estos repositorios suele ser gratuito. Si un paquete necesita algún otro que sea requerido para su funcionamiento, este programa, a diferencia de otros, busca e instala también esos paquetes. Cuando un programa necesita de otros para funcionar correctamente, se dice que hay dependencias, por ello, estamos haciendo con este programa de instalación de paquetes que gestione las dependencias por nosotros, lo que nos evitará muchos dolores de cabeza por evitarnos la búsqueda de dependencias a mano a lo largo de los miles de archivos que nos puede ofrecer un repositorio o una colección de CDs. Asimismo, también la misma herramienta, en ocasiones,
  • 16. © Alex Marín Méndez – marinmendez@hotmail.com nos podrá ofrecer un listado de paquetes no dependientes pero sí recomendados que podremos instalar o no a nuestro criterio. Cada distribución que podamos estar utilizando tiene un número específico de repositorios a los que apunta y de los que descargará paquetes o actualizaciones, pero esto no debe ser una limitación, ya que podremos añadir otros diferentes que nos puedan agregar funcionalidades o programas que en los repositorios originales no había. En el archivo etc/apt/sources.list podemos consultar o modificar estos repositorios de paquetes. Opciones principales de apt-get: apt-get update - actualiza la lista de los paquetes disponibles en los repositorios. Modifica la información en el fichero sources.list. Es recomendable hacerlo de vez en cuando para asegurarnos de que a la hora de instalar o actualizar un paquete determinado o la distribución en general dispongamos de las versiones más actualizadas. apt-get upgrade - Comprueba las versiones de los paquetes instalados y, si existen versiones posteriores, realiza una actualización. apt-get dist-upgrade: Lo mismo que la anterior pero actualiza, no sólo los paquetes, sino también, la propia distribución de linux. apt-get install NombreDelPaquete: ejemplo apt-get yasr. No hace falta dar todo el nombre completo, se puede introducir sin extensión ni número de versión. apt-get remove NombreDelPaquete: desinstala el paquete indicado (no así con las posibles dependencias, ya que éstas pueden ser necesarias para que otras aplicaciones puedan seguir funcionando). Otras opciones pueden ser: source - Descarga archivos fuente build-dep - Configura las dependencias de construcción para paquetes fuente dselect-upgrade - Sigue las selecciones de dselect clean - Elimina los archivos descargados autoclean - Elimina los archivos descargados antiguos check - Verifica que no haya dependencias incumplidas Modificadores: -h texto de ayuda. -q Salida registrable - sin indicador de progreso -qq Sin salida, excepto si hay errores -d Sólo descarga - NO instala o desempaqueta los archivos -s No actúa. Realiza una simulación -y Asume Sí para todas las consultas -f Intenta continuar si la comprobación de integridad falla
  • 17. © Alex Marín Méndez – marinmendez@hotmail.com -m Intenta continuar si los archivos no son localizables -u Muestra también una lista de paquetes actualizados -b Construye el paquete fuente después de obtenerlo -V Muestra números de versión detallados Dpkg: Se trata de otra aplicación que gestiona paquetes DEB y proporciona información sobre los paquetes instalados. A diferencia del apt-get, no instala automáticamente las dependencias (otros paquetes que deben instalarse previamente) sino que se limita a indicarlas durante el proceso de instalación. Por eso es un programa menos claro y más difícil de utilizar, pero en ocasiones podrá resultarnos de más utilidad. Algunas opciones: dpkg -l Comprueba los paquetes instalados en la máquina y ofrece un listado completo. Si queremos información relacionada con un solo paquete, se puede utilizar el pipe GREEP con el comando. Ejemplo: dpkg |grep. Más adelante veremos los pipes o tuberías, pero ahora lo dejaremos así por no ser relevante. dpkg -L NombrePaquete. Informa sobre el contenido (los ficheros) que forman un paquete. Ejemplo.: dpkg -L tree nos informará sobre los ficheros del paquete tree /. /usr /usr/bin (el ejecutable) /usr/bin/tree /usr/share () /usr/share/man (información manuales) /usr/share/man/man1 /usr/share/man/man1/tree.1.gz /usr/share/doc /usr/share/doc/tree /usr/share/doc/tree/README /usr/share/doc/tree/copyright /usr/share/doc/tree/changelog.gz
  • 18. © Alex Marín Méndez – marinmendez@hotmail.com /usr/share/doc/tree/changelog.Debian.gz dpkg -i NombrePaqueteCompleto Para instalar paquetes que tenemos localmente y no necesitamos descargar. dpkg -r NombrePaqueteCompleto Desinstalación dpkg -s fichero Informa de los paquetes que contienen ese fichero (a que paquetes pertenece). La instalación y desinstalación se pueden hacer indistintamente desde dpkg y apt-get ya que gestionan el mismo tipo de ficheros, pero en la mayor parte de las ocasiones utilizaremos apt- get, dejando dpkg para desinstalar paquetes problemáticos o para instalar paquetes sueltos que hemos bajado de internet sin pasar por los repositorios. FICHEROS TAR Y GZ El formato tar de ficheros, frecuente en Linux, es una agrupación de éstos (como los zip de Windows pero en este caso no están comprimidos). El empaquetador TAR se utiliza para hacer copias de seguridad de varios archivos o de directorios enteros: el contenido quedará agrupado en un sólo fichero cuyo archivo resultante tendrá, habitualmente, la extensión ".tar". Este programa se utilizó, en un principio, para generar empaquetamientos dedicados a crear copias de respaldo en unidades de cinta externa. Agrupar y comprimir El TAR se utiliza frecuentemente en combinación con el GZIP (herramienta de compresión) y así los obtenemos agrupados y comprimidos. Se pueden hacer los dos procesos por separado (agrupar con tar y comprimir después con gzip) pero también se pueden hacer simultáneamente utilizando el carácter "z" con el comando tar. La opción z se utiliza para la compresión y descompresión de archivos. Ejemplo: tar cvfz fichero V equivale al modo verboso o prolijo (aparece toda la información del proceso en pantalla); la z es para comprimir. A los ficheros comprimidos y agrupados se les pone la extensión .tar.gz (gz indica que está comprimido), también, en algunas ocasiones podremos ver la extensión tgz, pero es más común la otra. Ejemplo: tar cvfz fichero.tar.gz /root hará una copia del directorio root, comprimida y agrupada, en el fichero.tar.gz, dentro del directorio en el que estamos. Se pueden hacer a la vez varios directorios separándolos por espacios: tar cvfz directorio1 directorio2 directorio3.
  • 19. © Alex Marín Méndez – marinmendez@hotmail.com Configurando valores por defecto para el alta de cuentas Procedimientos. Como root, edite /etc/default/useradd. vim /etc/default/useradd Encontrará el siguiente contenido: # useradd defaults file GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/bash SKEL=/etc/skel Puede cambiar lo valores que considere convenientes, como por ejemplo el intérprete de mandatos a utilizar para las nuevas cuentas que sean creadas en adelante. De modo predeterminado el sistema asigna /bin/bash (BASH o Bourne Again Shell) como intérprete de mandatos. Si el sistema se utilizará como servidor, lo más conveniente es que se asigne de modo predeterminado /sbin/nologin como intérprete de mandatos predeterminado, pues éste muestra brevemente un mensaje respecto a que la cuenta está inhabilitada y devuelve inmediatamente a la pantalla de autenticación. Se utiliza regularmente como intérprete de mandatos de reemplazo para cuentas que han sido deshabilitadas o bien que cuentas a las que se quiere que evitar puedan acceder al sistema con intérprete de mandatos. Cambie SHELL=/bin/bash por SHELL=/sbin/nologin. # useradd defaults file GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/sbin/nologin SKEL=/etc/skel En adelante todo nuevo usuario que sea dado de alta en el sistema con el mandato useradd sin parámetro alguno, de modo predeterminado tendrá denegado acceder al sistema a través de intérprete de mandatos, es decir acceso en terminal local o acceso remoto a través de SSH o Telnet. Los usuarios con estas características podrán, sin embargo, utilizar cuentas de correo o Samba, cuando el caso aplique. De modo predeterminado las cuentas de usuario del sistema utilizarán como plantilla al directorio /etc/skel para crear el directorio de inicio de todos los usuarios del sistema. Regularmente y como mínimo, /etc/skel incluye lo siguiente: .bash_logout .bash_profile .bashrc .gtkrc