Está en la página 1de 25

GNU/Linux

Grado en Inteligencia Artificial


Anália Lourenço Lourdes Borrajo
Despacho ESEI 308, analia@uvigo.es Despacho ESEI 307, lborrajo@uvigo.es
teléfono: 988 387029 teléfono: 988 387028

http://sing.ei.uvigo.es
GNU/Linux
• Es un Sistema Operativo Open Source (código abierto) y gratuito
• El nucleo de Linux, el kernel, se distribuye bajo la licencia GPL (tipo de licencia Open Source
Software)
• Un Programa con Licencia GPL puede ser vendido, alquilado, prestado modificado, pero:
• No se puede limitar el número de usuarios, copias o tiempo de uso.
• No se puede cobrar por usar el programa (pero sí por distribuirlo).
• No se puede impedir que otros lo vendan o distribuyan.
• Tienes que dar las fuentes del programa de una manera pública.
• Puedes modificar el programa, o aprovechar parte del código, pero el resultado tiene que seguir la misma filosofía

• Existen muchísimas distribuciones distintas:


• Cada una incluye un conjunto de herramientas
• Distintas formas de empaquetar los programas
• En general compatibles entre sí
• Entre las más comunes están Ubuntu, Debian, Linux Mint, Red Hat, Scientific Linux CERN, ...
• Por tanto, una distribución Linux es un software que contiene, además del kernel/núcleo de
Linux, otros paquetes de software, que generalmente son de carácter libre, y que añaden ciertas
aplicaciones o controladores para satisfacer las necesidades de los usuarios.

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 2
Interface Gráfica de Usuario - Graphical user interface
(GUI)

• Existen dos entornos gráficos (escritorios) principales para


Linux:
• Gnome
• KDE

• Son equivalentes al entorno de ventanas de Windows

• Son compatibles entre sí

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 3
Consola / Shell

• Ventana en la que se teclean los comandos que se quieren ejecutar


• Puede ser más difícil de aprender (a veces)
• Hay que aprenderse los comandos, pero es mucho más flexible y eficiente
• No depende de las opciones que hay en la GUI
• Permite automatizar tareas repetitivas
• Optimiza la posibilidad de ejecutar tareas en nodos remotos

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 4
Emuladores

• Existen aplicaciones que permiten ejecutar Linux dentro de Windows


• En la tienda Microsoft se pueden encontrar varias aplicaciones para
emular el terminal

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 5
Emuladores

• Emuladores:
• VMWare/Virtualbox:
• Emulación completa de Linux
• http://www.vwmare.com, http://www.vitualbox.org
• Cygwin:
• Entorno de aplicaciones Linux portadas a Windows
• http://www.cygwin.com/

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 6
Características de Linux

• Usuarios:
• Linux es un sistema multiusuario
• Cada usuario posee unos permisos concretos (lectura, escritura,
ejecución,...)
• El usuario root puede hacer (casi) todo

• Grupos:
• Cada usuario pertenece al menos un grupo
• Los permisos se pueden regular a nivel de usuario

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 7
Ficheros
• Terminología:
• Ficheros = Archivos = Documentos
• Directorios = Carpetas
• Todos los ficheros pertenecen a algún usuario que controla su
visibilidad y edición para el resto de usuarios/grupos a través de
permisos
• Los ficheros se encuentra en algún directorio
• Directorios especiales:
.  Dir actual
.. Dir superior
/  Directorio raíz
~  Directorio de usuario
• Subdirectorios:
• El camino (path) hasta un directorio se construye encadenando los
directorios intermedios separados por „/‟. Ej: /home/lborrajo

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 8
Comandos
• Los comandos se ejecutan tecleando su nombre y la tecla
enter
• Los comandos aceptan opciones y argumentos
• Suelen tener las siguientes formas:
• $ comando –opción
• $ comando --opcion=bla
• Símbolos especiales
?  sustituye a un carácter
*  sustituye a un conjunto de caracteres
• Para obtener ayuda sobre los parámetros de un comando
$ comando –-help

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 9
Directorios del sistema
En la mayoría de distribuciones basadas en GNU/Linux existen los siguientes directorios principales:
• /bin/: comandos básicos para todos los usuarios del sistema.
• /boot/: archivos estáticos necesarios para el arranque del sistema.
• /dev/: dispositivos del sistema. Es muy recomendable
conservar y no eliminar
• /etc/: archivos de configuración del sistema y de las aplicaciones instaladas en el mismo.
ninguno de estos
• /home/: directorio para poner las carpetas home de los usuarios. directorios
• /lib/: librerías esenciales para el núcleo del sistema y módulos del mismo. (o los que por defecto
• /mnt/: punto de montaje temporal para dispositivos. nos crea la distribución
• /proc/: procesos y variables del núcleo del sistema. que utilicemos)
• /root/: directorio home para el root del sistema.
• /sbin/: comandos especiales para el root del sistema.
• /tmp/: archivos temporales. Según la distribución utilizada (o la configuración que utilicemos) se borran al
arrancar el sistema o cada cierto período de tiempo.
• /usr/: segunda estructura jerárquica, utilizada para almacenar todo el software instalado en el sistema.
• /var/: directorio para los spoolers de impresión, ficheros de log, etc.

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 10
Comandos para trabajar con directorios/carpetas en
Linux
• Crear un directorio:
$ mkdir nombredir
• Borrar un directorio (vacío):
$ rmdir nombredir
• Borrar un directorio no vacío
$ rm –rf nombredir
• Moverse a un directorio:
$ cd nombredir
• Copiar un directorio:
$ cp –r dir_origen dir_final
• Conocer cual es el directorio actual:
$ pwd
• Cambiar el nombre a un directorio
$ mv directorio nuevo_nombre
• Mover un directorio
$ mv directorio ruta_de_destino/nombredir

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 11
Ficheros/archivos/documentos en Linux
• Mostrar la lista de los ficheros en el directorio actual:
$ ls [directorio|fichero]
• Opciones:
$ ls -l: Con detalles (formato largo)
Datos mostrados:
Permisos.
Número de subdirectorios / enlaces.
Usuario Propietario.
Grupo Propietario.
Tamaño.
Fecha modificación.
Nombre.
$ ls -a: Mostrar ficheros y directorios ocultos
$ ls -t: Ordenar por fecha de modificación
$ ls –r: Muestra en orden inverso
$ ls –s: Ordena por tamaño

Se pueden combinar las opciones. Ej: $ ls –lrt

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 12
Ejemplos de diferentes usos del comando ls con comodines
• $ ls
archivo1.txt archivo3.txt main.php prueba.php
archivo2.txt foto.png operaciones.php style.php
• $ ls archivo?.txt
archivo1.txt archivo2.txt archivo3.txt

• $ ls archivo[1,3].txt
archivo1.txt archivo3.txt

• $ ls [am]*
archivo1.txt archivo2.txt archivo3.txt main.php
• $ ls archivo[1-5].txt
archivo1.txt archivo2.txt archivo3.txt
• $ ls [a-g]*
archivo1.txt archivo2.txt archivo3.txt foto.png

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 13
Ficheros/archivos/documentos en Linux

• Borrar un fichero:
$ rm fichero
• Renombrar un fichero:
$ mv fichero_original fichero_final
• Cambiar de sitio un fichero:
$ mv fichero_original dir_final
• Cambiar de sitio un fichero cambiándole el nombre:
$ mv fichero_original dir_final/fichero_final
• Copiar un fichero:
$ cp dir_origen/fichero_orig dir_final

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 14
Ficheros/archivos/documentos en Linux

• Visualizar el contenido de un fichero


$ cat fichero
• Crear un nuevo archivo desde cero
$ cat>nombre_archivo
• Combinar archivos 1 y 2 y almacenar su salida en el archivo 3:
$ cat nombre_archivo1 nombre_archivo2 >
nombre_archivo3

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 15
Otros comandos
• Limpiar la Terminal para trabajar con ella de manera más ordenada
$ clear
• Ver el historial de comandos
$ history
• Guardar el historial de comandos en un fichero
$ history > historial.txt
• Cerrar o finalizar la terminal o consola
$ exit
• Ejecutar un commando como administrador (user "root")
$ sudo commando
• Borrar un directorio no vacío
$ sudo rm –r nombre_directorio
• Acceder a los ficheros de WSL desde el explorador de archivos de Windows
$ explorer.exe .

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 16
Ejercicio 1
1. Crea un directorio llamado primero
2. Crea otro directorio dentro de primero llamado segundo
3. Crea un fichero llamado hola.txt con un texto que diga
“Hola. Mi nombre es ….”
4. Renombra el fichero hola.txt como nombre.txt
5. Copia el nuevo fichero al directorio primero
6. Copia el directorio segundo entero a otro directorio nuevo
llamado tercero dentro de primero.
7. Borra el directorio segundo
8. Averigua para que sirve el comando date

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 17
Ejercicio 1

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 18
Solución Ejercicio 1

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 19
Ejercicio 2
Practica
directorio
1. Crea la estructura de carpetas
Parte1 Parte2 2. Crea fichero1.txt con el texto: “Este es el contenido del
directorio directorio fichero1”
3. Duplica fichero1.txt dentro de la Seccion1. Cámbiale el
Seccion1 Seccion2 fichero5.txt
directorio directorio fichero nombre por fichero2.txt y edita su contenido con el
comando nano para que contenga el texto: “Este es el
fichero1.txt
fichero
fichero2.txt
fichero
fichero3.txt
fichero
fichero4.txt
fichero
contenido del fichero2”
4. Copia el fichero1.txt al resto de directorios y edita su
contenido
Practica
directorio
5. Copia la carpeta Seccion2 al nivel de las carpetas Parte1
y Parte2, y renombra la copia como Parte3.
Parte1 Parte2 Parte3 6. Borra la carpeta Seccion2
directorio directorio directorio

Seccion1 fichero5.txt fichero3.txt fichero4.txt


directorio fichero fichero fichero

fichero1.txt fichero2.txt
fichero fichero

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 20
Permisos de los ficheros
• Cuando obtenemos un listado detallado (ls –l) de un fichero o directorio lo que nos
muestra el sistema es algo similar a esto:

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 21
Permisos de los ficheros
• La columna de permisos de archivos, esta denotada por 10 caracteres que nos muestran
la información al respecto de la siguiente manera:

drwxr-xr-x

• El primero nos muestra información sobre el archivo o carpeta:


• d : significa que es un directorio,
• l : significa que es un archivo con un link
• – : significa que es un archivo.

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 22
Permisos de los ficheros
• Los siguientes 9 caracteres son 3 series que indican:
• los permisos para el dueño del archivo (owner)
• los permisos para el grupo
• los permisos para los demás usuarios.
• Cada serie esta compuesta de tres caracteres que pueden ser rwx lo cual significa
permisos de lectura (read), escritura (write) y ejecución (execution). Por ejemplo:
drwxr-xr-x 7 mysql mysql 512 jun 25 14:01 curso
• Por el primer caracter sabemos que curso es un directorio
• Por los caracteres 2,3 y 4 (primera serie de 3) sabemos que el propietario del archivo
tiene permisos de lectura (r), escritura (w) y ejecución (x)
• Por los caracteres 5,6 y 7 (segunda serie) que los miembros del grupo tienen permisos
de lectura (r) y ejecución (x), pero no de escritura.
• Por los caracteres 8,9 y 10 (tercera serie) que los demás usuarios tienen permisos de
lectura (r) y ejecución (x), pero no de escritura.

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 23
Permisos de los ficheros

Para cambiar los permisos de un fichero usamos el comando:

$ chmod [u|g|o|a][+|-][r|w|x]fichero

Ejemplo: chmod u+x fichero

• chown: permite cambiar la autoría de cualquier archivo o directorio.


• mount: permite montar unidades (discos duros, USB, tarjetas de memoria, etc) en un
directorio.

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 24
Editores en Linux
• Hay varios, cada uno con sus ventajas y desventajas
• La curva de aprendizaje puede ser muy distinta y, a veces,
inversamente proporcional a la velocidad a la que se pueden
hacer las cosas
• Los editores más conocidos son:
o vi: Editor muy básico de difícil aprendizaje que funciona en cualquier
Linux
o nedit/gedit/kate: Editores sencillos y con un montón de funcionalidades
o (X)emacs: Editor no tan sencillo, pero tremendamente configurable y
potente

Universidade de Vigo 22/23


Anália Lourenço & Lourdes Borrajo 25

También podría gustarte