You are on page 1of 53

Centos 7.

LINUX
ADMINISTRA
CIÓN
Administración

Usuario de Windows
CURSO: Linux Administración (Linux I)

Instructor: asolis@semipresencial.upla.edu.pe

Horario: Sábado de 13:00 pm – 16:00 pm

Duración: 24hrs/8 clases

Calificación: Ejercicios en clase.

Nota mínima: 14
INDICE

1.- Sistema Operativo Linux

 Características
 Formas de acceso
 Comandos básicos

2.-Shell

 Características:
 Línea de comando.
 Sustitución de nombres de archivo.
 Expansión de variables.
 Redirección de entrada y salida.
 Lenguaje de programación interpretado.

3.- Sistema de archivos

 Comandos básicos.
 Permisos
 Mascara de usuario

4.- Utilitarios

 mail
 tar
 vi

5.- Instalación

 Configuración de la tarjeta de red


 Administración de paquetes

6.- Administración de servicios

7.- Administración de usuarios.

8.- Compartición de archivos.


I SISTEMA OPERATIVO LINUX
Programa que se encarga de administrar los recursos de un sistema de cómputo.

CARACTERISTICAS
Copia las características UNIX

Multitarea

EL SO puede ejecutar múltiples procesos simultáneamente.

Multiusuario

El sistema soporta múltiples usuarios simultáneamente.

Multiplataforma

Se puede ejecutar en diferentes plataformas de hardware.

El acceso al servidor se realizó, inicialmente, utilizando terminales y el puerto serie, actualmente


se usa un programa conocido como "emulador de terminal", el cual puede utilizar el protocolo
de red TCP/IP y alguno de los protocolos de acceso remoto (TELNET, SSH, RSH...), se recomienda
utilizar SSH como protocolo de acceso remoto, ya que proporciona encriptación punto a punto
de la comunicación entre el servidor y el cliente, el emulador a usar en el laboratorio es Putty.

Datos de acceso

Protocolo: ssh

Servidor: 172.17.0.242

Nombre de usuario: user# donde #=1..20

Clave: el mismo nombre del usuario.

COMANDOS BÁSICOS:
id (identification)

Proporciona los datos de identificación del usuario: UID, GID y los grupos al cual pertenece

hostname

Proporciona el nombre del Servidor.

uname (unix name)

Proporciona el tipo de unix que se está ejecutando


date

Proporciona la fecha y hora del sistema

cal (Calendar)

Proporciona el calendario del mes actual.

Proporciona la lista de usuarios conectados al sistema

who

Proporciona la lista de usuario conectados al sistema

who am i

Datos de conexión del usuario.

COMANDOS PARA VER EL CONTENIDO DE LOS ARCHIVOS:


cat (concat)

Muestra el contenido de un archivo

tail

Muestra las 10 últimas lineas de un archivo

head

Muestra las 10 primeras lineas de un archivo

more

Muestra un archivo por páginas. (Cada página tiene el número de líneas que soporta el terminal.)

COMANDOS DEL SISTEMA DE ARCHIVOS (BÁSICOS)


ls (list)

Muestra el contenido de un directorio

cd (change directory)

Cambia el directorio de trabajo


pwd (program work directory)

Muestra el directorio de trabajo actual.

touch

Actualiza la fecha de un archivo por la actual, si no existe lo crea.

COMUNICACION CON OTROS USUARIOS EN LINEA

write nombreUsuario

Permite enviar un mensaje a nombreUsuario, el mensaje irrumpira el terminal del usuario.

talk usuario

Permite establece una comunicación bidireccional entre 2 usuarios (chat)

echo

Publica el parámetro en el terminal.

COMANDOS PARA EXTRACCIÓN DE CONTENIDO DE UN ARCHIVO:

cut (cortar)

Extrae "columnas" de un archivo.

Cada carácter representa una columna.

USOS:

cut -c1 /etc/passwd

cut -c1,5,6 /etc/passwd

cut -c1,5-10,30,40- /etc/passwd

Uso con archivos de texto delimitado.

Un archivo de texto delimitado es una suerte de tabla de una base de datos en la cual cada
campo está separado por un carácter delimitador.
cut

Permite extraer cada campo, indicando el carácter delimitador con la opción d, y los campos a
extraer con la opción f (field)

grep (get regular expression)

Extrae líneas de un archivo, siempre y cuando contengan lo indicado por la expresión regular
grep <es archivo>

Expresión Regular

Cadena de texto que especifica un patrón:

abc los caracteres abc

. Cualquier carácter

[abcd] cualquier caracter incluido en los corchetes

[^abc] cualquier caracter excepto los contenidos en los corchetes

^abcd la cadena abcd al inicio de la linea

abcd$ la cadena abcd al final de la linea

\<abc la cadena abc al inicio de la palabra

abc\> la cadena abc al final de la palabra


II SHELL
El shell es un programa que le permite al usuario interactuar con el sistema operativo.

CARACTERISTICAS
1.- Proporcionar una línea de comandos y realizar su análisis.

2.- Realizar la sustitución de nombres de archivos.

3.- Realizar la expansión de variables.

4.- Implementar la redirección de entrada y salida.

5.- Proporcionar un lenguaje de programación interpretado (shell script)

LINEA DE COMANDOS
Área del programa donde el usuario puede escribir los comandos:

prompt cursor enter

La línea de comandos está comprendida por el prompt, el cual indica que la línea de comandos
está activa, el cursor, que es la posición desde la cual el usuario inicia su escritura y la tecla enter,
que indica que el usuario finalizo de escribir su comando.

Al presionar enter el shell analiza la línea de comandos en busca de los caracteres especiales
que indicaran la utilización de una característica del shell.

La línea de comandos tiene varios prompt que le indican al usuario que se encuentra en una fase
especial de utilización de la línea de comandos.

Prompt principal
Generalmente es una cadena de texto terminada en $ (usuario normal) o # super usuario (root)

Prompt secundario
Indicado por el carácter > e indica que el usuario se encuentra en la escritura de un comando
multilinea (cadena larga, secuencia script)

Caracteres especiales

Espacio en blanco es usado como separador de parámetros.

Sustitución de nombres de archivo


Los siguientes caracteres harán que el shell busque por nombres de archivos que
cumplan con el patrón:

| carácter | SIGNIFICADO |

===========================================================

| * | Cualquier cadena de caracteres |

| ? |Un solo carácter |

| [abc] |Un carácter de los contenidos en los corchetes|

| [a-d] |Un carácter de los contenidos en el rango |

| [^abcs] |Un carácter, excepto los contenidos en los corchetes|

EXPANSIÓN DE VARIABLES
Está acción la realiza el shell al encontrar el símbolo $ en la línea de comandos.

DEFINICIONES:

VARIABLE

Área de memoria con nombre que almacena un valor.

Entorno

Conjunto de variables creadas para la sesión, comprenden las variables del


sistema y las variables del usuario.

Variables del sistema.

Almacenan una característica de la sesión, su nombre se escribe en mayúsculas.

Variables del sistema

echo $PATH: Lista de directorios donde el shell busca por ejecutables.

echo $PATH | tr : \\n

Asignando variables propias locales de ámbito a nivel de terminal.

# export ARTURO=”Arturo Solis Flores”

Si queremos visualizarlo será:


# echo $ARTURO

Arturo Solis Flores

echo $HOME: Directorio hogar

PS1: Prompt principal

PS2: Prompt secundario

MAIL: Casilla de correo

Redirección de entrada y salida

Premisa de diseño del sistema operativo:

"todo y absolutamente todo es un archivo"

Esta premisa permite ver cualquier dispositivo de hardware (CPU, RAM, Disco, Terminal,
Modem) como un archivo, simplificando así, el número de operaciones a realizar con el
dispositivo.

La representación como archivos de los dispositivos de hardware se encuentra en el


directorio /dev (devices)

ARCHIVO: Flujo de bits.

Cada vez que ejecutamos un programa y este obtiene tiempo de ejecución en el CPU y espacio
de memoria para sus datos, se dice que hemos creado un proceso.

Cada proceso recibe tres archivos:

(0)-------------> proceso -------------> (1)

|
|
|
|
|
(2)
0 stdin

Archivo de entrada estándar

Es el archivo desde donde el proceso toma sus datos de entrada.


1 stdout

Archivo de salida estándar

Es el archivo donde el proceso almacena sus resultados.

2 stderr

Archivo de salida de error estándar

Es el archivo donde el proceso almacena los mensajes de error.


Inicialmente el shell asocia estos tres descriptores con el archivo que representa el terminal del
usuario (tty), de manera que, si el proceso toma datos, los toma del terminal, si el proceso
genera resultados, los almacena en el terminal, y si el proceso genera mensajes de error, lo
almacena en el terminal.

Redirección de salida

Comando > archivo

Comando >> archivo

Redirección de entrada

Comando < archivo

Comando << etiqueta

Redirección entre comandos

comando1 | comando2 | comando3 |...........| comando n

comando1 comando2
EJERCICIOS 01:

1.- Crear un archivo que contenga los nombres de los usuarios conectados al sistema.

2.- Crear una variable que contenga los nombres de los usuarios conectados al sistema.

3.- Crear un archivo que contenga la lista de usuarios conectados al sistema su ip de conexión y
el terminal que están usando.

4.- Crear un archivo que contenga las líneas de la 15 a la 20 del archivo /etc/passwd

5.- Extraer del archivo /etc/passwd las lineas de definicion de los usuarios user3, user5, user7 y
almacenarlos en el archivo ejercicio5

6.- Publicar la fecha del día en el formato: 21 de julio del 2018


III SISTEMA DE ARCHIVOS
Enlace:

https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

Parte del SO encargado de almacenar y recuperar información desde un medio físico (disco duro,
usb)

1: Particionar el disco duro

Dividir en partes lógicas

2: Formatear cada partición

El formato establece como se almacenar la información dentro de la partición teniendo en


cuenta las características del SO (multiusuario)

3: Representación lógicas;

Cada partición debe poder ser utilizado por el usuario o el sistema operativo manera que pueda
reconocer en que partición se está almacenando la información.

El formato utilizado en las distribuciones de Linux es un derivado del UFS (UNIX FILE SISTEM):
EXT2FS, ext3fs,xfs...

En este formato cada partición renumera los bloques del disco para iniciar el conteo en el bloque
0 y le asigna un uso especial a los bloques.

|bloque | nombre | características

|- - - |---- |-----

|0 | boot bloque | bloque destinado a contener el programa de inicio del sistema


operativo.

|1 | súper block | bloque que almacena las características de la partición.

| | | Código de identificación de la parte fecha y hora de creación

Fecha y hora de modificación

fecha y hora de actualizaciones SB


Lista de bloques libres.

Lista de inodos libres

# total de bloques

# total de i nodos.

tamaño de bytes.

|2 | lista de i nodos | bloque que almacena los i nodos.

DEFINICIONES BÁSICAS:

|archivo | flujo de bits

|i-nodo | estructura que almacena las características de los archivos se representa

Por un número y almacena los siguientes datos:

Tipo de archivo.

Representado por una letra:

- guio o f para archivo regular

-d directorio

-l enlace simbólico

-p tubería con nombre

-s socket

-c dispositivo de carácter.

-b dispositivo de bloques

Cadena de permisos.
Numero de enlaces.

uid del dueño del archivo

gid del grupo del archivo.

Tamaño de bytes

Fecha y hora de creación.

Fecha y hora de modificación

Fecha y hora de modificación del i nodo.

Lista de bloque que almacena el contenido del archivo.

Premisa del diseño: Todo y absolutamente todo es un archivo.

Esta premisa permite simplificar la comunicación con el hardware, considerando cada


dispositivo físico como un archivo (memoria, ram, disco duro, terminal....) solo es necesario
realizar las operaciones básicas sobre archivos (abrir, leer, escribir, cerras) para comunicar con
los dispositivos, la representación como archivo de los dispositivos se encuentra en el directorio
/dev.

Enlace: asociación entre el i nodo y el nombre del archivo se conoce como "enlace"

Lista todos los archivos del directorio etc que empiecen por t e insértalo en un archivo de texto.

Lista todos los archivos del directorio tmp e insértalo en un archivo de texto

Listar todos los archivos del directorio etc que no empiecen con b
Directorio

Archivo que almacena enlaces.

Un directorio es un contenedor de enlaces.

Visualmente un directorio contiene archivos y subdirectorios.

Comandos:

ln(link)

Agrega enlaces a un i nodo.

Sintaxis:

ln opciones origen y destino.

Agregara un enlace con el nombre especificado por "destino" al

i nodo enlazado al nombre especificado por "origen"

Si "destino" representa un directorio, el enlace se creara dentro del directorio con el mismo
nombre del "origen"

Nombres de enlaces predeterminados:

. Directorio actual

.. Directorio padre.

OPCIONES:
s (symbolic)
Crea un enlace simbólico, se utiliza con directorios o con archivos de diferentes partición.

touch

Actualiza la fecha de modificación de un archivo

si el archivo no existe lo crea sin contenido.

rm (remove)

Borra un archivo, si el archivo tiene más de un enlace borra el enlace indicado.

Si el archivo tiene un solo enlace borra el enlace y pasa la lista de bloques del archivo a la lista
de bloques libres,

Finalmente libera el i nodo y lo devuelve a la lista de i nodos libres.

Sintaxis

rm opciones archivos

opciones

-i interactive

consulta antes de borrar

-f force

no consulta antes de borrar

-r recursive

inicia un borrado recursivo:

a) si se intenta borrar un directorio, primer se borrara el contenido del directorio.

b) si el contendo del directorio es un directiorio volver a a)


mkdir crea un directorio.

sintaxis:

-p (parent)

crea los directorios padres no existentes.

rmdir borra un directorio.

-p borra los directorios padres (deben de estar vacios)

La cadena de permisos implementa la seguridad a nivel del sistema de archivos, definiendo que
operaciones pueden realizar los usuarios sobre los archivos.

La cadena de permisos en individual (no se heredan)

Cada archivo almacena sus cadena de permisos en el i-nodo.

USUARIOS
Este sistema identifica tres usuarios.

Usuario dueño

Es el que creo el archivo, se puede cambiar con el comando (change owner)

Usuario del grupo

Usuario que pertenece al grupo del archivo, se puede cambiar con el comando (change group)

Usuarios otros

Usuario que no es del dueño y no pertenece al grupo del archivo.

REDIRECCIONANDO
Usando un solo > si el fichero existe lo sobre escribe.

Usando dos >> si existe añade el texto al final.

Los mensajes de error se puedan redirigir de forma independiente usando 2> 0 2>>

Para redirigir todos los mensajes se usan &> o &>>

Ejemplo:
Copiando archivo y carpetas
IV PERMISOS
Cada usuario puede realizar las siguientes acciones sobre el archivo:

read(leer)

write(escribir)

execute (ejecutar)

El usuario puede ejecutar el contenido del archivo, si el archivo es del tipo directorio el usuario
puede ingresar al directorio.

Las operaciones que pueden ser r w x (en ese orden) si el usuario aparece el carácter asociado
con la operación, el usuario puede realizar la operación si en su lugar aparece un guion el usuario
no puede realizar la operación.

|Cadena |Significado |

En el i-nodo se almacena la siguiente cadena de permisos.

rwx rwx r --

Dueño grupo otros

Equivalente numérico

Si representamos la presencia de un permiso con 1 y la ausencia de permiso con 0, obtendremos


equivalente decimal de la cadena de permisos

|r|w|x|#|

0 0 0 0

0 0 1 1

0 1 0 2

0 1 1 3

1 0 0 4

1 0 1 5

1 1 0 6

1 1 1 7
rwx r x r-- >> 7 5 4

Dibuja un esquema)

chmode (change mode)

Este comando es utilizado para cambiar la cadena de permisos de un archivo

Esta operación puede ser realizada por el dueño del archivo o por el super usuario

sintaxis

chmode opcciones de permiso

opciones:

R cambio recursivo

cambia los permisos a todos los archivos dentro de un directorio

Permisos

Modo numérico

Se utiliza la representación numérica de los permisos

Ejemplo

chmod 700 lista

chmod 666

Se define el siguiente usuario

u dueño g grupo o otros

a todos

Se define las siguientes operaciones

+ agregar

- quitar

= asignar

Los permisos conocidos r w x


Cada modificación se especifica de la siguiente manera.

usuarioOperacionPermisos

Ejemplo

u+w (dueño más escritura)

g-r (grupo menos lectura)

se puede agrupar los usuarios

go-r (grupo y otros menos lectura)

Se puede agrupar los permisos

u+rwx

Se puede se realiza simultáneamente separado por comas

u+rw, g-rw, o=

MASCARA DEL USUARIO


Es la técnica usada para asignar permisos a los archivos al momento de ser creados.

Permisos totales ---> rwx rwx rwx 777 777

mascara ---> --- --w- 002 775

_________________________________________

Permisos de directorio rwx rwx r-x 775 002

--x- -x-- x 111

------------------------------------------------------------------

Permisos archivos rw- rw- r-- 664

777

700

---

077
SISTEMA DE ARCHIVOS
Visualmente podemos representar el sistema de directorios de nuestro sistema de archivos
como un árbol invertido, donde la raiz es el directorio de inicio (/) de cual "nacen " los demás
directorios del sistema de archivo,

La definición del estándar lo vemos en:

A nivel de los 6 cursos

Y luego 770 dentro de los cursos como css donde afectara a todas las clases: clase1, clase2,
clase3, clase4.

Finalmente, dentro de cada clase para que afecte a cada ejercicio: ejercicio1, ejercicio2,
ejercicio3.
DIRECTORIOS PRINCIPALES

|Directorio |Descripción

|bin |Aplicaciones binarios de comando que son esenciales para que estén disponibles

Para una sesión de usuario único o bien para todos los usuarios. Multiusuario

Incluye cat ls cp

sbin

etc Contiene archivos de configuración del sistema específicos del host de todo

el sistemas

boot Archivos cargadores de arranque por ejemplo los núcleos a menudo en una
partición o disco aparte

dev Contiene archivos especiales d bloques y características asociados a dispositivo


hardware

home Contiene los directorio de trabajo de todos los usuario home comandos
adicionales del sistema de archivos

df(disk free) Muestra es espacio libre de cada partición montada

mount Muestra las particiones y sus correspondientes puntos de montaje


umask Permite definir la mascar del usuario.

cp Copy Copia un archivo desde una ubicación a otra.

Sintaxis:

cp opciones origen destino

Opciones

r indica un copiado recursivo

Origen

Archivo que se va a copiar

Destino

Lugar a donde se va a copiar el archivo, si se indica un directorio el archivo se copia al


directorio con el mismo nombre

mv move

Mueve un archivo desde una ubicación a otra.

Sintaxis

mv opciones origen destino

Opciones

v muestra cada operación

u update, mueve solo si el origen es más nuevo que el destino o cuando el archivo no
existe en el destino.

n no sobrescribe los archivos existente.

chgrp change group

Cambia el grupo de un archivo, el usuario debe permanecer al grupo al cual va a cambiar.


Sintaxis:

chgrp opciones grupo archivos.

Opciones

- R cambia el grupo al directorio y su contenido.

find

El comando find permite buscar archivos con determinadas características

Sintaxis

find ruta características acciones

ruta

Directorio desde donde se inicia la búsqueda.

Característica del archivo que estamos buscando.

iname

Nombre o parte del nombre

type

Tipo del archivo

perm

Permisos del archivo

group

Grupo del archivo

user

Dueño del archivo


EJERCICIOS

1- Observe el siguiente árbol de directorios, cree la misma estructura tal y como esta descrita:
cursos/
├── [drwxrwx---] css
│ ├── [drwxrwx---] clase1
│ │ ├── [-rw-r-----] ejercicio1
│ │ ├── [-rw-r-----] ejercicio2
│ │ └── [-rw-r-----] ejercicio3
│ ├── [drwxrwx---] clase2
│ │ ├── [-rw-r-----] ejercicio1
│ │ ├── [-rw-r-----] ejercicio2
│ │ └── [-rw-r-----] ejercicio3
│ ├── [drwxrwx---] clase3
│ │ ├── [-rw-r-----] ejercicio1
│ │ ├── [-rw-r-----] ejercicio2
│ │ └── [-rw-r-----] ejercicio3
│ └── [drwxrwx---] clase4
│ ├── [-rw-r-----] ejercicio1
│ ├── [-rw-r-----] ejercicio2
│ └── [-rw-r-----] ejercicio3
├── [drwxrwx---] html
│ ├── [drwxrwx---] clase1
│ │ ├── [-rw-r-----] ejercicio1
│ │ ├── [-rw-r-----] ejercicio2
│ │ └── [-rw-r-----] ejercicio3
│ ├── [drwxrwx---] clase2
│ │ ├── [-rw-r-----] ejercicio1
│ │ ├── [-rw-r-----] ejercicio2
│ │ └── [-rw-r-----] ejercicio3
│ ├── [drwxrwx---] clase3
│ │ ├── [-rw-r-----] ejercicio1
│ │ ├── [-rw-r-----] ejercicio2
│ │ └── [-rw-r-----] ejercicio3
│ └── [drwxrwx---] clase4
│ ├── [-rw-r-----] ejercicio1
│ ├── [-rw-r-----] ejercicio2
│ └── [-rw-r-----] ejercicio3
├── [drwxrwx---] js
│ ├── [drwxrwx---] clase1
│ │ ├── [-rw-r-----] ejercicio1
│ │ ├── [-rw-r-----] ejercicio2
│ │ └── [-rw-r-----] ejercicio3
│ ├── [drwxrwx---] clase2
│ │ ├── [-rw-r-----] ejercicio1
│ │ ├── [-rw-r-----] ejercicio2
│ │ └── [-rw-r-----] ejercicio3
│ ├── [drwxrwx---] clase3
│ │ ├── [-rw-r-----] ejercicio1
│ │ ├── [-rw-r-----] ejercicio2
│ │ └── [-rw-r-----] ejercicio3
│ └── [drwxrwx---] clase4
│ ├── [-rw-r-----] ejercicio1
│ ├── [-rw-r-----] ejercicio2
│ └── [-rw-r-----] ejercicio3
├── [drwxrwx---] linux
│ ├── [drwxrwx---] clase1
│ │ ├── [-rw-r-----] ejercicio1
│ │ ├── [-rw-r-----] ejercicio2
│ │ └── [-rw-r-----] ejercicio3
│ ├── [drwxrwx---] clase2
│ │ ├── [-rw-r-----] ejercicio1
│ │ ├── [-rw-r-----] ejercicio2
│ │ └── [-rw-r-----] ejercicio3
│ ├── [drwxrwx---] clase3
│ │ ├── [-rw-r-----] ejercicio1
│ │ ├── [-rw-r-----] ejercicio2
│ │ └── [-rw-r-----] ejercicio3
│ └── [drwxrwx---] clase4
│ ├── [-rw-r-----] ejercicio1
│ ├── [-rw-r-----] ejercicio2
│ └── [-rw-r-----] ejercicio3
├── [drwxrwx---] mysql
│ ├── [drwxrwx---] clase1
│ │ ├── [-rw-r-----] ejercicio1
│ │ ├── [-rw-r-----] ejercicio2
│ │ └── [-rw-r-----] ejercicio3
│ ├── [drwxrwx---] clase2
│ │ ├── [-rw-r-----] ejercicio1
│ │ ├── [-rw-r-----] ejercicio2
│ │ └── [-rw-r-----] ejercicio3
│ ├── [drwxrwx---] clase3
│ │ ├── [-rw-r-----] ejercicio1
│ │ ├── [-rw-r-----] ejercicio2
│ │ └── [-rw-r-----] ejercicio3
│ └── [drwxrwx---] clase4
│ ├── [-rw-r-----] ejercicio1
│ ├── [-rw-r-----] ejercicio2
│ └── [-rw-r-----] ejercicio3
└── [drwxrwx---] php
├── [drwxrwx---] clase1
│ ├── [-rw-r-----] ejercicio1
│ ├── [-rw-r-----] ejercicio2
│ └── [-rw-r-----] ejercicio3
├── [drwxrwx---] clase2
│ ├── [-rw-r-----] ejercicio1
│ ├── [-rw-r-----] ejercicio2
│ └── [-rw-r-----] ejercicio3
├── [drwxrwx---] clase3
│ ├── [-rw-r-----] ejercicio1
│ ├── [-rw-r-----] ejercicio2
│ └── [-rw-r-----] ejercicio3
└── [drwxrwx---] clase4
Los directorios: html, css, js, mysql y linux pertenecen al grupo con su nombre correspondiente.
2.- Ubique en el sistema de archivos los archivos que sean tubería con nombre.

3.-Ubique en el sistema de archivos los archivos que sean sockets.

4.- Ubique en el sistema de archivos los archivos que sean dispositivos de bloque.

5.- Ubique en el sistema de archivos los archivos que sean dispositivos de carácter.
[user9@apu ~]$ mkdir -p cursos/{linux,php,mysql}/{clase1,clase2,clase3}/{eje1,eje2,eje3}

[user9@apu ~]$ tree cursos/

mkdir -p
Cursos/{css,html,js,linux,mysql,php}/{clase1,clase2,clase3,clase4}/{ejercicio1,ejercicio2,ejerci
cio3}

tree Cursos
V UTILITARIOS

EDITOR DE TEXTO
La mayoría de archivos de configuración tanto del sistemas como de los servicios son archivos
de texto, es por eso que se proporciona un programa de edición de archivos de texto en los
sistemas UNIX/Linux, de manera prederminada todo los sistemas utilizan vi como editor de texto
o su variante vim (vi improved)

VI

Editor de texto de pantalla completa que tiene dos modos de funcionamiento o estados
(inserción, comando) siendo el modo predeterminado (en el que se encuentra el editor al iniciar)
el modo comando.

Modo comando

En este modo, la digitalización de teclas, representan comandos para el editor (órdenes para
que el editor haga algo)

Los comandos servirán para desplazar el cursor, eliminar contenido, realizar búsquedas etc.

Modo inserción

En este modo todo lo que se digitalice se agregara como contenido al archivo de texto que se
esta editando, para regresar al modo comando debe digitarse la tecla ESC

Comandos básicos

Comandos de desplazamiento de cursor:

h un caracter a la derecha

j una linea hacia abajo

k una linea hacia arriba

l un caracter a la derecha

$ al último caracter de la linea

0 al primer caracter de la linea

G A la última fila del archivo


#G A la linea número #

w a la palabra sgte

b a la palabra anterior

Comandos de búsqueda

/cadena

Busca la cadena desde la linea actual hacia la última

linea

?cadena

Busca la cadena desde la linea actual hacia la primera linea.

n Repite la búsqueda en la direccion inicial

N Repite la búsqueda en la dirección opuesta a la inicial.

Eliminación de contenido:

x elimina el carácter sobre el cursor

D elimina los caracteres desde la posición actual hasta el fin

de la línea

dw Elimina desde la posición actual hasta el inicio de la siguiente.

palabra

dd Elimina la línea actual

Factor de repetición

Numero delante del comando que indica cuantas veces debe repetirse el comando.

Ingresando al modo inserción.


Para ingresar al modo inserción podemos usar los siguientes caracteres

| carácter | acción |

| -------- | ----------------------------------------------- |

|a | Añade contenido a la derecha del cursor |

|A | Añade conetenido al final de la linea |

|i | Añade contenido a la izquierda del cursor |

|I | Añade contenido al inicio de la linea |

|o | Añade una linea en blanco debajo de la actual |

|O | Añade una linea en blanco sobre la linea actual |

| | |

Para regresar al modo comando debemos digitar la tecla ESC

Comandos para salir del editor

:q quit

Sale del editor siempre y cuando no haya modificaciones no grabadas en el archivo.

:w write

Graba las modificaciones al archivo

:wq write quit

Graba las modificaciones al archivo y sale del editor

:w nuevoNombre

Graba el archivo como nuevoNombre

:q! Sale del editor descartando las modificaciones.

Búsqueda y reemplazo
La búsqueda y reemplazo se realiza sobre un rango de líneas del archivo:

:lineaInicial,lineaFinals/buscar/reemplazar

Se pueden usar las siguientes abreviaturas para las líneas:

. línea actual

.+n linea actual mas n

.-n linea actual menos n

$ ultima linea

% todas las lineas

Ejemplos:

:.,.+5s/systemd/SISTEMAS

.,$s/apu/servidor

OPCIONES

Las opciones modifican algunas de las características de presentación o comportamiento del


editor:

:set nu

Activa la numeracion de lineas

:set nonu

Desactiva la numeracion de lineas

:set ai

Activa la auto identacion

:set noai

Desactiva la auto identacion

:set tabstop=2

Define el tamaño de la tabulacion


:set ic

Activa la busqueda ignorando el tamaño del caracter

Las opciones se activaran siempre en el editor si son almacenadas en el archivo de configuración


de vi: .vimrc en el directorio hogar del usuario.
VI CORREOS Y EMPAQUETANDO ARCHIVOS

CORREO ELECTRÓNICO
Es la forma mediante la cual enviamos un mensaje a otro usuario del sistema o de un sistema
remoto, el mensaje será recibido y almacenado en la casilla de correo del usuario el cual podrá
leerlo la próxima vez que ingrese al sistema.

Ejemplo:

Enviando un mensaje:

$mail userx

Subject: MEnsaje de prueba

Este es un mensaje de prueba.

EOT

Comandos básicos en el modo lectura:

Muestra la lista de correos recibidos

R Responde un correo al remitente

r Responde un correo al remitente y a los destinatarios.

d borra un correo

q Sale del cliente de correo.

Si no se especifica un numero de correo la acción se realizara sobre el correo predeterminado


(el que tiene el >)
Puedes matar el proceso si no lo encuentra de la siguiente manera.

Podemos verificar

Archivos contenidos:

Presione 2

Para enviar un correo:

Ubicación de correo

EMPAQUETANDO ARCHIVOS
Cuando es necesario realizar una tarea de respaldo de archivos o para transportar múltiples
archivos se suele crear un solo archivo con todos los archivos necesarios, para esto usamos el
comando tar (tape archiver) utilizado inicialmente para crear copias de respaldo en citas
magnéticas, es utilizado en la actualidad para crear archivos los cuales contienen una lista de
archivos o directorios:
Sintaxis:

tar opciones archivos

Opciones:

c crear un archivo

x extraer de un archivo

f indica el nombre del archivo a trabajar.

v Muestra el listado del contenido del archivo

z usa el algoritmo de compresion gzip

j usa el algoritmo de compresion bzip2

Ejemplos:

$tar -cvf comprimido.tar archivo1 archivo2 archivo3

Crea el archivo comprimido.tar, el cual contiene los archivos: archivo1 archivo2 y archivo3.
Mostrando los archivos agregados.

$tar -zcvf comprimido.tar.gz archivo1 archivo2 archivo3

Crea el archivo comprimido.tar.gz , el cual contiene los archivos: archivo1 archivo2 y archivo3.
y comprime el contenido usando el algoritmo gzip, mostrando los archivos agregados.

$tar -tvf comprimido.tar

Muestra el contenido del archivo comprimido.tar

$tar -xvf comprimido.tar.gz

Extrae el contenido del archivo comprimido.tar.gz mostrando cada archivo extraido.

Podemos crear tres archivos y luego de esto podemos comprimirlo en uno solo.
PRACTICA

1. Cree el ejecutable para los sgtes códigos en c++ programa1.cpp

programa2.cpp
programa3.cpp

2. Cree el directorio src y almacene en el los archivos fuente de la pregunta1, cree el directorio
build y almacene en el los archivos binarios creados, a continuación comprima ambos directorios
usando los diferentes algoritmos de compresión.

3. Cree un archivo de texto delimitado con los datos de la práctica y envíelo como correo al
usuario lcarrera.
VII INSTALACIÓN DE PROGRAMAS

En la ejecución de un programa, el Shell busca el programa en los directorios indicados por la


variable de entorno PATH.

Instalación del sistema operativo

La instalación del sistema operativo es la acción de preparar el disco y copiar los programas y el
núcleo del sistema operativo en la partición seleccionada, el programa de instalación permitirá
la selección del lenguaje a utilizar, la configuración inicial de la red, la configuración de la
contraseña del administrador del sistema, la creación de un usuario que podrá realizar las tareas
del administrador (usando sudo o su)

Para el laboratorio se realizara la instalación en una máquina virtual usando el virtualizado de


Oracle (virtualbox) el cual podemos descargar desde:
https://www.virtualbox.org/wiki/Downloads

Descargar la versión apropiada para el sistema operativo (Windows) y realizar la instalación de


manera estándar, descargar también el paquete de extensiones (extensión pack), luego de
instalar el VB un doble clock sobre el paquete de extensiones iniciara su instalación.

YUMI
Realiza la actualización esto permitirá que nuestro servidor obtenga los últimos parches de
seguridad debe ejecuta el comand como root:

$sudo yum update

password

o cambiar permanentemente a rrot:

$sudo su -yum

2 Reconocimiento de los datos

nmn

para visualizar la ip

#ip address show


Para visualizar la puerta de enlace

#ip route show

Para visualizar los dns

#cat /etc/resolv.conf

3.- Probamos nuestro acceso

#ping 8.8.8.8

4.- Agregando una ip a nuestra interfaz de res

ip addr add 192.168.10.x/24 dev enp0s3

ip addr add 192.168.10.147/24 dev enp0s3

Nota:

Reiniciar

#systemctl restart network

ip/etc/sysconfig/network-scripts

interface archvo de configuracion

eth0 ifcfg-eth0

eth1

enp0s3

enp0s8

El contenido mínimo es

DEVICE=eth0

NAME=eth0

BOOTPROTO=static

ONBOOT=yes

IPADDR=172.17.0.242
NETMASK=255.255.252.0

GATEWAY=172.17.3.254

8.8.8.8

8.8.4.4

Direcciones adicionales

IPADDR1=192.168.10.242

NETMASK1=255.255.252.0

nmtui

Centos al igual que el redhat utiliza rpm(redhat package manager) para instalar y desinstalar
aplicaciones.

RPM se reconoce por que acaban en RPM

COMANDOS BÁSICOS

==================

==================

Listar todos los paquetes instalados:

#rpm -qa

obteniendo información de un paquete instalado

#rpm -qi nombrepaquete


#rpm -qi crontabs

Listando todos los archivos instalados en un paquete.

#rpm -ql nombrepaquete

Practica

descargamos un archivo rpm:

curl http://ghgfhghghghghg -0 zip-3.0ddd.rpm

obtenomo infrmacion del paquete

#rpm -qpi zip-3.0ddd.rpm

obtenoos los archivos de intalaicon con esrep qpeur

#rpm -qpl zip-3.0ddd.rpm

#rpm -i zip-3.0ddd.rpm

#rpm -e zip

Se puede utilizar el url del paquete en el repositorio como parametro

#rpm -qpi

http://packeteddffsdfsd.rpm

YUM (yELLOW DOG UPDATER , MODIFIED)

===================================
===================================

Programa de gestion de paquetes basado en rpm, trabaja diretamene desde la red en base s
repositorios de software privado o publics.

YUM tiene la capacidad de resover dependencias al momentos de realizar ala instalación

buscar un paquete

#yum search nombre

instalar un paquete

#yum install nombrePaquete

nombrePaquete debe permanecer en el listado de la busqueda

desinstalar

#yum remove nombrePaquete

# yum search apache

Ejemñplo

#yum install httpd

# yum search apache |grep -i server


Administracion de servciois

=====================

=======================

Un servicio es una caracteristica que se proporciona a la estacion (servicio loval)

o a la red (servicio remoto)

servicios locales:

network

firewal

servicios de red

servidor web

servidor de base de datos

servicof de directorio

servidor de corrreo

las tareas a realizar con los servicios son los siguientes:

habilitar un servicio

la habilitaci´n de un servicio configura el sistema para que inicie el servicio junto

con el sistema. Esta acción no sehabilita

# systenctl enable servicio

Ddeshabilitar el servicio

Confgura al sistemas para que no iniciei con el sistema.

Esta accion no detiene el servicio dirctament

# systenctl disable servicio


Inmiciar el servicio

# systenctl start servicio

Detener el servicio

# systenctl stop httpd

Reinicar el servicio

se utiliza cuando se midifica la configuracon

# systenctl restart httpd


VIII ADMINISTRACION DE USUARIOS.
Se ubican en /etc/passwd, el cual tienen el siguiente formato.

usuario:clave:uid:gid:comentario:DirectorioHogar:programaInicio

Se recomienda n modificar.

CREACION DE USUARIO:
useradd

sintaxis:

useradd opciones usuario

opciones

-c comentario

-d directorio hogar.

-g grupo primario del usuario

-G lista e grupo

-u uid del usuario

-s ´programa de inicio (generalmente un Shell)

#passwd pepe

MODIFICACION DE USUARIO:

Las características de un usuario ya creado se modifican con el comandno

usermod

sintaxis

usermod opciones uusuario

opciones

-c comentario

-d directorio hogar.
-l nombre del usuario

-g grupo primario del usuario

-G lista de grupo usermod

-u uid del usuario

-s ´programa de inicio (generalmente un Shell)

ELIMINACION DE UN USUARIO

Sintaxis

userdel opciones uusario

opciones

-f fuerza la eliminación del usuario.

-r elimina su directorio hogar y su casilla de correo.ls -l /home/

GRUPO DE USUARIO
Los grupos de usuarios facilitan la administración de los permisos varios u

Usuario compartan un conjunto de permisos sobre un archivo se crean con groupadd


Opciones NombreGrupo

Opcion es

-g asigna el gid de grupo

-f no cre el grupo si ya existe


QUE SE CREA CUANDO CREAS UN USUARIOS

Empezamos con lo siguiente:

Crea un archivo en la ruta siguiente.

AÑADIENDO USUARIOS

Empezamos realizando los siguientes comandos para la creación de usuarios.


PRACTICA N7

Crear 3 usuarios con el mismo password:

Usuario password

usuarioupla1 usuarioupla1

usuarioupla2 usuarioupla2

usuarioupla3 usuarioupla3

Se analiza:

Ingresamos con el usuarioupla1 y creamos un archivo de prueba test.txt

Nos vamos al usuario2

Para darnos cuenta de esto examinamos.

Luego se muestra de la siguiente manera:

Logeamos y aplicamos a la carpeta de usuarioupla1

Comprobamos con usuarioupla2 y ingresando al archivo que se ubica en usuarioupla1 test.txt


EJERCICIOS

1. Agregar la sgts direcciones ip a su interface de red:

2. Instalar, habilitar e iniciar los sgtes servidores:

1. Servidor DNS

2. Servidor de base de datos Mysql o MariaDB

3. La empresa acme a solicitado crear la sgte estructura de directorios, la cual refleja su


organigrama, solicita tambien que solo los usuarios de cada departamento puedan ingresar al
directorio de su area, excepto los usuarios de administracion, los cuales podran ingresar a todos
los directorios.

You might also like