Está en la página 1de 32

INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

Comandos Linux
Red Hat System Administration I

¿Qué es Linux?
Linux® es un sistema operativo (SO) open source. En 1991, Linus Torvalds lo diseñó y creó a modo
de pasatiempo. Mientras estaba en la universidad, intentó crear una versión open source,
alternativa y gratuita del sistema operativo MINIX, que a su vez se basaba en los principios y el
diseño de Unix. Ese pasatiempo logró convertirse en el SO con la mayor base de usuarios, el más
usado en los servidores de Internet disponibles públicamente y en el único utilizado en las 500
supercomputadoras más rápidas.

Inicio de sesión
La carga del programa denominado Shell, muestra una interfaz donde trabaja el usuario.
Shell entorno de prompt.
El propietario de la cuenta de usuario, tiene en su directorio personal todos los permisos, para otro
directorio no tiene permisos. El administrador si tiene todos los permisos.

El usuario ROOT
Es la cuenta del administrador del sistema que posee todos los privilegios para la gestión del sistema
Linux, puede otorgar permisos a otros usuarios.
Esta cuenta permite ejecutar programas con privilegios de seguridad que solo están asignados al
usuario root.

PÁG. [1] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

COMANDOS BÁSICOS
Usuario actual

whoami
Nombre del equipo

hostname
Terminal de trabajo

tty
Núcleo del sistema operativo (kernel)

uname -a
Versión del núcleo

uname -r
Ingresar como root

sudo -s
su root
Ver la ruta del directorio actual

pwd
Subir de nivel

cd ..
Ingresar a un directorio

cd nombre
Ingresar al directorio root

cd ~ (alt + 126)
Ingresar al directorio raíz

cd /
Listar ficheros y directorios (list directory)

ls
Listar mostrando detalle

ls -l
Listar ficheros y directorios

ls -R nombre_directorio

PÁG. [2] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

Mostrar ocultos

ls -a
Guardar la salida de un comando en un fichero, por ejemplo, el comando ls

ls > listado
Ver contenido del fichero creado

cat < listado


Mostrar la ubicación de un comando o fichero

whereis comando
Ejemplo 1: Con un comando

whereis ls
Ejemplo 2: Con un fichero

whereis tema1/info.txt
Revisar el tipo de comando

type ls
type tar
type gzip
Luego, revisar la información del fichero

file /usr/bin/ls

PÁG. [3] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

ADMINISTRAR EQUIPO
Mostrar datos del equipo

hostnamectl
Cambiar nombre del equipo

hostnamectl set-hostname pc-jc.senati.com


Mostrar nombre del equipo

hostnamectl status --static


Apagar la máquina

systemctl poweroff
Reiniciar la máquina

systemctl reboot
Suspender la máquina

systemctl suspend
Hibernar la máquina

systemctl hibernate

PÁG. [4] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

HISTORIAL DE COMANDOS
Revisar el historial de los últimos comandos

history
Revisar el historial de n últimos comandos

history n
Borrar un comando por posición n

history -d n
Borrar todos los comandos

history -c
Guardar los cambios

history -w
Copiar el historial en un fichero

history > nombre_fichero

PÁG. [5] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

DIRECTORIOS
Crear directorio

mkdir nombre_directorio

Crear árbol de directorios

mkdir -p nombre1/nombre2/nombre3

Borrar directorio

rmdir nombre_directorio

PÁG. [6] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

FICHEROS - CAT
Crear fichero

cat > nombre_fichero


Terminar escritura de fichero

CTRL + C
CTRL + D
Mostrar contenido de fichero

cat < nombre_fichero


Ejemplo:

cat fichero.txt
cat > fichero.txt
ctrl +c para salir y volver
Borrar fichero

rm nombre_fichero
Crear ficheros modificar la fecha de modificación y también crearlos

touch fichero.txt
touch image1.png

PÁG. [7] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

FICHEROS - VIM
Instalar vim en Debian/Ubuntu

sudo apt-get install vim


Instalar vim en CentOS/RHEL

yum install vim


Editar fichero

vim nombre_fichero
Luego se presiona la tecla “i” para modificar el contenido
Luego se presiona la tecla “ESC” para salir al modo normal y se escribe :wq para salir

Buscar palabra

:/<palabra>
Reemplazar una palabra por otra

:%s/<palabra>/<nueva_palabra>/g

PÁG. [8] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

FICHEROS - NANO
Instalar nano en Debian/Ubuntu

sudo apt-get install nano


Instalar nano en CenOS/RHEL

yum install nano


Verificar la versión nano

nano --version
Abrir el editor de ficheros nano

nano
Abrir el editor de ficheros nano con un fichero para editar

nano fichero

PÁG. [9] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

COPIAR: FICHEROS / DIRECTORIOS


Copiar fichero

cp [Origen] [Destino]
Ejemplo:

cp datos.txt tema1/
Copiar directorio con contenido de forma recursiva y forzar sobrescribir con mensaje al terminar

cp -r -f -v [Origen] [Destino]
Ejemplo:

cp -r -f -v tema1/ tema2/
cp -rfv tema1/ tema2/
Ejemplo para copiar un directorio a otro de nivel superior:

cp -rfv tema1/ /home/usuario/


Copiar fichero forzar sobreescribir con mensaje al terminar

cp -f -v [Origen] [Destino]
Ejemplo:

cp -f -v datos.txt tema1/

PÁG. [10] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

MOVER / RENOMBRAR: FICHEROS / DIRECTORIOS


Mover o cambiar el nombre de un fichero o directorio

mv [Origen] [Destino]
Ejemplo:

mv datos.txt tema1/info.txt
Mover directorio con contenido, forzar sobreescribir con mensaje al terminar

mv -f -v [Origen] [Destino]
Ejemplo:

mv -f -v tema1/ tema2/
mv -fv tema1/ tema2/
Ejemplo para mover un directorio a otro de nivel superior:

mv -fv tema1/ /home/usuario/


Ejemplo para cambiar el nombre de un fichero:

mv datos.txt info.txt
Ejemplo para cambiar el nombre de un directorio:

mv tema1/ temas1/

PÁG. [11] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

BORRAR: FICHEROS / DIRECTORIOS


Borrar directorio con contenido de forma recursiva y forzar sobreescribir

rm -r -f nombre_directorio
Ejemplo:

rm -r -f tema1/
rm -rf tema1/
Ejemplo para borrar ficheros y carpetas llenas

rm -rf image1.png
rm -rf prueba/

PÁG. [12] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

BUSCAR: FICHEROS / DIRECTORIOS


Buscar ficheros o directorios

find ruta
Ejemplo 1: Buscar en el directorio tema1 el nombre hola.txt

find tema1/ -name hola.txt


Ejemplo 2: Buscar en el directorio tema1 por nombre el fichero hola.txt

find tema1/ -type f -name hola.txt


Ejemplo 3: Buscar en el directorio tema1 por nombre el directorio tmp

find tema1/ -type d -name tmp

PÁG. [13] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

FECHAS
Mostrar ayuda sobre el comando date

date --help
Mostrar día

date +%d
Mostrar mes

date +%B
Mostrar año

date +%Y
Mostrar calendario

cal 2023

PÁG. [14] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

CONFIGURACIÓN DE RED
Dirección IP

ip addr
Mostrar el Gestor de red

nmcli -p device show


Ver directorio de la configuración de red

ls /etc/sysconfig/network-script
Ver el fichero ifcfg-eth0

cat < /etc/sysconfig/network-script/ifcfg-eth0


Editar el fichero de configuración de red

vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

Modificaremos los atributos a:

ONBOOT=yes
Reiniciar el servicio de red

systemctl restart network.service

Verificar conectividad

ping 8.8.8.8

PÁG. [15] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

Estado de la red

nmcli dev status

Ver los saltos

traceroute -I www.url.com
Ver los saltos (en Windows)

tracert www.url.com

PÁG. [16] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

USUARIOS
Crear usuario

adduser nombre_usuario
Otra forma de creación de usuarios

adduser -c "Teresa Campos" tcampos -G sistemas


Asignar contraseña (min. de 8 caracteres)

passwd nombre_usuario
Definir que la contraseña expire en 45 días

passwd --maximum=45 nombre_usuario


Ver detalle del usuario

id nombre_usuario
Ingresar con un usuario

su - nombre_usuario
Listar información de los usuarios

cat < /etc/passwd


Agregar información a los usuarios

chfn nombre_usuario
Configurar cuenta

chage nombre_usuario
Listar información sobre la contraseña del usuario

chage --list nombre_usuario


Cambiar los días de expiración de la contraseña

chage -M 30 nombre_usuario
Definir una contraseña vencida o expirada

chage -d 0 nombre_usuario
Bloquear usuario

usermod -L nombre_usuario
Desbloquear usuario

usermod -U nombre_usuario

PÁG. [17] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

Eliminar usuario

userdel -rf nombre_usuario


Listar configuración de los usuarios

cat < /etc/shadow


Instalar comando finger

yum install finger


Mostrar información del GECOS (General Electric Comprehensive Operating Supervisor)

finger nombre_usuario

PÁG. [18] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

GRUPOS
Crear grupo

groupadd nombre_grupo
Listar grupos, forma 1:

less /etc/group
Para terminar el comando se presiona la tecla “q”.
Listar grupos, forma 2:

cat < /etc/group


Listar grupos, forma 3:

getent group
Cambiar nombre del grupo

groupmod -n nuevo_nombre_grupo nombre_grupo


Ejemplo:

groupmod -n help-desk sistemas


Agregar usuario a un grupo

usermod -aG nombre_grupo nombre_usuario


Mostrar a qué grupos pertenece un usuario, forma 1

groups nombre_usuario
Mostrar a qué grupos pertenece un usuario, forma 2

cat < /etc/group


Quitar usuario de un grupo

gpasswd -d nombre_usuario nombre_grupo


Eliminar grupo

groupdel nombre_grupo

PÁG. [19] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

OPERACIONES CON FICHEROS


Mostrar los comandos utilizados, solo con opción para avanzar

more .bash_history
Mostrar los comandos utilizados, con opción de avanzar y retroceder

less .bash_history
Se puede avanzar o retroceder con las flechas direccionales arriba y abajo, junto con las teclas Re
Pág. y Av. Pág.
Para escribir una palabra a buscar se usa /palabra
Ejemplo: /prueba
Con las teclas n y shift n se avanza y retrocede en la búsqueda
Con la tecla q se sale
Mostrar los 10 primeros comandos utilizados

head .bash_history
Ejemplo con ficheros de texto

head tema1/info.txt
Ejemplo con ficheros de texto 3 primeras líneas

head -3 tema1/info.txt
Mostrar los 10 últimos comandos utilizados

tail .bash_history
Ejemplo con ficheros de texto

tail tema1/info.txt
Ejemplo con ficheros de texto 2 últimas líneas

tail -2 tema1/info.txt
Ordenar los comandos utilizados

sort .bash_history
Ejemplo con ficheros de texto

sort tema1/info.txt
Ordenar los comandos utilizados de forma inversa

sort -r .bash_history
Ejemplo con ficheros de texto

sort -r tema1/info.txt

PÁG. [20] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

Mostrar el número de líneas, la cantidad de palabras y bytes de un fichero

wc tema1/info.txt
Ejemplo con la lista de comandos usados

wc .bash_history
Verificar el tamaño en bytes

ls -l .bash_history

PÁG. [21] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

FILTRAR CONTENIDO DE FICHEROS


Filtrar contenido en un fichero

grep
Ejemplo 1:

grep casa datos.txt


Ejemplo 2:

Filtrar una palabra dentro de los comandos usados

grep cat .bash_history


Filtrar una palabra dentro de los comandos usados, muestra el número de línea

grep -n cat .bash_history


Ejemplo con un fichero

grep casa tema1/info.txt


Ejemplo con un fichero, muestra el número de línea

grep -n casa tema1/info.txt


Ejemplo con un fichero, muestra el número de veces

grep -c casa tema1/info.txt

PÁG. [22] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

COMPRIMIR FICHEROS
Comprimir ficheros

gzip tema1/info.txt
Se genera el fichero info.txt.gz
Mostrar información del fichero comprimido

file tema1/info.txt.gz
Descomprimir el fichero comprimido

gzip -d tema1/info.txt.gz
Comprimir ficheros con el máximo posible

gzip -9 tema1/info.txt
Mostrar datos del fichero comprimido

gzip -l tema1/info.txt.gz
Instalar bzip2

yum install bzip2


Otro comando para comprimir ficheros

bzip2 tema1/info.txt
Se genera el fichero info.txt.bz2
Mostrar información del fichero comprimido

file tema1/info.txt.bz2
Descomprimir el fichero comprimido

bzip2 -d tema1/info.txt.bz2
Comprimir ficheros con el máximo posible

bzip2 -9 tema1/info.txt

PÁG. [23] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

Instalar tar en caso no exista

yum install tar


Empaquetar directorios

tar -cf copia1.tar tema1/


Ver contenido del empaquetado tar

tar -tf copia1.tar


Luego de ello se procede a comprimir con gzip o bzip2
Por ejemplo

bzip2 -9 copia1.tar
Para descomprimir

bzip2 -d copia1.tar.bz2
Luego para desempaquetar, crear un directorio

mkdir tmp
Escribir

tar -xf copia1.tar -C tmp/


Revisar

ls -l tmp/tema1/

PÁG. [24] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

PAQUETES
Paquetes RPM (Red Hat Software Package Manager) yYUM (Yellowdog Updater Modified)
RPM, es una herramienta de administración de paquetes para GNU/Linux, capaz de instalar,
desinstalar, verificar y solicitar programas)
YUM, es una herramienta para la gestión de paquetes Linux basados en RPM.
Instalar el controlador de paquetes

yum install wget


Revisar la página
http://mirror.centos.org/centos-7/7/os/x86_64/Packages/
Descargar paquete

wget url_fichero.rpm
Instalar el paquete descargado

rpm -i nombre_fichero.rpm
Consultar el paquete rpm instalado

rpm -q nombre_fichero_rpm
Mostrar la información del paquete rpm instalado

rpm -qi nombre_fichero_rpm

PÁG. [25] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

PERMISOS EN FICHEROS Y DIRECTORIOS


En el caso de los directorios tenemos los mismos permisos que los ficheros, pero con un significado
diferente.
▪ Permiso de lectura en un directorio, es posible ver los ficheros que contiene.
▪ Permiso de escritura en un directorio, es posible agregar, borrar y mover ficheros al
directorio.
▪ Permiso de ejecución en un directorio, es posible tomar en cuenta el directorio en
búsquedas realizadas por un programa, por ejemplo, un directorio sin permiso de ejecución
no sería revisado por el comando find.

Usuarios, Grupos y Otros


Estos tres permisos son almacenados en:
▪ Usuario (user).
▪ Grupo (group).
▪ Otros (other).

Permisos en formato numérico octal


La combinación de valores de cada grupo de los usuarios forma un número octal, es decir tenemos:
▪ r=4
▪ w=2
▪ x=1
La combinación de bits encendidos o apagados en cada grupo da ocho posibles combinaciones de
valores, es decir la suma de los bits encendidos:
Permiso Valor Descripción
––– =0 Sin permisos
––x =1 Ejecución
–w– =2 Escritura
–wx =3 Escritura y ejecución
r–– =4 Lectura
r–x =5 Lectura y ejecución
rw– =6 Lectura y escritura
rwx =7 Lectura, escritura y ejecución

Las combinaciones octales más comunes son:

Valor Permiso
777 rwx/rwx/rwx
755 rwx/r-x/r-x
644 rw-/r--/r--
655 rw-/r-x/r-x

PÁG. [26] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

Otros ejemplos

Permisos Valor Descripción

rw-- 600 El propietario tiene permisos de lectura y escritura.

El propietario lectura, escritura y ejecución, el grupo y


rwx–x–x 711
otros solo ejecución.
El propietario lectura, escritura y ejecución, el grupo y
rwxr-xr-x 755
otros pueden leer y ejecutar el archivo.
El archivo puede ser leído, escrito y ejecutado por
rwxrwxrwx 777
quien sea.
El propietario puede leer el archivo, pero no puede
r-- 400 modificarlo o ejecutarlo, ni el grupo ni otros pueden
hacer nada en él.
El propietario puede leer y escribir, el grupo puede leer
rw-r-- 640
el archivo y otros no pueden hacer nada.

PÁG. [27] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

CAMBIAR PERMISOS EN FICHEROS Y DIRECTORIOS


Listar mostrando detalle

ls -l
Cambiar los permisos de un elemento

chmod 777 Fichero o Directorio


Cambiar los permisos de un elemento

chmod 755 Fichero o Directorio


Cambiar la asignación de propiedad de un fichero o directorio a un nuevo usuario y grupo

chown jcastillo trabajo.txt


chown jcastillo:ventas trabajo.txt
Cambiar la asignación de propiedad de un fichero o directorio a un nuevo grupo

chgrp sistemas trabajo.txt

PÁG. [28] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

PROCESOS DEL SISTEMA


Muestra el estado actual de los procesos en el sistema.

ps
Listar los detalles de cada proceso

ps -aux
Pasar el listado detallado de cada proceso al comando more

ps -aux | more
Pasar el listado detallado de cada proceso al comando less

ps -aux | less
Pasar el listado detallado de cada proceso a un fichero

ps -aux > proceso


Ver el contenido del fichero creado

cat < proceso


Guardar en un fichero los errores al ejecutar un comando

ls casa 2 > error.txt


Ver el contenido del fichero creado

cat < error.txt


Si no existen errores, no se guarda nada

ls -l 2 > error.txt
Ver el contenido del fichero creado

cat < error.txt


En un primer terminal ver las tareas activas

jobs
Luego ver el número del terminal

tty
Después activar el comando cat

cat > muestra.txt

PÁG. [29] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

En un segundo terminal, se debe estar como super usuario y luego revisar las tareas activas

ps -aux | grep cat


Se muestra:

Luego con el comando kill se termina el proceso, se indica el PID que es el identificador de la tarea

kill -9 9391
Muestra de ambos terminales

PÁG. [30] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

Mostrar las señales que se pueden enviar al kernel

kill -l

Ver el administrador de tareas en tiempo real

top

Para ver la ayuda, se presiona la tecla h


Para regresar al monitor, se presiona la tecla q o esc
Para salir del monitor, se presiona la tecla q

PÁG. [31] Instructor Joe Castillo Liñán


INGENIERÍA DE SOFTWARE CON INTELIGENCIA ARTIFICIAL

INSTALAR MySQL
Eliminar cualquier instalación previa del servidor Mariadb

yum remove mariadb mariadb-server


Instalar el administrador de paquetes

yum install wget


Descargar el paquete para MySQL

wget http://dev.mysql.com/get/mysql57-community-release-
el7-9.noarch.rpm
Ejecutar el paquete descargado

rpm -Uvh mysql57-community-release-el7-9.noarch.rpm


Instalar MySQL

yum install mysql-server


Ejecutar el paquete de claves para MySQL

rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-


2022
Nuevamente instalar MySQL

yum install mysql-server


Iniciar el servicio de MySQL

systemctl start mysqld


Mostrar el estado del servicio de MySQL

systemctl status mysqld


Definir variable de entorno

systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"


Reiniciar el servicio de MySQL

systemctl restart mysqld


Ingresar como administrador a MySQL

mysql -u root mysql

PÁG. [32] Instructor Joe Castillo Liñán

También podría gustarte