El documento proporciona una introducción al sistema operativo UNIX. Explica que UNIX es una familia de sistemas operativos estrechamente relacionados que se originaron en los laboratorios Bell y la Universidad de California en Berkeley. También resume los conceptos básicos de UNIX como directorios, archivos y permisos, e introduce algunas variantes comunes como Linux, Solaris y BSD.
5. ¿Qué es UNIX?
• Era referenciado a un sistema operativo en
particular. Ahora son una gran familia de
sistemas operativos estrechamente relacionados.
• Son conocidos como: Variantes de UNIX o
“UNIX –like”.
• Se basan en AT&T Bell Laboratories y en
University of California, Berkeley
• Tienen mucho en común, sin embargo tienen sus
particularidades y sus diferencias.
6. ¿Por qué es importante UNIX?
• 35 Años de evolución: poderoso, flexible y versátil.
• Existen variantes: ventajas para aprenderlos a usar sólo
se necesita entender la base conceptual del modelo
sobre la que UNIX está construido.
• Es usado en: PCs, Estaciones de Trabajo,
Microcomputadoras multiusuarios, minicomputadoras,
mainframes y súpercomputadoras.
• Se estima que más de 40 millones de computadoras
usan UNIX y 300 millones de personas lo usan.
• (crecimiento debido especialmente por Linux).
7. ¿Por qué es importante UNIX?
• Herramientas y Utilerías cooperativas.
• Multiusuario y Multitarea.
• Excelente entorno de red (preparada para
compartir información y procesamiento).
• Portabilidad.
8. Historia
• Principios de los 70’s (Ken Thompson y
Dennis Ritchie).
• Adopción de UNIX por universidades.
9. Variantes de UNIX
• UNIX versión V de AT&T.
• UNIX de Berkeley.
• Otras versiones se basan en una u otra.
13. UNIX: Filosofía
• Tiene influencia en la estructura del sistema y
la forma en que trabaja.
• TIP: Mantener la filosofía en mente.
• La complejidad y el poder del sistema debe
mantenerse: sencillo, general y extensible.
• “Lo pequeño es hermoso”
14. UNIX: Filosofía
UNIX observa a los archivos de una manera
extremadamente sencilla y general dentro de
un modelo único:
• Los directorios, archivos ordinarios,
dispositivos (impresoras, USB, teclados),
terminales de pantalla son vistos de una misma
forma, como archivos.
• Si lo maneja como archivos puede
redireccionar salidas.
15. UNIX: Filosofía
• UNIX tiene una gran cantidad de comandos y
herramientas.
• Cada uno con una función específica
• Cada uno diseñado para trabajar con los demás.
• (Y son pequeños).
• Pueden usarse con otros programas, utilizar
mnemotécnicos o ser muy complejos
• Un buen ejemplo de esta filosofía: sort
• Este soporte modular se apoya en “|”
16. UNIX: Nuevas Variantes
• Linux
– apoyado por IBM, HP, Sun, y Novell
– Soporta: Intel x86, Motorola 68k, Sparc y PowerPC
• Distribuciones:
– Red Hat (http://www.redhat.com/), Caldera (SCO
Group) (http://www.caldera.com/), Debian
(http://www.debian.org/), SuSE (Novell)
(http://www.novell.com/linux/suse/), Mandriva
(http://www.mandriva.com/), TurboLinux
(http://www.turbolinux.org/) y Slackware
(http://www.slackware.org/).
17. UNIX: Nuevas Variantes
• Berkeley Software Distribution BSD Variants:
– FreeBSD, NetBSD, and OpenBSD
• Solaris (Oracle)
• Mac OS X
• AIX
• HP-UX
• UNIXWARE
• Tru64 UNIX
• IRIX
20. Ejercicio:
• 20 minutos
• Investigar diferencias entre Windows NT (o
superiores) y UNIX
• Evolución de UNIX y Windows NT.
21. UNIX: Futuro
• Capacidad de crecimiento y de incorporar
nuevas tecnologías.
• Desarrollo de nuevas herramientas, utilerías y
capacidades de red.
• Sigue desarrollando (dentro de cada variante).
22. Elegir una variante de UNIX
¡Son muchos!
• Escritorio o Laptop (MAC OS X, Linux,
FreeBSD o algunas variantes preinstaladas de
UNIX)
• Experimentados (gratuito o de bajo costo)
como Linux, FreeBSD, OpenBSD, NetBSD,
Solaris y otros más.
• Plataforma,
• Soporte
• Necesidades
23. Elegir una variante de
UNIX
• Usar UNIX (“aprender en casa no en el
trabajo”).
• Identificar necesidades.
• Preguntar a los expertos.
25. Capítulo #2
• Instalar UNIX (Solaris 10).
• Inicio en sistema.
• Estructura de los comandos.
• Comandos sencillos.
• Ayuda
• Manejo de archivos.
26. Instalar UNIX (Solaris 10)
• Oracle Solaris 10 9/10
• El ISO mide 2.38 GB para x86
• Instalarlos en:
– VM
– Partición
– En todo el sistema
• Existen varios tipos de instalación.
– Básico, usuario, desarrolladores, servidor,
completo.
27. Opciones de Instalación y
actualización.
• Solaris installation Graphical User Interface
(GUI).
• Solaris installation Command Line Interpreter
(CLI).
• Solaris Custom JumpStart software.
• Solaris Flash Archives.
• Solaris WAN boot installation.
• Solaris Upgrade method.
28. Solaris instalation Graphical
User Interface (GUI).
• Se puede ejecutar con el argumento nowin.
• 64-127 MB inicia con nowin.
• 128-383 MB ventana GUI con texto.
• 384-511 MB inicia con la interface GUI.
• 512 MB inicia con la instalación kiosk.
29. Solaris Custom JumpStart
software.
• Se instala Solaris con un perfil personalizado
para diferentes tipos de sistemas..
• Provee un “manos-libres” en la instalación.
• CLI.
30. Solaris Flash Archives.
• Habilita la instalación de varios sistemas
basados en una configuración que se instaló en
un sistema maestro (imagen).
31. Solaris WAN boot
installation.
• Permite iniciar e instalar el software sobre una
red WAN utilizando HTTP.
• Permite transferir el archivo de instalación
(Solaris Flash) encriptado sobre una red
pública.
32. Solaris Upgrade method.
• Combina la nueva versión de Solaris con los
archivos existentes en el sistema de discos.
• Puede realizarse de manera GUI, CLI y
Custom JumpStart.
• El sistema no está activo.
33. Solaris Live Upgrade
Software.
• Duplica el entorno de arranque.
• Permite ahorrar tiempo al actualizar sin
modificar los parámetros existentes.
• GUI o CLI.
34. Requerimientos de
Hardware (Solaris 10)
El sistema operativo de Solaris 10 requiere lo
siguiente:
• 256 MB de memoria mínima recomendada.
• Al menos 5 GB de espacio en disco duro.
• Acceso a un CD-ROM/DVD o instalación
desde un servidor.
35. Solaris: Componentes de
Software
El sistema operativo Solaris está organizado en
tres componentes:
• Software Packages.
• Software Clusters.
• Software Groups.
36. Solaris: Componentes de
software.
Software
Packages
.
CDE Developer
. . Software Cluster
Configuration for
the Developer
37. Grupos de distribución de
Solaris
• Minimal Core Metacluster (SUNWCmreq)
• Reduced Network Support Software (SUNWCrnet).
• Core Software Group (SUNWCreq).
• End User System Support Software Group (SUNWCuser).
• Developer System Support Software Group (SUNWCprog).
• Entire Distribution Software Group (SUNWCall).
• Entire Distributions Plus OEM Support Software Group
(SUNWCXall).
38. Comandos a usar:
• Para ver el nombre de los clusters:
#grep METACLUSTER /var/sadm/system/admin/.clustertoc
• Determianr cual cluster ha sido instalado en el
sistema:
# cat /var/sadm/system/admin/CLUSTER
39. Guía de Pre-instalación
1. Ubicar espacio adicional en el disco para cada
lenguaje instalado.
2. Ubicar espacio adicional en el sistema de
archivos /var si tiene planeado tener en su
sistema soporte para los servicios de
impresión y de correo.
3. Ubicar el doble de cantidad de memoria física
en el sistema de archivos /var si planea usar
crash dump.
40. Guía de Pre-instalación
4. Ubicar espacio adicional en el sistema de
archivo /export o /export/home si tiene planeado
proveer directorio personal a los usuarios.
5. Ubicar espacio adicional para el grupo de
instalación que se desee instalar.
6. Ubicar un 30% adicional en espacio del disco
duro para cada sistema de archivo que se crea y
crear el mínimo de sistemas de archivos. (para
actualizaciones).
41. Recordar
• Por default, el método de instalación del
sistema operativo Solaris crea únicamente los
sistemas de archivos:
/ (root)
/export/home
swap
42. Pre-instalación
• Nombre del host
– uname –n
• Dirección de la red
– ifconfig –a {comando}
– ifconfig –hme0 {comando}
– /etc/netmasks {archivo}
– /etc/defaultrouter {archivo}
– /etc/resolv.conf {archivo}
43. Ejercicio: Para la
instalación de Solaris
• Sparc
# init 0 {o presionar Stop-A}
ok boot cdrom –nowin
• x86
– Insertar el DVD / CD de Solaris.
– Y seguir las instrucciones
44. Directorios
• Generalmente los directorios son:
/
swap Equipo #1 Buscar en qué se
utilizan esas particiones.
/var
/opt
/usr
/export
/export/home
45. VTOC
• Cuando inicia la instalación, el sistema inicia
escribiendo el Volume Table of Contents
(VTOC).
• Esto se escribe en el archivo:
/etc/vfstab
46. Análisis de Instalación
• Revisar el blog de registro:
/var/sadm/install_data/install_log
• Revisar la tabla de sistemas de archivos:
/etc/vfstab
47. Introducción al Directorio
Jerárquico del OS Solaris
Directorios Críticos Directorios del Sistema
/ (root) /lib Importantes In-Memory
/bin /mnt /dev/fd /system/contract
/dev /opt /devices /system/object
/etc /platform /etc/mnttab /tmp
/export /sbin /etc/svc/volatile /var/run
/home /usr /proc
/kernel /var
Nota: Los directorios In-Memory son
administrados por el Kernel y los
servicios del sistema. El usuario no
Equipo #2 debe manipularlos manualmente
(crear, alterar o remover estos
directorios)
48. Introducción al Directorio
Jerárquico del OS Solaris
(subdirectorios bajo directorios clave)
Subdirectorios /etc
Subdirectorios /dev /etc/acct /etc/lib
/dev/dsk /dev/rdsk /etc/cron.d /etc/lp
/dev/fd /dev/rmt /etc/default /etc/mail
/dev/md /dev/term /etc/inet /etc/nfs
/dev/pts /etc/init.d /etc/opt
/etc/rc#.d /etc/security
/etc/skel /etc/svc
Equipo #3 /etc/zones
49. Introducción al Directorio
Jerárquico del OS Solaris
(subdirectorios bajo directorios clave)
Subdirectorios /var Subdirectorios /usr
/var/adm /var/spool /usr/bin /usr/ccs
/var/crash /var/svc /usr/demo /usr/dt
/var/tmp /usr/dt /usr/include
/usr/jdk /usr/kernel
/usr/lib /usr/opt
/usr/sbin /usr/spool
Equipo #4
51. Comandos
• Para verificar la creación del usuario:
#cat /etc/passwd
• Cambio de usuario:
#su –rglz
• Encontrar un archivo:
#find / -name core
#find / -name core 2 > /tmp/errores
52. Introducción a los
componentes de un archivo
• Todos los archivos en un SO Solaris hacen uso
del nombre del archivo y un registro (ínodo).
• Los archivos generalmente hacen uso de los
data blocks.
• En general, un nombre de archivo está
asociado a un ínodo y éste provee acceso al
data block.
54. Nombre de Archivos
• Son objetos que el SO Solaris es usado para
tener acceso y manipular los archivos.
• Un archivo debe de estar asociado a un ínodo.
55. Ínodos
• Son objetos que el SO Solaris usa para
registrar la información acerca del archivo.
• En general los ínodos contienen dos partes:
– Contienen información acerca del archivo,
incluyen el propietario, sus permisos y su tamaño.
– Contienen apuntadores a los data blocks asociados
con el contenido del archivo.
56. Ínodos
• Son numerados y cada sistema de archivos
contiene su propia lista de ínodos.
• Cuando un sistema de archivos es creado, una
lista completa de nuevos ínodos también es
creada en el sistema de archivos.
• El ínodo sabe todo acerca del archivo menos el
nombre.
57. Actividad: Ínodos
• Para saber el número de ínodos libres:
# df –e
• Para saber el porcentaje de uso por sistema de
archivos:
# /usr/ucb/df –i
• Para saber cuál comando df se está ejecutando:
# which df
58. Data Blocks
• Son unidades de espacio en disco que son
usados para almacenar datos.
• Archivos regulares, directorios y ligas
simbólicas hacen uso de los data blocks.
• Los archivos de los dispositivos (device files)
no almacenan datos.
59. Tipos de archivos.
• Los archivos proveen • Hay cuatro tipos
– una manera de diferentes de archivos
almacenamiento de datos, principalmente:
– activar dispositivos – Regulares o archivos
– Permitir inter-procesos de ordinarios.
comunicación. – Directorios.
– Ligas simbólicas
(symbolic links).
– Archivos de dispositivos.
60. Tipos de Archivos
• Archivos regulares, ligas simbólicas y
directorios, todos almacenan uno o más tipos
de datos.
• Los archivos de dispositivos no almacenan
datos, sólo proveen acceso a los dispositivos.
• El comando ls permite distinguir los diferentes
tipos de archivos.
61. Actividad: ls
• Realiza la siguiente actividad:
#cd /etc
#ls –l {observa el primer carácter de las columnas}
¿qué caracteres son y qué significan?
#cd /devices/pci@1f,0/pci@1,1/ide@3 {o escribir}
[ #cd /devices/pci@0,0/pci-ide@7,1/ide@0 ]
# ls –l {observa el primer carácter de las columnas}
¿qué caracteres son y qué significan?
62. Archivos Regulares
Archivo1
Ínodo 1282
DATOS: Métodos p/crear:
Texto Editores de Texto
Datos Binarios Compiladores
Imágenes Programas de Aplicación
Datos de Programas de Bases de
Data Blocks
Aplicación Datos
Bases de Datos Comandos (p/e touch, vi, etc)
Propósito:
Archivos regulares para
almacenar datos
63. Directorios
• Los directorios almacenan información que
asocia el nombre de los archivos con el número
de ínodo.
• A diferencia de los archivos regulares, que
pueden contener diferentes tipos de archivos de
datos, los directorios únicamente contienen la
asociación de nombre-a-ínodo.
• Un directorio contiene muchos archivos de todo
tipo que están lógicamente ubicados dentro del
directorio.
64. Directorio
Direc1
Ínodo 4221
DATOS: Métodos p/crear:
Información de mkdir nombre_directorio
directorio
Data Blocks
Archivo1=ínodo 1282
dirA = ínodo 5314
Propósito:
Almacenamiento que asocia
nombres con el número de ínodo
65. Ligas Simbólicos
• Un enlace simbólico es un archivo que apunta
a otro archivo.
• Contienen la ruta del nombre del archivo al
cual apuntan.
66. Ligas Simbólicos
• Usa nombres de rutas para apuntar a otros
archivos y por lo tanto puede apuntar a
archivos en otros sistemas de archivos.
• Las ligas pueden apuntar a archivos regulares,
directorios, a otras ligas simbólicas y a los
archivos de los dispositivos.
67. Actividad: Ligas Simbólicas
• El tamaño de las ligas simbólicas siempre
coincide con el número de caracteres del nombre
de ruta, por ejemplo:
/bin apunta al directorio ./usr/bin
{el tamaño de la liga simbólica es 9 bytes}
# cd /
# ls –l bin
{analiza el tipo de archivo, el tamaño en bytes y hacia a dónde apunta}
68. Ejemplo: Liga Simbólicos
Crear una liga simbólica:
# ln –s archivo1 enlace1 {llamadas ligas simbólicas o suaves}
Enlace1
Archivo1
Ínodo 3561
Ínodo 1282
Data Blocks
Data Blocks
./Archivo1
69. Archivos de Dispositivos
• Un archivo de dispositivo provee acceso a los
dispositivos.
• A diferencia de los archivos regulares,
directorios y ligas simbólicas, los archivos de
los dispositivos no usan data blocks.
• La información del ínodo en los archivos de
dispositivos contiene la referencia al
dispositivo.
70. Archivos de Dispositivos
Tamaño en Bytes
Comando:
#more /etc/path_to_inst
Driver, no es el tamaño Partición #ls –l /dev/dsk |more
Una larga lista de
archivos de dispositivos
y se muestra dos
números separados por
una coma (Número de
dispositivo Mayor y
Menor)
71. Archivos de Dispositivos
El archivo del dispositivo cmdk@0,0, ocupa un número de ínodo
90681. El ínodo contiene el número menor y el mayor del
dispositivo que hace referencia a un dispositivo específico, en este
caso a una partición.
cmdk@0,0
Ínodo 90681
Data Blocks
./Archivo1
72. Actividad
Para verificar que el driver del dispositivo esté
disponible en el módulo del kernel:
# modinfo –w | grep –w cmdk
# modinfo –c | grep –w dad
Los archivos de dispositivos caen en dos
categorías: Character-special devices y block-
special devices.
73. Character-special devices
• El tipo de archivo se identifica con “c”.
• Son llamados como dispositivos de caracter o
crudos –raw.
• Se acceden como una corriente de datos.
74. Block-special devices
• El tipo de archivo se identifica con la letra “b”.
• Son llamados dispositivos de bloque.
• En la transferencia de datos entre procesos y los
dispositivos de block-special, primeramente son
pasados por un buffer (kernel-managed memory
based cache).
• Tienen mejor rendimiento cuando los datos se
acceden de forma repetitiva.
• Permiten una búsqueda aleatoria.
75. Ligas Duras
• Es la asociación entre un nombre de archivo y
un ínodo.
• Todo archivo usa al menos una liga dura.
• Al crear un archivo, se crea una liga dura.
archivo1 dir1 El archivo1 está en el
Ínodo 1282 Ínodo 4221 directorio dir1. En dir1
el nombre archivo1
está asociado al ínodo
Data Blocks 1282. La liga dura
Data Blocks está asociada entre
Archivo1=ínodo 1282 archivo1 y el ínodo
1282
76. Ejemplo
# cd /
# mkdir dir1
# touch archivo1
# ls –l Cantidad de ligas duras
{la segunda columna es quien lleva el conteo de las ligas}
77. Ejemplo: Crear nueva liga
dura
# ln archivo1 archivo2
# ls -l
# ls -li
#find . –inum 1282
78. Ligas Duras
• No se pueden crear ligas duras en discos duros
diferentes (sistemas de archivos).
• No se pueden crear ligas duras a otros
directorios.
79. Ejercicio #1: Identificar el
tipo de archivos
1. Identificar la primera liga simbólica que se
liste en el directorio / (root). Registre el
tamaño de la liga simbólica y el nombre del
archivo que hace referencia. Identifique los
tipos de archivos encontrados en el directorio
/dev/dsk y el tipo de archivos a la cual hace
referencia la liga simbólica. Identificar los
tipos de archivos que se encuentran en el
directorio /dev/pts y las ligas a qué tipo de
archivos hacen referencia.
80. Ejercicio #2: Identificar el
tipo de archivos
• Identifique los tipos de archivos y directorios
encontrados en el directorio /etc/init.d.
Registre el número de ínodo y el contador de
enlaces para el archivo apache. Use el
comando find para ubicar todos los archivos
bajo el directorio /etc que usen el mismo ínodo
que apache.
81. Ejercicio #3: Identificar el
tipo de archivos
• Crear un directorio llamado /testdir. En este
directorio crea un archivo y una liga simbólica
que apunte a ese archivo. Determine si los dos
archivos usan el miso ínodo o son diferentes.
82. Ejercicio #4: Identificar el
tipo de archivos
• Crear un directorio llamado newdir dentro del
directorio /testdir. Identifique el ínodo que
usa, la cantidad de enlaces que tiene y el
nombre de otro archivo que use el mismo
ínodo que el directorio newdir.
83. Ejercicio #5: Identificar el
tipo de archivos
• Crea otro directorio debajo de newdir.
Verifique que el contador del enlace para el
directorio newdir cambia y encuentra cualquier
archivo nuevo que use el mismo ínodo que el
directorio newdir.
84. Capítulo #3
Uso de intérpretes de comandos y
administración de usuarios.
85. Administración de usuarios
• Una tarea importante de los administradores
de sistemas es la configuración de cuentas de
usuarios (accesos, seguridad, etc.).
• Cada usuario requiere:
– un único nombre,
– un número de identificador único (UID),
– un directorio propietario
– y un shell para iniciar,
– A qué grupos el usuario puede pertenecer.
86. Componentes principales
en una cuenta de usuario
• La siguiente es una lista de los principales componentes
de una cuenta de usuario:
– Nombre de usuario: Nombre único para el acceso.
– Password: Contraseña de hasta 256.
– UID number:
– Group identification (GID): /etc/group.
– Comment: Información que identifica al usuario.
– Directorio del usuario: El directorio en donde el usuario es
ubicado después de ingresar al sistema. Provee al usuario un
espacio de almacenamiento.
– Shell del usuario: Entorno de trabajo.
87. Cuentas de Usuario:
Información
• Los sistemas de archivos que almacenan
información de las cuentas de usuario y de los
grupos se encuentran en los siguientes
archivos:
– /etc/passwd
– /etc/shadow
– /etc/group
88. Cuentas de Usuario:
Información
• /etc/passwd: Usuarios autorizados al sistema que
tienen acceso.
• /etc/shadow: Es un archivo que contiene las
contraseñas cifradas. Aquí se configura la caducidad
de las contraseñas.
• /etc/group: Se encuentran todos los grupos que
existen en el sistema por default. Puede crear nuevos
grupos o modificar los existentes.
89. /etc/passwd
Es un archivo crítico y debe de abstenerse de modificarlo
manualmente (Puede usar Solaris Management Console -
SMC).
90. /etc/passwd
loginID:x:UID:GID:comment:home_directory:login_shell
loginID Nombre del usuario. Debe de ser único para cada usuario. El campo debe de
contener una cadena de no más de 8 caracteres (A-Z, a-z) y números (0-9).
El primer carácter debe ser una letra y al menos un carácter debe ser en
minúscula.
x Representa un lugar para la contraseña encriptada que se guarda en
/etc/shadow.
UID Contiene el número de UID usado por el sistema para identificar al usuario.
El número UID es desde 100 – 60000. Los valores entre 0 y 99 son
reservados para cuentas del sistema. El UID 60001 es reservado para la
cuenta nobody. UID está reservado para la cuenta noaccess. Se pueden
duplicar UID, pero esta práctica debe de evitarse.
91. /etc/passwd
loginID:x:UID:GID:comment:home_directory:login_shell
GID Contiene el número de GID usado por el sistema para identificar el
grupo primario del usuario. El rango de GID para los usuarios es de
100 hasta 60000. (0 – 99 están reservados para las cuentas del sistema).
comment Típicamente contiene el nombre completo del usuario.
home_directory Contiene la ruta completa con el nombre del directorio usado por el
usuario.
login_shell Define el shell que el usuario utilizará después de ingresar al sistema.
Existen seis tipos de shells posibles en el sistema operativo Solaris:
* Bourne shell
* Korn shell
* C shell
* Z shell
* Bash shell
* TC shell
92. /etc/shadow
Es un archivo crítico y
no se debería de editar
de manera directa
(usar SMC).
El siguiente es un
ejemplo del archivo
/etc/shadow que
contiene las cuentas
originales del sistema:
93. /etc/shadow
El formato del registro es:
loginID:password:lastchg:min:max:warn:inactive:expire:
loginID El nombre del usuario para acceder al sistema.
Password 13 caracteres cifrados. *LK* indica que la cuenta está bloqueada.
NP Contraseña No Válida. La contraseña debería de cumplir
con los siguientes requerimientos:
• Cada contraseña debe de contener cuando menos 6 caracteres y
contener al menos dos caracteres alfabéticos y al menos un
número o carácter especial.
•No deben de ser iguales al loginID o inverso al loginID.
94. /etc/shadow
El formato del registro es:
loginID:password:lastchg:min:max:warn:inactive:expire:
lastchg El número de días entre el 1-enero-1970 y la fecha de
modificación de la contraseña.
min Mínimo número de días requeridos para el cambio de
contraseñas.
max El máximo número de días que la contraseña es válida
antes que el usuario sea advertido para introducir una
nueva contraseña para el acceso.
95. /etc/shadow
El formato del registro es:
loginID:password:lastchg:min:max:warn:inactive:expire:
warm El número de días que el usuarios es advertido antes
de que la contraseña expire.
inactive El número de días inactivos permitidos antes de ser
bloqueada la cuenta del usuario.
expire Fecha cuando la cuenta del usuario expira (número de
días desde el 1, Enero, 1970). Después que exceda la
fecha el usuario ya no podrá tener acceso.
flag Rastrear intentos fallidos de acceso. La cuenta tiene 4
bits. El resto es reservado por uso futuro.
96. /etc/group
• Cada usuario pertenece a un grupo que es
referido al grupo primario.
• El número GID, dentro de la cuenta de usuario
indica el grupo primario.
• Cada usuario puede pertenecer hasta 15 grupos
adicionales (secundarios).
• /etc/group/ se agregan los grupos.
98. /etc/group
Cada registro en el archivo /etc/group contiene un
campo separados por “:”, ejemplo:
groupname:group-password:GID:username-list
99. /etc/group
groupname Contiene el nombre asignado al grupo. El nombre del grupo
contiene un máximo de 8 caracteres.
group-password Usualmente contiene un campo vacío o un asterisco (usado en las
primeras versiones).
GID Contiene el número del grupo. Éste es único en el sistema local y
debería ser único en la organización. Los números 0-99, 60001,
60002 y 65534 son reservados por el sistema. Los grupos de
usuarios están definidos en el rango de números 100 – 60000.
username-list Contiene una lista de nombres de usuario separados por coma “,”.
Representa los grupos secundarios al cual pertenecen los usuarios.
Por default, cada usuario puede pertenecer a un máximo de 15
grupos secundarios.
Nota: El número máximo de grupos secundarios lo establece el
kernel en el parámetro ngroups_max. Se puede reconfigurar en
/etc/system y permitir hasta 32 grupos. No todas las aplicaciones
soportan tantos grupos (p/ej NFS).
100. /etc/default/passwd
El archivo /etc/default/passwd permite establecer parámetros
de control para todos los usuarios en el sistema, p/ej:
•MAXWEEKS- Establece el máximo periodo (en semanas)
que la contraseña es válida.
•MINWEEKS- Establece el mínimo de tiempo para que la
contraseña sea cambiada.
•PASSLENGTH- Establece el número mínimo de caracteres
de la contraseña.
•WARNWEEKS- Establece el tiempo previo en que advierte
que la contraseña va a expirar.(no existe por default en el archivo, hay que crear este parámetro).
101. /etc/default/passwd
Otros parámetros
NAMECHECK #MINDIFF #MINLOWER
HISTORY #MINALPHA #MAXREPEATS
DICTIONLIST #MINNONALPHA #MINSPECIAL
DICTIONDBDIR=/var/passwd #MINUPPER #MINDIGIT
WHITESPACE=YES
Nota: Al forzar en crear contraseñas
muy complejas puedes provocar que
los usuarios las anoten en papeles.
102. Manejo de cuentas: línea
de comandos.
• useradd: Agrega nuevas cuentas de usuarios en el
sistema local.
• usermod: Modifica la cuenta de usuario en el
sistema local.
• userdel: Borra la cuenta de usuario en el sistema
local.
• groupadd: Agrega un nuevo grupo en el sistema.
• groupmod: Modifica un grupo en el sistema.
• groupdel: Borra un grupo del sistema.
103. Manejo de cuentas: línea
de comandos.
• smuser y smgroup, comandos agregados en Solaris 9
y 10.
• smuser: Modifica uno o más usuarios [add, modify,
delete, list].
• smgroup: Modifica uno o más usuarios [add, modify,
delete, list].
Nota: smuser y smgroup interactúan con el servicio de nombres y pueden usar la
función de autohome y soporta la administración remota. Además es equivalente al
SMC. Se puede usar a través de múltiples sistemas.
104. smuser & smgroup
smuser y smgroup para su uso requiere de la
autenticación en el SMC (Solaris Management
Console). El formato es:
/usr/sadm/bin/smuser subcommand [auth_args] -- [subcommand_arg]
auth_args: No es obligatorio.
-- Separa los subcomandos con los argumentos de autorización.
subcommand_arg Son varios argumentos que existen. (ver man smuser). Nota si
se ponen argumentos como comentarios y llevan un espacio en
blanco hay que ponerlo entre comillas “” .
105. Crear una cuenta de
usuario
• Usando useradd y smuser add.
• Se actualiza los archivos /etc/passwd y
/etc/shadow.
• Automáticamente se copia los archivos de
inicialización de /etc/skel al nuevo directorio.
107. useradd
useradd [-u uid] [-g gid] [-G gid [,gid,…]] [-d dir] [-m] [-s shell] [-c comment] loginname
-u uid Establece el número de UID para el nuevo usuario.
-g gid Define el grupo primario para el nuevo usuario.
-G gid Define el grupo secundario.
-d dir Define la ruta completa del home directory.
-m Crea el home directory sino existe.
-s shell Define la ruta completa para el shell de inicio del usuario.
-c comment Especifica cualquier comentario (nombre, ubicación, etc).
loginname Define el login de la cuenta de usuario
-D Muestra los parámetros por default que se aplican a userradd
108. Ejemplo: useradd
#useradd –u 100 –g other –d /export/home/newuser1 –
m –s /bin/ksh –c “Cuenta de Usuario Regular”
newuser1
64 bloks La cuenta del usuario está bloqueada cuando se
crea con useradd:
# #grep ‘newuser1’ /etc/shadow
newuser1:*LK*:12708::::::
#
109. Ejemplo: passwd
#passwd newuser1
New Password: 123pass
Re-enter new Password:123pass
La cuenta del usuario cambia:
#grep ‘newuser1’ /etc/shadow
newuser1:m0/Mo1fmSbYk9:12708::::::
#
110. Ejemplo: smuser add
smuser add [auth_args] – [subcommand_args]
Subcommand Definición
Argument
-c comment Especifica cualquier comentario (hasta 256 caracteres).
-d directory Define la ruta completa del nuevo usuario home directory. (hasta
1024 caracteres).
-g group Especifica el grupo primario del nuevo usuario.
-G group Especifica el grupo secundario del nuevo usuario.
-n Especifica el login de acceso al sistema del usuario.
-s shell Especifica la ruta completa del shell que usará el usuario.
-u El número ID del usuario. Sino se asigna el sistema lo hace con el
primer número disponible arriba de 100.
-x Establece si el home directory se auto monta.
autohome=Y/N
111. Ejemplo: smuser add
#/usr/sadm/bin/smuser add -- -n newuser2 –u 500 –g
other –d /export/home/newuser2 –c “Cuenta de Usuario
Regular 2” –s /bin/ksh –x autohome=N
La cuenta del usuario:
#grep ‘newuser2’ /etc/shadow
newuser2::12709::::::
#
112. Modificar una cuenta
• Se utiliza el comando usermod o smuser modfy
para modificar las cuentas de usuarios.
• Formato de usermod :
usermod [-u uid [-o]] [-g gid] [-G gid [, gid,…]] [–d dir]
[-m] [-s shell] [-c comment] [-l newlogname] loginname
113. usermod
usermod [-u uid [-o]] [-g gid] [-G gid [, gid,…]] [–d dir] [-m] [-s shell] [-c comment] [-l
newlogname] loginname
Opciones Definición
-o Permite duplicar el UID
-m Mueve el home directory a un nuevo directorio
especificado con la opción –d.
-l newlogname Cambia el nombre de login de la cuenta específica.
-f inactive Establece el número de días que la cuenta puede estar
inactiva antes de que sea bloqueada.
-e expire Establece la fecha en la que expira la cuenta (bloquea).
loginname Identifica el login del usuario.
114. Ejemplo: usermod
• Ejemplo para cambiar el nombre de login y del
home directory para newuser1 a usera.
#usermod –m –d /export/home/usera –l usera newuser1
115. smuser modify
El formato que se usa para smuser modify:
smuser modify [aut_args] – [subcommand_args]
#/usr/sadm/bin/smuser modify -- -n newuser2
–N userb –d /export/home/userb
**pregunta por la contraseña de root.
116. Borrar una cuenta
• userdel –r login Borra el usuario y su home directory
• userdel login Sólo borra la cuenta de usuario
• NOTA: Este comando no borra todos los archivos propietarios por el usuario,
sólo el home directory. El administrador de sistemas debe ejecutar el
comando find para ubicar todos los archivos del propietario para respaldarlos
o borrarlos.
• #/usr/sadm/bin/smuser delete -- -n userb Aquí no se
cuenta con el argumento –r por lo que se debe de borrar el home
directory de manera manual.
117. Crear un grupo
• El usuario root puede crear nuevos grupos en el sistema local
usando groupadd o smgroup add. Estos comandos agregan un
registro en el archivo /etc/group.
• groupadd [-g gid [-o] ] groupname
Opción Descripción
-g gid Asigna el número de GID para el nuevo grupo.
-o Permite que el número de GID sea duplicado.
• #groupadd –g 301 class1
118. smgroup add
El formato para smgroup add:
/usr/sadm/bin/smgroup subcommand [auth_args] – [subcommand_args]
Opción Descripción
-g gid Especifica el número de GID para el nuevo grupo.
-m group_number Especifica los nuevos miembros para agregar al grupo.
-n group_name Especifica el nombre del nuevo grupo.
#/usr/sadm/bin/smgroup add -- -n workgroup –g 123 –m usera
119. Modificar un grupo
• Se pueden utilizar los comandos groupmod o smgroup modify.
• groupmod [-g gid [-o]] [-n name] groupname
Opción Descripción
-g gid Especifica el nuevo número de GID para el grupo.
-o Permite el número de GID sea duplicado.
-n name Especifica el nuevo nombre del grupo.
• #groupmod –g 400 class1
120. smgroup modify
• El formato y las opciones para smgroup modify son:
/usr/sadm/bin smgroup subcommand [auth_args] -- [subcommand_args]
Opción Descripción
-n name Especifica el nombre de el grupo que se quiere
modificar.
-m new_member Especifica el los nuevos miembros el grupo.
-N new_group Especifica el nuevo nombre del grupo.
#/usr/sadm/bin/msgroup modify -- -n workgroup -N schoolgroup
121. Borrar un grupo.
• Se usan los comandos groupdel o smgroup delete para
borrar los grupos del archivo /etc/group.
#groupdel class1
#/usr/sadm/bin/smgroup delete -- -n schoolgroup
122. Investigación
• Equipo #5
Investigar cuáles son los problemas más
comunes que pueden presentarse para un usuario
al ingresas al sistema (login), tanto por línea de
comandos como en modo gráfico, y cuáles serían
las causas y sus soluciones.
123. Ejercicio del Capítulo #3
1. Deshabilita la ventana de registro de OS Solaris.
1. Crear un archivo solregis en el directorio /etc/default
2. Editar el archivo solregis e introducir la palabra DISABLE=1
2. Crear 2 nuevos grupos, 2 nuevos usuarios:
1. Como usuario root, abrir una terminal y crear los grupos class1y class2 con
los comandosgroupadd y con smgroup respectivamente.
2. #groupadd -g 101 class1
3. #/usr/sadm/bin/smgroup add -- -n class2 -g 102
4. #useradd -u 1003 -g 10 -G class1 -d /export/home/user3 -m -s /bin/ksh user3
5. passwd user3 (poner 123pass)
6. #/usr/sadm/bin/smuser add -- -n user4 -u 1004 -g 10 -G class1 -d
/export/home/user4 -s /bin/csh -x autohome=N
7. #passwd user4 (poner 123pass)
124. Ejercicio del Capítulo #3
• A través de Solaris Managemment Console agregar la cuenta de usuario
user5, locked1 y cleared1.
– En una termianl, teclear smc&
– Seleccione “esta computadora”, System Configuration, seleccione
Users, y seleccione User Templates (abrirá la herramienta de plantilas
de usuario).
– Agregue desde Menu Bar, con Add User Template. El nombre será
200user en descripción poner SA200.
– Clic en homedirectory y deseleccione Automatically Mount Home
Directoctory. Teclee el nombre de su sistema en el campo Home
Directory Server. OK.
125. Ejercicio del Capítulo #3
• Clic en User Accounts y agregar la cuenta user5 seleccionando Action,
después seleccione Add User, y seleccione From Template desde el menú.
Para agregar usuarios desde la plantilla (template) y en el campo de User
Name teclear user5 y seleccione teclee 1005 para el UID. Para la
contraseña, de clic en User Must Use, y teclee 123pass en ambos campos
de la contraseña. OK.
• En Solaris Management Console, agregar el usuario loccked1 y cleared1
utilizando la plantilla 200user. Cuando agregue al usuario cleared1
seleccione la opción de User Must Set Password at The Next Login.
Después de agregar ambos usuarios, doble clic en el usuario locked1 y
selecciones General, Seleccionar Account is Locked, que está debajo de
Account Availability.
Examina los archivos de configuración.
126. Ejercicio: Capítulo #3
• Preguntas:
– Examine el contenido del archivo /etc/passwd. ¿Cuál es la ruta completa
de los shells usados por los usuarios user3, user4 y user5?
– Examine el contenido del archivo /etc/shadow. ¿Qué texto se encuentra
en el campo de la contraseña para los usuarios locked1 y clreared1?
– La contraseña utilizada para los usuarios use3 al user5 es la misa. ¿Es la
misma cadena de caracteres que se muestra en el archivo /etc/passwd?
– Examine el contenido del archivo /etc/group. Verifique que user3 y el
user4 estén dentro de los miembros secundarios del grupo class1. ¿lo
están?.
– Intenta entrar al sistema con los usuarios locked1 y con el usuario
cleared1, anota qué es lo que sucede con cada uno y por qué sucede.
127. Ejercicio Capítulo #3
• Establecer la caducidad de la contraseña:
– Iniciar Solaris Management Console, ir a User Accounts, seleccionar de
la lista a user5. En las opciones de la contraseña, cambie:
• User Must Keep For: 1 (un día)
• Before Change Alert User: 1 (un día)
• User Must Change Whitin: 2 (dos días)
• Expires If Not Used For: 1 (un día)
• Log out de la sesión de root. Intente entrar con user5. ¿Qué sucede?
(cambie la contraseña si es necesario).
• Complete el acceso al sistema (login) como user5. Abra una terminal e
intente cambiar la contraseña. ¿qué sucede?.
128. Ejercicio: Capítulo #3
• Modificar las cuentas de usuario y de los grupos
– Crea un grupo llamado class3 con el GID 103 usando el comando groupadd.
– Con el comando usermod cambia el nombre de login del usuario locked1 a
user6, y el UID a 3001, y el home directory de locked1 a user6. Verifica que el
cambio sea realizado en el archivo /etc/passwd, y que el directorio haya sido
removido.
– Utiliza smuser modify para cambiar el shell de acceso del usuario user5 a
/bin/ksh. Verifica que los cambios realizados se vean reflejados en el archivo
/etc/passwd.
– Con el comando userdel borre la cuenta cleared1 y el home directory asociado.
Verifique que el directorio /export/home/cleared1 ya no existe.
– Utilice el comando smgroup para cambiar el nombre del grupo class1 a group1.
– Use el comando groupdel para remover el grupo class2. Verificar que el
comando usado haya borrado la entrada class2 del archivo /etc/group. ¿qué
grupos existen?