Vous êtes sur la page 1sur 128

Sistema Operativo:

UNIX

14 de Septiembre de 2010
Chetumal, Quintana Roo

Sistema Operativo UNIX


Ingeniera en Redes

Captulo #1: Captulos

Qu es UNIX?
Historia
Variantes de UNIX
Conceptos Bsicos

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 comn, sin embargo tienen sus
particularidades y sus diferencias.

Por qu es importante UNIX?


35 Aos de evolucin: poderoso, flexible y verstil.
Existen variantes: ventajas para aprenderlos a usar slo
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 spercomputadoras.
Se estima que ms de 40 millones de computadoras usan
UNIX y 300 millones de personas lo usan.
(crecimiento debido especialmente por Linux).

Por qu es importante UNIX?


Herramientas y Utileras cooperativas.
Multiusuario y Multitarea.
Excelente entorno de red (preparada para
compartir informacin y procesamiento).
Portabilidad.

Historia
Principios de los 70s (Ken Thompson y
Dennis Ritchie).
Adopcin de UNIX por universidades.

Variantes de UNIX
UNIX versin V de AT&T.
UNIX de Berkeley.
Otras versiones se basan en una u otra.

Estndares de UNIX
System V 4.0
POSIX.

UNIX: Estructura

Aplicaciones
Comandos, Herramientas y Programas.
Aplicaciones Horizontales.
Aplicaciones Verticales.

UNIX: Filosofa
Tiene influencia en la estructura del sistema y
la forma en que trabaja.
TIP: Mantener la filosofa en mente.
La complejidad y el poder del sistema debe
mantenerse: sencillo, general y extensible.
Lo pequeo es hermoso

UNIX: Filosofa
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.

UNIX: Filosofa
UNIX tiene una gran cantidad de comandos y
herramientas.
Cada uno con una funcin especfica
Cada uno diseado para trabajar con los dems.
(Y son pequeos).
Pueden usarse con otros programas, utilizar
mnemotcnicos o ser muy complejos
Un buen ejemplo de esta filosofa: sort
Este soporte modular se apoya en |

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/).

UNIX: Nuevas Variantes


Berkeley Software Distribution BSD Variants:
FreeBSD, NetBSD, and OpenBSD

Solaris (Oracle)
Mac OS X
AIX
HP-UX
UNIXWARE
Tru64 UNIX
IRIX

UNIX: Timeline

Fuentehttp://www.levenez.com/unix/

UNIX: Timeline (ahora si)

Liga al Timeline: PDF-carta

Ejercicio:
20 minutos
Investigar diferencias entre Windows NT (o
superiores) y UNIX
Evolucin de UNIX y Windows NT.

UNIX: Futuro
Capacidad de crecimiento y de incorporar
nuevas tecnologas.
Desarrollo de nuevas herramientas, utileras y
capacidades de red.
Sigue desarrollando (dentro de cada variante).

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 ms.
Plataforma,
Soporte
Necesidades

Elegir una variante de


UNIX
Usar UNIX (aprender en casa no en el
trabajo).
Identificar necesidades.
Preguntar a los expertos.

Bibliografa
http://www.cs.wvu.edu/~jdm/classes/cs258/OS
cat/unix.html
http://www.levenez.com/unix/
http://www.osdata.com/
Afzal, Amir - Introduccin a UNIX Un
enfoque prctico

Captulo #2

Instalar UNIX (Solaris 10).


Inicio en sistema.
Estructura de los comandos.
Comandos sencillos.
Ayuda
Manejo de archivos.

Instalar UNIX (Solaris 10)


Oracle Solaris 10 9/10
El ISO mide 2.38 GB para x86
Instalarlos en:
VM
Particin
En todo el sistema

Existen varios tipos de instalacin.


Bsico, usuario, desarrolladores, servidor,
completo.

Opciones de Instalacin y
actualizacin.
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.

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 instalacin kiosk.

Solaris Custom JumpStart


software.
Se instala Solaris con un perfil personalizado
para diferentes tipos de sistemas..
Provee un manos-libres en la instalacin.
CLI.

Solaris Flash Archives.


Habilita la instalacin de varios sistemas
basados en una configuracin que se instal en
un sistema maestro (imagen).

Solaris WAN boot


installation.
Permite iniciar e instalar el software sobre una
red WAN utilizando HTTP.
Permite transferir el archivo de instalacin
(Solaris Flash) encriptado sobre una red
pblica.

Solaris Upgrade method.


Combina la nueva versin 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.

Solaris Live Upgrade


Software.
Duplica el entorno de arranque.
Permite ahorrar tiempo al actualizar sin
modificar los parmetros existentes.
GUI o CLI.

Requerimientos de
Hardware (Solaris 10)
El sistema operativo de Solaris 10 requiere lo
siguiente:
256 MB de memoria mnima recomendada.
Al menos 5 GB de espacio en disco duro.
Acceso a un CD-ROM/DVD o instalacin
desde un servidor.

Solaris: Componentes de
Software
El sistema operativo Solaris est organizado en
tres componentes:
Software Packages.
Software Clusters.
Software Groups.

Solaris: Componentes de
software.
Software
Packages

CDE
DEMOS

CDE
DTBUILDER

CDE
Developer
Man Pages

CDE Help
Developer
Env

CDE Includes

.
.

CDE Developer
Software Cluster

.
Configuration for
the Developer

Grupos de distribucin 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).

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

Gua de Pre-instalacin
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
impresin y de correo.
3. Ubicar el doble de cantidad de memoria fsica
en el sistema de archivos /var si planea usar
crash dump.

Gua de Pre-instalacin
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
instalacin 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 mnimo de sistemas de archivos. (para
actualizaciones).

Recordar
Por default, el mtodo de instalacin del
sistema operativo Solaris crea nicamente los
sistemas de archivos:
/ (root)
/export/home
swap

Pre-instalacin
Nombre del host
uname n

Direccin de la red
ifconfig a {comando}
ifconfig hme0 {comando}
/etc/netmasks {archivo}
/etc/defaultrouter {archivo}
/etc/resolv.conf {archivo}

Ejercicio: Para la
instalacin de Solaris
Sparc
# init 0

{o presionar Stop-A}

ok boot cdrom nowin

x86
Insertar el DVD / CD de Solaris.
Y seguir las instrucciones

Directorios
Generalmente los directorios son:
/
swap
Equipo #1 Buscar en qu se
utilizan esas particiones.
/var
/opt
/usr
/export
/export/home

VTOC
Cuando inicia la instalacin, el sistema inicia
escribiendo el Volume Table of Contents
(VTOC).
Esto se escribe en el archivo:
/etc/vfstab

Anlisis de Instalacin
Revisar el blog de registro:
/var/sadm/install_data/install_log
Revisar la tabla de sistemas de archivos:
/etc/vfstab

Introduccin al Directorio
Jerrquico del OS Solaris
Directorios Crticos

Directorios del Sistema


Importantes In-Memory

/ (root)

/lib

/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

Equipo #2

Nota: Los directorios In-Memory son


administrados por el Kernel y los
servicios del sistema. El usuario no
debe manipularlos manualmente
(crear, alterar o remover estos
directorios)

Introduccin al Directorio
Jerrquico 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

/etc/init.d

/etc/opt

/etc/rc#.d

/etc/security

/etc/skel

/etc/svc

/dev/pts

Equipo #3

/etc/zones

Introduccin al Directorio
Jerrquico 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

/usr/dt

/usr/include

/usr/jdk

/usr/kernel

/usr/lib

/usr/opt

/usr/sbin

/usr/spool

/var/tmp

Equipo #4

Comandos
Cambiar contrasea
#passwd rglz
# useradd D {Muestra Valores Default}
#useradd m d /export/home/rglz c Rubn
Glz s /bin/bash u 1000 g staff rglz

Comandos
Para verificar la creacin del usuario:
#cat /etc/passwd
Cambio de usuario:
#su rglz
Encontrar un archivo:
#find / -name core
#find / -name core 2 > /tmp/errores

Introduccin 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.

Nombre del archivo,


nodos y Data Blocks.
Nombre del Archivo
# de nodo

Data Blocks

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.

nodos
Son objetos que el SO Solaris usa para
registrar la informacin acerca del archivo.
En general los nodos contienen dos partes:
Contienen informacin acerca del archivo,
incluyen el propietario, sus permisos y su tamao.
Contienen apuntadores a los data blocks asociados
con el contenido del archivo.

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 tambin es
creada en el sistema de archivos.
El nodo sabe todo acerca del archivo menos el
nombre.

Actividad: nodos
Para saber el nmero de nodos libres:
# df e
Para saber el porcentaje de uso por sistema de
archivos:
# /usr/ucb/df i
Para saber cul comando df se est ejecutando:
# which df

Data Blocks
Son unidades de espacio en disco que son
usados para almacenar datos.
Archivos regulares, directorios y ligas
simblicas hacen uso de los data blocks.
Los archivos de los dispositivos (device files)
no almacenan datos.

Tipos de archivos.
Los archivos proveen
una manera de
almacenamiento de datos,
activar dispositivos
Permitir inter-procesos de
comunicacin.

Hay cuatro tipos


diferentes de archivos
principalmente:
Regulares o archivos
ordinarios.
Directorios.
Ligas simblicas
(symbolic links).
Archivos de dispositivos.

Tipos de Archivos
Archivos regulares, ligas simblicas y
directorios, todos almacenan uno o ms tipos
de datos.
Los archivos de dispositivos no almacenan
datos, slo proveen acceso a los dispositivos.
El comando ls permite distinguir los diferentes
tipos de archivos.

Actividad: ls
Realiza la siguiente actividad:
#cd /etc
#ls l {observa el primer carcter 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 carcter de las columnas}
qu caracteres son y qu significan?

Archivos Regulares

DATOS:
Texto
Datos Binarios
Imgenes
Datos de
Aplicacin
Bases de Datos

nodo
Archivo1
1282
Data
Blocks
Propsito:
Archivos regulares para
almacenar datos

Mtodos p/crear:
Editores de Texto
Compiladores
Programas de Aplicacin
Programas de Bases de
Datos
Comandos (p/e touch, vi, etc)

Directorios
Los directorios almacenan informacin que
asocia el nombre de los archivos con el nmero
de nodo.
A diferencia de los archivos regulares, que
pueden contener diferentes tipos de archivos de
datos, los directorios nicamente contienen la
asociacin de nombre-a-nodo.
Un directorio contiene muchos archivos de todo
tipo que estn lgicamente ubicados dentro del
directorio.

Directorio

DATOS:
Informacin de
directorio

nodo
Direc1
Data
4221
Blocks

Mtodos p/crear:
mkdir nombre_directorio

Archivo1=
nodo 1282
dirA =
Propsito:
nodo 5314
Almacenamiento que asocia
nombres con el nmero de nodo

Ligas Simblicos
Un enlace simblico es un archivo que apunta
a otro archivo.
Contienen la ruta del nombre del archivo al
cual apuntan.

Ligas Simblicos
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 simblicas y a los
archivos de los dispositivos.

Actividad: Ligas Simblicas


El tamao de las ligas simblicas siempre
coincide con el nmero de caracteres del nombre
de ruta, por ejemplo:
/bin apunta al directorio ./usr/bin
{el tamao de la liga simblica es 9 bytes}
# cd /
# ls l bin
{analiza el tipo de archivo, el tamao en bytes y hacia a dnde apunta}

Ejemplo: Liga Simblicos


Crear una liga simblica:
# ln s archivo1 enlace1 {llamadas ligas simblicas o suaves}

Enlace1
nodo 3561

Archivo1
nodo 1282

Data Blocks
./Archivo1

Data Blocks

Archivos de Dispositivos
Un archivo de dispositivo provee acceso a los
dispositivos.
A diferencia de los archivos regulares,
directorios y ligas simblicas, los archivos de
los dispositivos no usan data blocks.
La informacin del nodo en los archivos de
dispositivos contiene la referencia al
dispositivo.

Archivos de Dispositivos
Tamao en Bytes

Comando:
#more /etc/path_to_inst
Driver, no es el tamao

Particin #ls l /dev/dsk |more


Una larga lista de
archivos de dispositivos
y se muestra dos
nmeros separados por
una coma (Nmero de
dispositivo Mayor y
Menor)

Archivos de Dispositivos
El archivo del dispositivo cmdk@0,0, ocupa un nmero de nodo
90681. El nodo contiene el nmero menor y el mayor del
dispositivo que hace referencia a un dispositivo especfico, en este
caso a una particin.
cmdk@0,0

nodo 90681

Data Blocks
./Archivo1

Actividad
Para verificar que el driver del dispositivo est
disponible en el mdulo del kernel:
# modinfo w | grep w cmdk
# modinfo c | grep w dad
Los archivos de dispositivos caen en dos
categoras: Character-special devices y blockspecial devices.

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.

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 bsqueda aleatoria.

Ligas Duras
Es la asociacin 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
nodo 1282

Data Blocks

dir1
nodo 4221

Data Blocks
Archivo1=nodo 1282

El archivo1 est en el
directorio dir1. En dir1
el nombre archivo1
est asociado al nodo
1282. La liga dura
est asociada entre
archivo1 y el nodo
1282

Ejemplo
# cd /
# mkdir dir1
# touch archivo1
# ls l

Cantidad de ligas duras

{la segunda columna es quien lleva el conteo de las ligas}

Ejemplo: Crear nueva liga


dura
# ln archivo1 archivo2
# ls -l
# ls -li
#find . inum 1282

Ligas Duras
No se pueden crear ligas duras en discos duros
diferentes (sistemas de archivos).
No se pueden crear ligas duras a otros
directorios.

Ejercicio #1: Identificar el


tipo de archivos
1. Identificar la primera liga simblica que se
liste en el directorio / (root). Registre el
tamao de la liga simblica 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 simblica.
Identificar los tipos de archivos que se
encuentran en el directorio /dev/pts y las
ligas a qu tipo de archivos hacen referencia.

Ejercicio #2: Identificar el


tipo de archivos
Identifique los tipos de archivos y directorios
encontrados en el directorio /etc/init.d.
Registre el nmero 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.

Ejercicio #3: Identificar el


tipo de archivos
Crear un directorio llamado /testdir. En este
directorio crea un archivo y una liga simblica
que apunte a ese archivo. Determine si los dos
archivos usan el miso nodo o son diferentes.

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.

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.

Captulo #3
Uso de intrpretes de comandos y
administracin de usuarios.

Administracin de usuarios
Una tarea importante de los administradores
de sistemas es la configuracin de cuentas de
usuarios (accesos, seguridad, etc.).
Cada usuario requiere:
un nico nombre,
un nmero de identificador nico (UID),
un directorio propietario
y un shell para iniciar,
A qu grupos el usuario puede pertenecer.

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: Contrasea de hasta 256.
UID number:
Group identification (GID): /etc/group.
Comment: Informacin que identifica al usuario.
Directorio del usuario: El directorio en donde el usuario es
ubicado despus de ingresar al sistema. Provee al usuario un
espacio de almacenamiento.
Shell del usuario: Entorno de trabajo.

Cuentas de Usuario:
Informacin
Los sistemas de archivos que almacenan
informacin de las cuentas de usuario y de los
grupos se encuentran en los siguientes
archivos:
/etc/passwd
/etc/shadow
/etc/group

Cuentas de Usuario:
Informacin
/etc/passwd: Usuarios autorizados al sistema que
tienen acceso.
/etc/shadow: Es un archivo que contiene las
contraseas cifradas. Aqu se configura la caducidad
de las contraseas.
/etc/group: Se encuentran todos los grupos que
existen en el sistema por default. Puede crear nuevos
grupos o modificar los existentes.

/etc/passwd
Es un archivo crtico y debe de abstenerse de modificarlo
manualmente (Puede usar Solaris Management Console
-SMC).

/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 ms de 8 caracteres (A-Z, a-z) y nmeros (0-9).
El primer carcter debe ser una letra y al menos un carcter debe ser en
minscula.

Representa un lugar para la contrasea encriptada que se guarda en


/etc/shadow.

UID

Contiene el nmero de UID usado por el sistema para identificar al usuario.


El nmero 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 prctica debe de evitarse.

/etc/passwd
loginID:x:UID:GID:comment:home_directory:login_shell
GID

Contiene el nmero 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 estn reservados para las cuentas del sistema).

comment

Tpicamente 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 despus 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

/etc/shadow
Es un archivo crtico y
no se debera de editar
de manera directa
(usar SMC).
El siguiente es un
ejemplo del archivo
/etc/shadow
que
contiene las cuentas
originales del sistema:

/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 Contrasea No Vlida. La contrasea debera de
cumplir con los siguientes requerimientos:
Cada contrasea debe de contener cuando menos 6 caracteres y
contener al menos dos caracteres alfabticos y al menos un
nmero o carcter especial.
No deben de ser iguales al loginID o inverso al loginID.

/etc/shadow
El formato del registro es:
loginID:password:lastchg:min:max:warn:inactive:expire:
lastchg

El nmero de das entre el 1-enero-1970 y la fecha de


modificacin de la contrasea.

min

Mnimo nmero de das requeridos para el cambio de


contraseas.

max

El mximo nmero de das que la contrasea es vlida


antes que el usuario sea advertido para introducir una
nueva contrasea para el acceso.

/etc/shadow
El formato del registro es:
loginID:password:lastchg:min:max:warn:inactive:expire:
warm

El nmero de das que el usuarios es advertido antes


de que la contrasea expire.

inactive

El nmero de das inactivos permitidos antes de ser


bloqueada la cuenta del usuario.

expire

Fecha cuando la cuenta del usuario expira (nmero de


das desde el 1, Enero, 1970). Despus 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.

/etc/group
Cada usuario pertenece a un grupo que es
referido al grupo primario.
El nmero 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.

/etc/group
El siguiente ejemplo
son los registros por
default del archivo
/etc/group

/etc/group
Cada registro en el archivo /etc/group contiene un
campo separados por :, ejemplo:
groupname:group-password:GID:username-list

/etc/group
groupname

Contiene el nombre asignado al grupo. El nombre del grupo


contiene un mximo de 8 caracteres.

group-password

Usualmente contiene un campo vaco o un asterisco (usado en las


primeras versiones).

GID

Contiene el nmero del grupo. ste es nico en el sistema local y


debera ser nico en la organizacin. Los nmeros 0-99, 60001,
60002 y 65534 son reservados por el sistema. Los grupos de
usuarios estn definidos en el rango de nmeros 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 mximo de 15
grupos secundarios.
Nota: El nmero mximo de grupos secundarios lo establece el
kernel en el parmetro ngroups_max. Se puede reconfigurar en
/etc/system y permitir hasta 32 grupos. No todas las aplicaciones
soportan tantos grupos (p/ej NFS).

/etc/default/passwd
El archivo /etc/default/passwd permite establecer parmetros
de control para todos los usuarios en el sistema, p/ej:
MAXWEEKS- Establece el mximo periodo (en semanas)
que la contrasea es vlida.
MINWEEKS- Establece el mnimo de tiempo para que la
contrasea sea cambiada.
PASSLENGTH- Establece el nmero mnimo de caracteres
de la contrasea.
WARNWEEKS- Establece el tiempo previo en que advierte
que la contrasea va a expirar.(no existe por default en el archivo, hay que crear este parmetro).

/etc/default/passwd
Otros parmetros
NAMECHECK

#MINDIFF

#MINLOWER

HISTORY

#MINALPHA

#MAXREPEATS

DICTIONLIST

#MINNONALPHA

#MINSPECIAL

DICTIONDBDIR=/var/passwd

#MINUPPER

#MINDIGIT

WHITESPACE=YES
Nota: Al forzar en crear contraseas
muy complejas puedes provocar que
los usuarios las anoten en papeles.

Manejo de cuentas: lnea


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.

Manejo de cuentas: lnea


de comandos.
smuser y smgroup, comandos agregados en Solaris 9 y
10.
smuser: Modifica uno o ms usuarios [add, modify,
delete, list].
smgroup: Modifica uno o ms usuarios [add, modify,
delete, list].

Nota: smuser y smgroup interactan con el servicio de nombres y pueden usar la funcin de
autohome y soporta la administracin remota. Adems es equivalente al SMC. Se puede
usar a travs de mltiples sistemas.

smuser & smgroup


smuser y smgroup para su uso requiere de la
autenticacin 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 autorizacin.

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 .

Crear una cuenta de


usuario
Usando useradd y smuser add.
Se actualiza los archivos /etc/passwd y
/etc/shadow.
Automticamente se copia los archivos de
inicializacin de /etc/skel al nuevo directorio.

useradd
Formato useradd:
useradd [-u uid] [-g gid] [-G gid [,gid,]] [-d
dir] [-m] [-s shell] [-c comment] loginname

useradd
useradd [-u uid] [-g gid] [-G gid [,gid,]] [-d dir] [-m] [-s shell] [-c comment] loginname

-u uid

Establece el nmero 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, ubicacin, etc).

loginname

Define el login de la cuenta de usuario

-D

Muestra los parmetros por default que se aplican a userradd

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::::::
#

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::::::
#

Ejemplo: smuser add


smuser add [auth_args] [subcommand_args]
Subcommand
Argument

Definicin

-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 nmero ID del usuario. Sino se asigna el sistema lo hace con el


primer nmero disponible arriba de 100.

-x
Establece si el home directory se auto monta.
autohome=Y/N

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::::::
#

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

usermod
usermod [-u uid [-o]] [-g gid] [-G gid [, gid,]] [d dir] [-m] [-s shell] [-c comment] [-l
newlogname] loginname
Opciones

Definicin

-o

Permite duplicar el UID

-m

Mueve el home directory a un nuevo directorio


especificado con la opcin d.

-l newlogname

Cambia el nombre de login de la cuenta especfica.

-f inactive

Establece el nmero de das 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.

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

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 contrasea de root.

Borrar una cuenta


userdel r login Borra el usuario y su home directory
userdel login
Slo borra la cuenta de usuario
NOTA: Este comando no borra todos los archivos propietarios por el usuario,
slo 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.

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
Opcin

Descripcin

-g gid

Asigna el nmero de GID para el nuevo grupo.

-o

Permite que el nmero de GID sea duplicado.

#groupadd g 301 class1

smgroup add
El formato para smgroup add:
/usr/sadm/bin/smgroup subcommand [auth_args] [subcommand_args]
Opcin

Descripcin

-g gid

Especifica el nmero 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

Modificar un grupo
Se pueden utilizar los comandos groupmod o smgroup modify.
groupmod [-g gid [-o]] [-n name] groupname
Opcin

Descripcin

-g gid

Especifica el nuevo nmero de GID para el grupo.

-o

Permite el nmero de GID sea duplicado.

-n name

Especifica el nuevo nombre del grupo.

#groupmod g 400 class1

smgroup modify
El formato y las opciones para smgroup modify son:
/usr/sadm/bin smgroup subcommand [auth_args] -- [subcommand_args]
Opcin

Descripcin

-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

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

Investigacin
Equipo #5
Investigar cules son los problemas ms
comunes que pueden presentarse para un usuario
al ingresas al sistema (login), tanto por lnea de
comandos como en modo grfico, y cules seran
las causas y sus soluciones.

Ejercicio del Captulo #3


1. Deshabilita la ventana de registro de OS Solaris.
1.
2.

Crear un archivo solregis en el directorio /etc/default


Editar el archivo solregis e introducir la palabra DISABLE=1

2. Crear 2 nuevos grupos, 2 nuevos usuarios:


1.
2.
3.
4.
5.
6.
7.

Como usuario root, abrir una terminal y crear los grupos class1y class2 con los
comandosgroupadd y con smgroup respectivamente.
#groupadd -g 101 class1
#/usr/sadm/bin/smgroup add -- -n class2 -g 102
#useradd -u 1003 -g 10 -G class1 -d /export/home/user3 -m -s /bin/ksh user3
passwd user3 (poner 123pass)
#/usr/sadm/bin/smuser add -- -n user4 -u 1004 -g 10 -G class1 -d
/export/home/user4 -s /bin/csh -x autohome=N
#passwd user4 (poner 123pass)

Ejercicio del Captulo #3


A travs 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 descripcin poner SA200.
Clic en homedirectory y deseleccione Automatically Mount Home
Directoctory. Teclee el nombre de su sistema en el campo Home
Directory Server. OK.

Ejercicio del Captulo #3


Clic en User Accounts y agregar la cuenta user5 seleccionando Action,
despus 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
contrasea, de clic en User Must Use, y teclee 123pass en ambos campos
de la contrasea. OK.
En Solaris Management Console, agregar el usuario loccked1 y cleared1
utilizando la plantilla 200user. Cuando agregue al usuario cleared1
seleccione la opcin de User Must Set Password at The Next Login.
Despus 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 configuracin.

Ejercicio: Captulo #3
Preguntas:
Examine el contenido del archivo /etc/passwd. Cul 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 contrasea para los usuarios locked1 y clreared1?
La contrasea 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 estn dentro de los miembros secundarios del grupo class1. lo
estn?.
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.

Ejercicio Captulo #3
Establecer la caducidad de la contrasea:
Iniciar Solaris Management Console, ir a User Accounts, seleccionar
de la lista a user5. En las opciones de la contrasea, cambie:

User Must Keep For: 1 (un da)


Before Change Alert User: 1 (un da)
User Must Change Whitin: 2 (dos das)
Expires If Not Used For:1 (un da)

Log out de la sesin de root. Intente entrar con user5. Qu sucede?


(cambie la contrasea si es necesario).
Complete el acceso al sistema (login) como user5. Abra una terminal e
intente cambiar la contrasea. qu sucede?.

Ejercicio: Captulo #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?