Taller de Sistemas Operativos

6
Taller de Sistemas Operavos Manual de Linux Ingeniería en Sistemas Computacionales José Carlos López Gaona 29-10-2015

description

Manual de LinuxTaller de Sistemas OperativosIng. En Sistemas ComputacionalesITC Celaya

Transcript of Taller de Sistemas Operativos

Taller de Sistemas Operativos

Manual de LinuxIngeniería en Sistemas Computacionales

José Carlos López Gaona29-10-2015

Introducción¿Qué es Linux?

Linux es un Sistema Operativo similar a UNIX y que cumple en su mayoría con los estándaresPOSIX. Está desarrollado bajo el modelo de Software libre y abierto.

Fue originalmente desarrollado para computadoras con arquitectura x86 pero con el paso deltiempo se ha ido agregando soporte para más de las mismas, inclusive más que otros sistemas.

ComandosEsta es una breve lista de los comandos que se usarán a lo largo de este manual.

mkdir nombre_directorio – Crea un directorio con el nombre especificado

cd [unidad:ruta] [..] – Cambia de directorio

cp origen destino – Copia un archivo/directorio

date – Muestra la fecha y permite cambiarla

ls – Muestra el contenido del directorio actual o un directorio especificado

rmdir – Elimina un directorio

mv – Mueve un archivo (también sirve para renombrar)

Hay comandos que pueden variar entre diferentes distribuciones de este sistema tan famoso,pero por lo regular los mencionados aquí se respetan entre una y otra variante. Una excepciónsería el comando ifconfig, este en sistemas operativos como Ubuntu y sus derivados, sirvepara mostrar la configuración actual de los adaptadores de red. En distribuciones como ArchLinux y Debian, este comando no existe, siendo usado por defecto el comando ip.

Programas de ConsolaAsí como hay programas gráficos que nos ayudan a hacer muchas cosas, existen programas quese manejan totalmente por consola y que nos ayudan con tareas más complicadas, tales comoreconfigurar la red de un adaptador en una PC, comprobar conectividad con otra máquina enred, y hasta conectarse remotamente e iniciar una sesión para trabajar en esa máquina(telnet).

Ifconfig / ip

Muestra la configuración actual del adaptador de red, y el mismo permite administrar laconfiguración de los mismos.

ping

Sirve para corroborar la conectividad entre un host y una dirección dada.

telnet

Permite iniciar una sesión remota en una PC.

useradd

Permite agregar un usuario al sistema

PrácticasCrear un directorio

Ejecute una terminal, al tenerla abierta, ingrese el comando mkdir <nombre> y despuéspresione Enter. Esto generará un directorio en su ubicación actual con el nombre dado. Puedecorroborar el que se creó de manera correcta al ejecutar el comando ls y ver el nombre deldirectorio desplegarse junto con los demás.

Eliminar un directorio

Para esto sólo basta con ejecutar el comando rmdir <nombre_directorio> y presionar Enter.Este nos eliminará el directorio. Nota: Si el directorio no se encuentra vacío, use elcomando rm –r, este le permitirá borrar el directorio junto con los archivoscontenidos.

Crear/Eliminar usuarios

La gestión de usuarios es a través del comando useradd el cual cuenta con los siguientesmodificadores:

● -d, --home-dir: Este permite especificar la ubicación del directorio hogar del usuario.Si no se especifica, el sistema agregará al usuario a la ruta especificada en la variableHOME del sistema, agregando el nombre del usuario al final del mismo.

● -g, --gid: Especifica el nombre o ID del grupo al cual pertenecerá el usuario, y el mismodeberá existir para poder ser asignado. Si no se especifica, dependerá de dos variablesdel sistema para la acción a seguir:

o Si la variable USERGROUPS_ENAB es verdadera, se creará un grupo con elnombre del usuario y se agregará a este.

o De caso contrario, se agregará al grupo definido por la variable GROUP● -G, --groups: Una lista complementaria de otros grupos a los cual el usuario también

pertenecerá.● -m, --create-home: En base al esqueleto de directorios, se genera un hogar para el

usuario (Carpetas como Documentos, Imágenes, etc…)● -s, --shell: Especifica cual será la Shell por defecto del usuario. Si no se define, se usará

la Shell defecto que está especificada en la variable del sistema.Crear un usuario

Ejecute una terminal e ingrese el siguiente comando:

useradd –m –g 1001 –d /users/u_01/ -s /bin/sh u_01

El comando hará lo siguiente:

● Creará un usuario llamado u_01● Le creará su directorio hogar (-m)● Su hogar estará en /users/u_01/ (-d)● Su Shell por defecto será sh (-s)● Pertenecerá al grupo 1001 (-g)

Al ejecutar el comando no debería obtener salida a menos que hubiese un problema o error.

Para corroborar la creación del usuario, puede hacer cat /etc/passwd y lo verá listado,también puede iniciar sesión con el mismo usando el comando su –l <nombre_usuario> ycorroborando su directorio hogar con el comando pwd. Obtendrá una salida similar a lasiguiente:

Eliminar un usuario

Para poder eliminar un usuario, use el comando deluser y puede usar las siguientes opciones:

● --force: Fuerza la eliminación del usuario● --remove-home: Elimina su directorio hogar● --remove-all-files: Elimina todos los archivos en el sistema que le pertenezcan al

usuario (si usa en conjunto la opción –remove-home, esta no tendrá efecto ya que la principal ya cubre esos archivos/carpetas, además de que se recomienda sólo usar la opción –remove-home)

Para demostración, elimine (si ha creado) el usuario previamente agregado, usando el siguientecomando:

deluser –force –-remove-home u_01

Obtendrá una salida similar a la siguiente:

Restringir usuarios

Puede definir limites a sus usuarios, ya sean locales, remotos, pertenezcan a un grupo o seanexclusivos. Tales límites incluyen:

● Tamaño de vaciado de logs del núcleo (core)● Tamaño máximo de datos alocados por una aplicación (data)● Tamaño máximo de archivo (fsize)● Tamaño máximo de memoria alocada (memlock)● Cantidad máxima de archivos abiertos (nofile)● Tiempo máximo de uso del procesador (cpu)● Números de inicio de sesión (maxlogins)● Prioridad de sus procesos (priority)● Cantidad máxima de archivos bloqueados que puede tener (locks)● Cambio de raíz (chroot)

Para esto, sólo modifique el archivo /etc/security/limits.conf y antes de la línea que estámarcada como # End Of File agregue sus restricciones, por ejemplo, si desea restringir alusuario u_01 con archivos de tamaño máximo 20kb, agregue la siguiente línea:

usr_01 hard fsize 20

Este comando restringe al usuario u_01 en tamaños de archivo en 20 kb.

Configurar/Conexión Telnet

Puede configurar telnet de diferentes maneras, ya sea para realizar una conexión a un equipo remoto o permitir la conexión de otros al suyo.

Conexión a equipos remotos

Para esto primero debe corroborar que tenga telnet instalado, sólo introduzca en la terminal elcomando telnet ? y si ve algo similar a la salida de abajo, puede continuar.

De caso contrario tendrá que instalar el mismo de la manera que su distribución lo maneje(Ubuntu/Debian: apt-get install <nombre_paquete>, ArchLinux: pacman –S <nombre_paquete> ó yaourt –S<nombre_paquete>)

Para realizar la conexión debe escribir telnet <ip_computadora> <puerto>.

De la siguiente manera, al proceder, le preguntará por el usuario con el cual se desea conectar(el nombre del usuario también se puede definir en la instrucción anterior agregando despuésde telnet la opción –l <nombre_usuario>). Si la computadora remota tiene habilitado elservidor telnet, la conexión debería funcionar de manera correcta y se le presentaría una Shellde sesión remota.

De caso contrario, siga los siguientes pasos para habilitar el servidor telnet en su computadora.

Habilitar servidor telnet

La siguiente manera de instalar/habilitar servicio telnet está basada en Debian, los pasos lospuede seguir de manera similar en Ubuntu pero probablemente no en otras distribucionesque no sean basadas en las antes mencionadas.

1) Instale los programas openbsd-inetd y telnetd2) Corrobore que en el archivo /etc/inetd.conf la siguiente línea no esté comentada:

a. telnet stream tcp nowait root /usr/libexec/telnetd telnetd3) Ahora inicie el servicio con el comando service openbsd-inetd start4) Si todo funcionó de manera correcta, puede probar la conectividad con la dirección

loopback, la cual lo haría iniciar sesión en su propia computadoraa. telnet 127.0.0.1, le aparecerá la información siguiente y se le requerirá un

usuario y contraseña para acceder al servicio.