Está en la página 1de 8

Manual de Linux

M.Sc.Ing. Gumercindo Bartra Gardini


INGENIERÍA DE LAS TELECOMUNICACIONES
PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ
1. Introducción a Unix/Linux
1.1. Kernel
Los Sistemas operativos se dividen en tres partes: hardware, kernel y espacio de usuario. A continuación
se presenta una imagen donde se puede apreciar el nivel jerárquico que presentan estos tres.

Figura 1.1: Partes del Sistema Operativo

Como se muestra en la imagen, el kernel es el intermediario entre las aplicaciones de usuario y el


hardware. La principal función del kernel es administrar los recursos del computador y permitir que otros
programas se ejecuten y utilicen esos recursos. Con recursos se hace referencia a:

- Central Proccesing Unit (CPU): el kernel decide que programa que se está ejecutando debe ser
colocado en el procesador.
- Memory: el kernel decide que parte de la memoria de cada procesador puede ser usada y
determina qué hacer en caso la memoria sea insuficiente.
- Input/Output (I/O) Devices: el kernel administra los request (solicitudes) de las aplicaciones para
realizar operaciones de agregar o quitar algún dispositivo.

1.2. Interacción con el Usuario


En el pasado, para poder comunicarnos con un mainframe (llámese computadora central) era necesario
tener terminales físicos conectados a esa computadora. Estos terminales eran simples pantallas con
hardware limitado donde se introducía texto usando el teclado y en la pantalla se observaba lo que uno
iba escribiendo. Por el lado del mainframe se tenía un CLI (command line interpreter) o Shell, este último
es un proceso que interpreta y ejecuta comandos.

Luego, estos terminales pasaron a tener GUIs (graphical user interfaces). Es un entorno más amigable y
puedes hacer uso de mouse y teclado para realizar cualquier operación. El uso de este entorno es más
sencillo, sobre todo para usuarios novatos. Sin embargo, el uso de CLI provee mayor flexibilidad y control
para la administración del sistema y su configuración.

Actualmente, los terminales físicos ya no se usan y en su reemplazo aparecieron los terminales virtuales.
Estos terminales reconocen el texto ingresado y emulan el comportamiento de un terminal físico. Para
acceder a un terminar virtual se hace uso de una combinación de teclas. La comunicación entre el terminal
y el Shell se logra usando un archivo dentro del sistema de nombre /dev/ttyX (donde la X representa al
número de la consola virtual). Para saber el terminal que se está usando se utiliza el comando tty.

Mientras Linux comienza a cargar, se pueden acceder a seis terminales usando CTRL+ALT+F1….
CTRL+ALT+F6. En el caso de que Linux tenga una GUI, es posible entrar a una consola virtual denominado

M.Sc.Ing. Gumercindo Bartra Gardini


INGENIERÍA DE LAS TELECOMUNICACIONES
PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ
terminal emulator o pseudo-terminal. Para inicializar el pseudo-terminal se usa la combinación de teclas
ALT+F2 y luego se usa el comando gnome-terminal o xterm. Otra forma es yendo a MENU-> Accesorios-
> Terminal dos maneras.

Figura 1.2: Terminales virtuales

1.3. Cambio de usuario


Un método para lograr una interacción con el sistema como superusuario (u otro usuario) es iniciando
sesión como tal y autenticarse con la clave. Sin embargo, existen los comando su y sudo que pueden
lograrlo. El comando su (switch user) permite interactuar como un usuario diferente con el cual se inició
sesión o ejecutar comandos como otro usuario. En caso no se especifique el usuario por el cual se desea
cambiar, automáticamente cambia a root (administrador del sistema o superusuario). Luego de ejecutar
este comando, el sistema pedirá la clave asociada al usuario que va a utilizar. La desventaja que posee
este comando radica en el caso cuando varias personas conocen la clave de root, ya que, al tener
privilegios de superusuario se puede manipular cualquier cosa del sistema. Para ejecutar este comando
se debe emplear la sintaxis: su <nombre de usuario>.

Por otro lado, para evitar divulgar la clave de root, el administrador de sistema define ciertos usuarios o
grupos para que puedan ejecutar ciertos comandos como si fueran superusuario. Esta definición se realiza
gracias al archivo sudoers (/etc/sudoers). Es decir, luego de ejecutar el comando sudo, el sistema solicita
la contraseña del usuario que está ejecutando tal comando. La sintaxis que usa es: sudo <comando>.

Recordar que ejecutar un comando a continuación del símbolo: $, quiere decir que está siendo ejecutado
por un usuario regular. En cambio, si se ejecuta a continuación del símbolo: #, quiere decir que está siendo
ejecutado por root.

1.4. Instalación de Programas


Al igual que en Windows, en Linux es posible instalar diferentes programas bajando el ejecutable desde
la página web del proveedor. Sin embargo, hay ciertos programas que requieren ciertas dependencias,
por lo tanto, se tiene que instalar, manualmente, la versión del software incluyendo las librerías
dinámicas necesarias. Se entiende por dependencia a una biblioteca que contiene diferentes archivos
necesarios para el buen funcionamiento del software.

Ante este problema se desarrolló un sistema avanzado para la administración de paquetes que se
encargaba, automáticamente, de conseguir las dependencias junto con el programa que se desea
instalar. Para archivos rpm (Red Hat Package Manager) se usa el comando yum y para archivos .deb se
usa el comando apt. Los archivos rpm son aquellos paquetes de software que pertenecen a la
distribución Red Hat Linux (distribución de Linux significa sistema operativo que toma como base para
su desarrollo el sistema operativo Linux). Por otro lado, los archivos con extensión .deb pertenecen a la
distribución Debian Linux.

En el caso de los paquetes de Debian Linux, el administrador de paquetes utiliza archivos que contienen
las fuentes donde conseguir los paquetes. Estos archivos se encuentran en /etc/apt. Es importante
actualizar la lista de los paquetes con los que están en los repositorios online o sino el sistema va a
trabajar con una lista desactualizada lo cual puede ocasionar dificultades. Para actualizar esta lista se

M.Sc.Ing. Gumercindo Bartra Gardini


INGENIERÍA DE LAS TELECOMUNICACIONES
PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ
debe ejecutar el comando apt-get update. Al tener una lista actualizada, para instalar cualquier paquete
se debe ejecutar el comando: apt-get install <nombre del paquete>.

1.5. Resumen de Comandos


Comandos Complemento Descripción Sintaxis
Muestra la ruta del archivo
tty tty
del terminal virtual.
gnome-terminal Ejecuta terminal virtual. gnome-terminal
xterm Ejecuta terminal virtual. xterm
su Cambia a otro usuario. su <nombre de usuario>
Ejecuta comandos como otro
sudo usuario con privilegios de sudo <comando>.
superusuario.
Actualiza la lista de paquetes
apt-get update apt-get update
disponibles.
apt-get install <nombre del
apt-get install Instala paquetes.
archivo>

2. Procesos
2.1. Manuales de los Comandos
Cada comando posee un manual con información detalla de las funciones que puede realizar, asi como
también, los parámetros que puede aceptar para ejecutar ordenes mas precisas. Para acceder al manual
de un comando basta con usar la sintaxis: man <nombre del comando>.

2.2. Listar Procesos


Los procesos son programas que se están ejecutando en el sistema. Para saber cuáles son los programas
que se están ejecutando en el sistema se usa el comando ps. Este comando muestra una lista informativa
de todos los procesos que están corriendo. La información que provee es: PID (ID del proceso), es un
identificador único con el cual se enumeran los procesos; TTY, muestra el terminal en el cual se ha
ejecutado ese programa; TIME, indica cuánto tiempo lleva ejecutándose ese programa; y CMD, muestra
el nombre del programa. La sintaxis que se usa solo es: ps.

2.3. Otros Comandos para Procesos


Como se mencionó en el capítulo anterior, el comando ps solo te muestra una lista continua de todos los
procesos que están corriendo en el sistema. Sin embargo, estos procesos, en muchas ocasiones, guardan
cierta relación, es decir, que uno deriva de otro. Para poder ver esa relación se utiliza el comando pstree.
Cabe resaltar que el primer proceso que se va a mostrar es el init, ya que es el primer proceso que se
ejecuta al cargar el sistema operativo y por lo tanto se considera como la raíz de todos los procesos.

Otro comando parecido a ps es el comando top. Este comando te devuelve una lista de procesos que está
corriendo en el sistema, al igual que lo hace el comando ps, con la diferencia de que se actualiza
constantemente. Este permite evaluar el estado de cada proceso conforme pasa el tiempo. Asimismo,
proporciona más información como: espacio de memoria que ocupa cada proceso, el número de usuarios,
el porcentaje de uso de procesador, etc.

Asi como se puede ver los procesos que están corriendo, también es posible eliminarlos (matarlos) en
caso estén ocasionando problemas al sistema o su consumo de memoria sea muy alto. Para matar un
proceso se usa la siguiente sintaxis: kill <nombre del proceso>.

M.Sc.Ing. Gumercindo Bartra Gardini


INGENIERÍA DE LAS TELECOMUNICACIONES
PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ
2.4. Resumen de Comandos
Comandos Complemento Descripción Sintaxis
Muestra el manual de un man <nombre del
man
comando comando>
Lista los procesos del
ps ps
sistema
Lista procesos del sistema
pstree indicando la relación que pstree
tienen entre sí
Lista los procesos del
sistema en tiempo real y
top top
muestra información de los
recursos del sistema.
kill <nombre del
kill Mata un proceso
comando>

3. Archivos
A continuación se presenta una lista de los comandos más frecuentes:

Comandos Complemento Descripción Sintaxis


cat Muestra el contenido de cat <nombre del archivo>
un archivo
cd / Cambia de directorio cd /<nombre del dir.>
cd .. Retrocede un nivel en el cd ..
árbol de directorios
cd ../.. Retrocede dos niveles cd ../..
chmod Cambia los permisos de Se explicará a detalle más adelante
un archivo
chown Cambia el dueño de un chown usuario:grupo <nombre del
archivo archivo>
cp Copia archivos cp <nombre archivo original> <nombre
archivo copia>
file Muestra el tipo de archivo file <nombre del archivo>
grep Busca patrones en grep <patron> <nombre del archivo>
archivos
mkdir Crea un directorio mkdir <nombre del directorio>
rmdir Elimina un directorio rmdir <nombre del directorio>
mv Mueve un archivo a un mv <nombre del archivo> <nombre del
directorio directorio>
mv Renombre un archivo mv <nombre del archivo original>
<nuevo nombre del archivo>
ls Lista el contenido del ls /<nombre del directorio>
directorio
ls -l Lista el contenido del ls –l /<nombre del directorio>
directorio en formato
lista. Incluye información
de permisos, tamaño, etc
ls -a Muestra todos los ls –a /<nombre del directorio>
archivos y carpetas,
incluyendo las ocultas
pwd Muestra la ruta del pwd
directorio actual
M.Sc.Ing. Gumercindo Bartra Gardini
INGENIERÍA DE LAS TELECOMUNICACIONES
PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ
rm Borra un archivo rm <nombre del archivo>
rm -r Borra los subdirectorios rm –r <nombre del directorio>
rm -f Fuerza el borrado de rm –f <nombre del archivo>
archivos y directorios
rm -rf Comando definitivo para rm –rf <nombre del archivo>
la eliminación
vi Edita un archivo vi <nombre del archivo>
nano Edita un archivo nano <nombre del archivo>

Comando CHMOD
El comando chmod sirve para cambiar los permisos de un archivo o directorio del servidor. Para
conseguir ayuda se puede ejecutar el comando chmod –help o chmod –h.

Para representar los permisos que se le atribuyen a un archivo se usan los siguientes caracteres:

o r: lectura
o w: escritura
o x: ejecución

Para agregar o remover permisos de utilizar los caracteres + (agregar) y – (remover). Por ejemplo:

- Para agregar permiso de ejecución: chmod +x MiArchivo


- Para remover permiso de escritura: chmod +w MiArchivo
- Para agregar o remover todos los permisos a la vez: chmod +rwx MiArchivo /
chmod -rwx MiArchivo

Asimismo, existen tres diferentes tipos de “personas” que maneja y a cada uno se le puede asignar los
tres tipos de permisos (lectura, escritura y ejecución). Estos tipos son:

o u: Usuario
o g: Grupo
o o: Otro

Cuando se ejecuta el comando ls –l se obtiene información de los archivos incluyendo los permisos que
posee.

-rwxr-xr-x 1 wda users 4096 abr 13 19:30 archivo

Por lo tanto, se puede asociar los permisos a cada persona de la siguiente manera:

rwx => Usuario

r-x => Grupo

r-x => Otro

De tal forma que si se desea agregar o quitar algún permiso a una persona, se hará de la siguiente
manera:

- Remover permiso de ejecución a usuario: chmod u-x archivo


- Agregar permiso de escritura y remover ejecución a otro: chmod o+w-x archivo

La asociación de permisos también se puede tener una representación octal:

M.Sc.Ing. Gumercindo Bartra Gardini


INGENIERÍA DE LAS TELECOMUNICACIONES
PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ
Figura 1: Representación octal de chmod

Por lo tanto, otra forma de agregar o quitar permisos usando la representación octal seria:

- chmod u=rwx,g=rwx,o=rx => chmod 775


- chmod u=rwx,g=rx,o= => chmod 760
- chmod u=rw,g=r,o=r => chmod 644

Comandos para Manipulación de Archivos y Directorios


Comandos Descripción Sintaxis
at Ejecuta un comando a una determinada at <hora/fecha> <nombre del comando>
hora
date Muestra la hora y fecha del mes/año date
echo Escribe un mensaje de salida en la consola echo <mesaje> <nombre del archivo>
o dentro de un archivo
kill Mata un proceso kill <pid> (proccess id)
man Ayuda para un comando especifico man <comando>
ps Muestra información sobre los procesos ps
que se están ejecutando en el sistema
who Muestra información de los usuarios who
conectados al sistema

Instalación de Paquetes del Repositorio


Al igual que en Windows, en Linux es posible instalar diferentes programas bajando el ejecutable desde
la página web del proveedor. Sin embargo, es necesario conocer la distribución de Ubuntu en la cual se
está trabajando para que no haya errores de compatibilidad. Para evitar todo esto se vuelva algo
engorroso, es posible instalar paquetes desde un terminal usando el comando: apt-get install <nombre
del archivo>.

Es importante tener en consideración que antes de instalar cualquier paquete es necesario realizar una
update a los repositorios para mantenerlos actualizados. El comando que se utiliza para esta acción
tiene la siguiente sintaxis: apt-get update,

Configuración de Interfaces

M.Sc.Ing. Gumercindo Bartra Gardini


INGENIERÍA DE LAS TELECOMUNICACIONES
PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ
Dentro de la configuraciones de una red es necesario asignar IPs a las interfaces de los equipo que se
van a utilizar. En Windows se cuenta con una interfaz gráfica amigable para el usuario. En Linux es
posible realizarla usando una interfaz gráfica siempre y cuando la distribución que se esté utilizando
cuente con ella. En caso de no ser así, es posible realizar los cambios mediante un terminal.

Para listar las interfaces del equipo y ver la configuracionde cada una se utiliza el comando: ifconfig.

Para realizar una asignación de una IP a una interfaz (eth0), de manera temporal, se utiliza la siguiente
sintaxis: ifconfig <nombre de la interfaz> <dirección IP> netmask <mascara de red>.

Tambien es necesario configurar los Gateway en caso se quiera comunicar con otras redes, esto se
realiza usando la siguiente sintaxis: route add default gw <dirección IP>.

En caso se quiera una asignación permanente, se debe modificar el archivo /etc/network/interfaces y


se agrega las siguientes líneas:

auto <nombre de la interfaz>


iface <nombre de la interfaz> inet static
address <direccion ip>
netmask <mascara de red>
gateway <direaccion ip gateway>

Una vez que se realizó el cambio se debe reiniciar el servicio de networking. Esto se logra de la siguiente
manera:

/etc/init.d/networking stop

/etc/init.d/networking start

Para activar o desactivar una interfaz se utiliza la siguiente sintaxis: ifconfig <nombre de la interfaz>
up/down.

Por último, para modificar el servidor DNS se debe modificar el archivo /etc/resolv.conf.

Dentro del archivo, se especifica la dirección IP del servidor de DNS: nameserver <dirección IP del server
DNS>

M.Sc.Ing. Gumercindo Bartra Gardini


INGENIERÍA DE LAS TELECOMUNICACIONES
PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ

También podría gustarte