LINUX - UNaM

27
LINUX Características Generales Estructura Básica Permisos de Ficheros Comandos Generales

Transcript of LINUX - UNaM

Page 1: LINUX - UNaM

LINUX

Características Generales

Estructura Básica

Permisos de Ficheros

Comandos Generales

Page 2: LINUX - UNaM

Linux es un Sistema Operativo

Características mas relevantes del SO: Multitarea: Permite que varios programas se ejecuten al mismo tiempo. Multiusuario: Permite que dos o más usuarios utilicen sus programas al mismo tiempo.

SO: Los sistemas operativos realizan tareas básicas, tales como reconocimiento de la conexión del teclado, enviar la información a la pantalla, no perder de vista archivos y directorios en el disco, y controlar los dispositivos periféricos tales como impresoras, escáner, etc.

GNU: Linux es distribuido bajo Licencia Publica General.Software desarrollado para distribución sin fines de lucro

¿Qué son las "distribuciones" de GNU/Linux(link)?Una distribución es un modo de facilitar la instalación, la configuración y el mantenimiento de un sistema GNU/Linux.

En una distribución hay todo el software necesario para instalar en un computadora personal; servidor, correo, ofimática, fax, navegación de red, seguridad, etc.

Page 3: LINUX - UNaM

¿PORQUÉ ELEGIR LINUX ?

ventajas evidentes de costo

velocidad y confiabilidad

disponibilidad de aplicaciones

bajos requisitos de hardware

sistema de multitarea y de administración de memoria,

capacidades de networking (conectividad a redes) y de multiusuario

Page 4: LINUX - UNaM

Ubuntu es un sistema operativo basado en Linux creado por una comunidad de programadores libres.

DISTRIBUCION UBUNTU

GNOME

GNOME intenta construir un completo y a la vez sencillo escritorio basado enteramente en software gratuito.

GNOME es parte del proyecto GNU y es gratuito.

El escritorio consiste en pequeñas utilidades y grandes aplicaciones que comparten una vista y una sensación consistentes.

Page 5: LINUX - UNaM

ESTRUCTURA BÁSICA DEL LINUX

El núcleo es el programa medular que ejecuta programas y gestiona dispositivos de hardware tales como los discos y las impresoras. El shell proporciona una interfaz para el usuario. Recibe órdenes del usuario y las envía al núcleo para ser ejecutadas. El sistema de archivos, organiza la forma en que se almacenan los archivos en dispositivos de almacenamiento tales como los discos. Los archivos están organizados en directorios. Cada directorio puede contener un número cualquiera de subdirectorios, cada uno de los cuales puede a su vez, contener otros archivos.

Page 6: LINUX - UNaM

EL SHELL

Por defecto el trabajo con Linux no se realiza de una forma gráfica, sino introduciendo comandos de forma manual..

IMPORTANTE!: No hay que confundir la shell con el sistema operativo. El sistema operativo es el núcleo y la shell es un interfaz que nos proporciona utilidades de trabajo y permite establecer una relación con el núcleo.

Para muchas personas el hecho de tener que introducir los comandos de forma manual les puede parecer intimidante y dificultoso, aunque como se verá más adelante los comandos de Linux son relativamente simples y muy poderosos.

El shell proporciona una interfaz entre el núcleo y el usuario. Se puede describir como un intérprete: interpreta las órdenes que introduce el usuario y las envía al núcleo. La interfaz del shell es muy sencilla. Normalmente consiste en un inductor desde el que se teclea una orden y después se pulsa enter. En cierta forma, se está tecleando una orden en una línea. A menudo, esta línea se conoce como la línea de órdenes

Page 7: LINUX - UNaM

SISTEMA DE ARCHIVOS EN LINUX

Es "la forma de escribir los datos en el disco duro". El sistema de archivos nativo de Linux es el EXT2 (Existen otros como por ej: ext3, ms dos, etc.)

El sistema de archivos es la organización lógica del disco que nos permite almacenar la información en forma de ficheros

¿Qué es un Archivo?El sistema de archivos de Linux organiza los archivos en directorios, de forma similar al DOS. Todo el sistema de archivos de Linux es un gran conjunto interconectado de directorios que están organizado en una estructura jerárquica de árbol.

En Linux no tenemos una "unidad" para cada unidad física de disco o partición como en Windows, sino que todos los discos duros o de red se montan bajo un sistema de directorios en árbol, y algunos de esos directorios enlazan con estas unidades físicas de disco.

¿Qué es un Directorio?Conjunto de ficheros agrupados bajo un mismo nombre, lo que facilita su utilización y administración

Page 8: LINUX - UNaM

Principales Directorios:/ :Es la raíz del sistema de directorios.

/etc :Contiene los archivos de configuración de la mayoría de los programas

/home : Contiene los archivos personales de los usuarios

/bin :Contiene comandos básicos y muchos programas:

/dev :Contiene archivos simbólicos que representan partes del hardware, tales como discos duros, memoria,etc.

/mnt :Contiene subdirectorios donde se montan (se enlaza con) otras particiones de disco duro, CDROMs, etc.

/tmp :Ficheros temporales o de recursos de programas

/usr : Programas y librerías instalados con la distribución

/usr/local : Programas y librerías instalados por el administrador

/sbin :Comandos administrativos

/lib : Librerías varias y módulos del kernel

/var :Datos varios como archivos de log (registro de actividad) de programas, bases de datos, contenidos del servidor web, copias de seguridad.

Page 9: LINUX - UNaM

Los nombres de archivos en Linux distinguen mayúsculas de minúsculas.Los archivos README, readme, REadme y rEadme por ejemplo son archivos distintos y por lo tanto al ser nombres distintos pueden estar en el mismo directorio.

En Linux los archivos no tienen por qué tener una extensión.La suelen tener a modo orientativo, pero no es en absoluto necesario. Linux sabe qué contiene cada archivo independientemente de cuál sea su extensión.

NOMBRES DE ARCHIVOS EN LINUX

Hay ciertos caracteres que nunca se deberían utilizar a la hora de nombrar un archivo. Uno de ellos es el espacio, nunca llamaremos a un fichero con un nombre que contenga un espacio.

Tampoco son recomendados otros caracteres raros como signos de puntuación (a excepción del punto), acentos o la ñ.

Los acentos y la ñ tampoco se recomiendan.

Page 10: LINUX - UNaM

El camino o path de un fichero o directorio es la secuencia de directorios que se ha de recorrer para acceder a un determinado fichero separados por /.

Ejemplo:

El camino absoluto muestra toda la ruta a un fichero: /home/Ana/Carta.txt.

CAMINO O PATH

Page 11: LINUX - UNaM

Permisos de FicherosConceptos de permisos de ficheros

Al ser LINUX un sistema multiusuario, para proteger ficheros de usuarios particulares de la manipulación por parte de otros, proporciona un mecanismo conocido como permisos de ficheros. Este mecanismo permite que ficheros y directorios "pertenezcan" a un usuario en particular.

También se permite que los ficheros sean compartidos entre usuarios y grupos

de usuarios.

Cada fichero pertenece a un usuario en particular. Por otra parte, los ficheros también pertenecen a un grupo en particular, que es un conjunto de usuarios definido por el sistema.

Cada usuario pertenece al menos a un grupo cuando es creado.

Los grupos usualmente son definidos por el tipo de usuarios que acceden a la máquina.

Por ejemplo, en un sistema de una universidad, los usuarios pueden ser

divididos en los grupos estudiantes, dirección, profesores e invitados.

Page 12: LINUX - UNaM

Los permisos están divididos en tres tipos: lectura, escritura y ejecuciónEstos permisos pueden ser fijados para tres clases de usuarios: el propietario del fichero, el grupo al que pertenece el fichero y para todos los usuarios independientemente del grupo.El permiso de lectura permite a un usuario leer el contenido del fichero o en el caso de un directorio, listar el contenido del mismo (usando ls). El permiso de escritura permite a un usuario escribir y modificar el fichero. Para directorios, el permiso de escritura permite crear nuevos ficheros o borrar ficheros ya existentes en dicho directorio. Por último, el permiso de ejecución permite a un usuario ejecutar el fichero si es un programa o guión del intérprete de comandos. Para directorios, el permiso de ejecución permite al usuario cambiar al directorio en cuestión con cd.

Permisos de FicherosConceptos de permisos de ficheros

Page 13: LINUX - UNaM

Un concepto fundamental a la hora de instalar y usar Linux que es el de Super Usuario o usuario root.

Este usuario es el administrador del sistema y se crea durante la instalación.

Como administrador que es puede acceder y modificar (así como destruir) toda la información del sistema, por lo que hay que evitar en la medida de lo posible trabajar como usuario root..

SUPER USUARIO

ENTRADA Y SALIDA DEL SISTEMA

En cualquiera de los casos se pedirá un:

Login: (Se teclea el nombre del usuario)

Password: (Se teclea la contraseña, que no se ve en la pantalla) Por motivos de seguridad la contraseña debe cumplir ciertas condiciones tales como:

Page 14: LINUX - UNaM

Para acceder al shell desde el mismo entorno gráfico hay que abrir un programa llamado terminal o consola.

Existen una serie de nociones básicas que hay que tener en cuenta a la hora de introducir los comandos. En primer lugar citaremos las siguientes:

Los comandos hay que teclearlos exactamente.

Las letras mayúsculas y minúsculas se consideran como diferentes.

En su forma más habitual el sistema operativo utiliza un signo de $ como prompt para indicar que está preparado para aceptar comandos, aunque este carácter puede ser fácilmente sustituido por otro u otros elegidos por el usuario. En el caso de que el usuario acceda como administrador este signo se sustituye por #.

Page 15: LINUX - UNaM

date Muestra por pantalla el día y la hora.

cal 1949 Muestra el calendario del año 1949.

cal 05 1949 Muestra el calendario de mayo de 1949.

who Indica qué usuarios tiene el ordenador en ese momento, en qué terminal están y desde qué hora.

COMANDOS DE LINUX

man comando

Todos los manuales de Linux están dentro del propio sistema operativo, y este comando permite acceder a la información correspondiente al comando comando.Por ejemplo con man who aparecerá por pantalla y de forma formateada por páginas, la explicación del comando who. Se puede navegar a través de estas páginas con los cursores del teclado, y presionando q para salir.

clear Este comando limpia la consola

Page 16: LINUX - UNaM

Listado del contenido de directorios: comando ls

Una de las acciones más habituales a la hora de trabajar es mostrar el contenido de un directorio ls -l : Esta es la opción de lista larga: muestra toda la información de cada fichero incluyendo: protecciones, tamaño y fecha de creación o del último cambio introducido.

Creación de subdirectorios. Comando mkdir

El comando mkdir (make directory) permite a cada usuario crear un nuevo subdirectorio:

mkdir subdir1 donde subdir1 es el nombre del directorio que se va a crear.

Page 17: LINUX - UNaM

Borrado de subdirectorios. Comando rmdir

Este comando borra uno o más directorios del sistema (remove directory), siempre que estos subdirectorios estén vacíos. Por ejemplo:

rmdir subdir1 donde subdir es el nombre del directorio que se va a eliminar.

Cambio de directorio. Comando cd

Este comando permite cambiar de directorio a partir del directorio actual de trabajo.

Por ejemplo,

cd /home/Pedro En este ejemplo pasamos del directorio actual de trabajo al nuevo directorio /home/Pedro, que será desde ahora nuestro nuevo directorio.

Page 18: LINUX - UNaM

cd dire Nos traslada al subdirectorio dire (que deberá existir como subdirectorio en el directorio actual).

cd .. Retrocedemos un nivel en la jerarquía de directorios. Por ejemplo, si estamos en /home/Pedro y usamos este comando, pasaremos al escalafón inmediatamente superior de la jerarquía de directorios, en este caso a /home.

cd Nos sitúa nuevamente en el directorio personal del usuario.

Situación actual. Comando pwd

El comando pwd (print working directory) visualiza o imprime la ruta del directorio en el que nos encontramos en este momento. Este comando es uno de los pocos que no tiene opciones y se utiliza escribiendo simplemente pwd.

Page 19: LINUX - UNaM

Copia de ficheros. Comando cp

Este comando tiene la siguiente forma:

cp file1 file2

y hace una copia de file1 y le llama file2.

Si file2 no existía, lo crea con los mismos atributos de file1.

Si file2 existía antes, su contenido queda destruido y es sustituido por el de file1.

El fichero file2 estará en el mismo directorio que file1.

Page 20: LINUX - UNaM

Traslado y cambio de nombre de ficheros. Comando mv

Este comando tiene una forma similar al anterior ,

mv file1 file2

El comando mv realiza la misma función que el anterior (cp) pero además destruye el fichero original.

En definitiva traslada el contenido de file1 a file2; a efectos del usuario lo que ha hecho es cambiar el nombre a file1, llamándole file2.

Page 21: LINUX - UNaM

Borrado de ficheros. Comando rm

Este comando tiene las formas siguientes,

rm file1 file2

Este comando elimina uno o más ficheros de un directorio en el cual tengamos permiso de escritura. Con este comando resulta facilísimo borrar ficheros inútiles, y desgraciadamente, también los útiles.

Detener un proceso

Para detener definitivamente dicha ejecución (no se puede detener temporalmente) se puede utilizar el comando kill:

kill númerodeproceso

Page 22: LINUX - UNaM

PERMISOS EN LINUX

Todos los archivos y directorios en Linux tienen permisos que verifican quien puede hacer o no alguna acción con él.

Interpretando los permisos de ficheros

Utilizando el comando ls con la opción -l se mostrará un listado "largo" de los ficheros, el cual incluye los permisos de ficheros.

/home/larry/foo# ls -l stuff -rw-r--r-- 1 larry users 505 Mar 13 19:05 stuff

El primer campo impreso en el listado representa los permisos de ficheros. El tercer campo es el propietario del fichero (larry), y el cuarto es el grupo al cual pertenece el fichero (users).Obviamente, el último campo es el nombre del fichero (stuff), y los demás campos los trataremos más adelante.

Page 23: LINUX - UNaM

¿Y donde están los permisos?

Este ejemplo nos aclara las ideas:

/home/larry/foo# ls -l stuff-rw-r--r-- 1 larry users 505 Mar 13 19:05 stuff

El primer campo impreso en el listado representa los permisos de ficheros. El tercer campo es el propietario del fichero (larry), y el cuarto es el grupo al cual pertenece el fichero (users).

La cadena -rw-r--r-- nos informa, por orden, de los permisos para el propietario, el grupo del fichero y cualquier otro usuario.

El primer carácter de la cadena de permisos ("-") representa el tipo de fichero. El "-" significa que es un fichero regular.

Observar! que los permisos están asignados en grupos de 3 (rwx) y corresponde al: propietario (owner: dueño del archivo o directorio), grupo (group: grupo del archivo o directorio) y otros (others: otro usuario diferente del propietario).

Page 24: LINUX - UNaM
Page 25: LINUX - UNaM

EL COMANDO CHMOD

chmod [quien] oper permiso files

quien Indica a quien afecta el permiso que se desea cambiar. Es una combinación cualquiera de las letras u para el usuario, g para el grupo del usuario, o para los otros usuarios, y a para todos los anteriores. Si no se da el quien, el sistema supone a.

oper Indica la operación que se desea hacer con el permiso. Para dar un permiso se pondrá un +, y para quitarlo se pondrá un -.

permiso Indica el permiso que se quiere dar o quitar. Será una combinación cualquiera de las letras anteriores : r,w,x,s.

files Nombres de los ficheros cuyos modos de acceso se quieren cambiar.

Page 26: LINUX - UNaM

Cambiando permisos

El comando chmod se usa para establecer los permisos de un fichero. Solo el propietario puede cambiar los permisos del fichero. La sintaxis de chmod es:

chmod {a,u,g,o}{+,-}{r,w,x} <filenames>

Brevemente, indicamos a que usuarios afecta all, user, group o other.

chmod a+r staff Da a todos los usuarios acceso al fichero.

chmod +r staff como arriba_ si no se indica a, u, g o o por defecto se toma a.

chmod og-x staff Quita permisos de ejecución a todos los usuarios excepto al propietario.

chmod u+rwx staff Permite al propietario leer, escribir y ejecutar el fichero.

Page 27: LINUX - UNaM

Control de Tareas. Tareas y procesos

Control de Tareas es una utilidad incluida en muchos shells permite el control de multitud de comandos o tareas al momento. Cada vez que usted ejecuta un programa, se lanza lo que se conoce como proceso, que es simplemente el nombre que se le da a un programa cuando se esta ejecutando. El comando ps visualiza la lista de procesos que se están ejecutando actualmente, por ejemplo:

/home/larry# ps

PID TT STAT TIME COMMAND 24 3 S 0:03 (bash) 161 3 R 0:00 ps

La columna PID representa el identificador de proceso. La última columna COMMAND, es el nombre del proceso que se está ejecutando. Ahora solo estamos viendo los procesos que está ejecutando Larry. Vemos que hay dos procesos, bash (Que es el shell o intérprete de comandos que usa Larry, y el propio comando ps.