Documente Academic
Documente Profesional
Documente Cultură
MANDATOS EN LINUX
Contenido
1.INTERFAZ DE MANDATOS DE LINUX..............................................................2
2.MANDATOS EN LINUX...................................................................................5
Mayúsculas y minúsculas.............................................................................5
Construcción de expresiones.......................................................................5
Redireccionamiento de mandatos................................................................7
3.ALMACENAMIENTO DE LA INFORMACIÓN......................................................9
Estructura física...........................................................................................9
Estructura lógica........................................................................................10
Tipos de particiones...................................................................................11
4.SISTEMAS DE FICHEROS.............................................................................11
Organización de directorios........................................................................13
Crear directorios........................................................................................14
Eliminar directorios....................................................................................15
Página 1 de 33
MANDATOS EN LINUX IES Peset Aleixandre
Copiar archivos..........................................................................................18
Eliminar archivos.......................................................................................19
La instrucción ls.........................................................................................21
7.VISUALIZACION DE ARCHIVOS....................................................................27
Redirecciones........................................................................................... ..31
Página 2 de 33
MANDATOS EN LINUX IES Peset Aleixandre
Esto hace que el sistema salga del modo gráfico y acceda a alguna de las
seis consolas virtuales de Linux, a las cuales también se puede acceder
cuando se arranca en modo de texto. Para volver al modo gráfico hay que
presionar <ctrl>+<alt>+<F7> o <ctrl>+<alt>+<F8>. Una de las
principales ventajas del trabajo con múltiples consolas, consiste en la
posibilidad de poder finalizar algún proceso o aplicación que haya podido
bloquear otro terminal. Evitando de esta forma tener que reiniciar el
sistema.
• Se puede acceder al shell haciendo clic sobre el icono de terminal.
Una vez finalizada la carga del sistema, se visualizará una pantalla en la cual
se nos solicita que introduzcamos la información necesaria para iniciar una
sesión de trabajo.
La información que debemos introducir es nuestro nombre de usuario
(localhost login) y la contraseña (Password). Localhost es lel nombre de la
máquina Linux utilizada, vosotros tendréis como nombres de máquina ordxx
siendo xx el número de ordenador en el aula.
Una vez introducida la contraseña, si no se ha cometido ningún error, la
pantalla se limpiará y aparecerá la línea de mandatos (prompt), representada
por el símbolo # si has entrado como root y por el símbolo $ si has entrado
como cualquier otro usuario distinto del administrador.
Página 3 de 33
MANDATOS EN LINUX IES Peset Aleixandre
una contraseña debes tener presente que es recomendable que como mínimo
tenga 6 caracteres, que no sea una fecha, número o nombre que sea
asociable contigo o fácilmente reconocible. La contraseña te será solicitada
dos veces para evitar posibles errores.
# man shutdown
Una vez cargada la ayuda podemos desplazarnos por ella utilizando los
cursores. Cuando hayamos terminado podremos salir pulsando la tecla q. En
Página 4 de 33
MANDATOS EN LINUX IES Peset Aleixandre
2. MANDATOS EN LINUX
Aunque en la actualidad ya es posible realizar muchas operaciones desde X
Window, el interfaz gráfico de Linux, sigue siendo imprescindible utilizar el
shell para determinadas operaciones. Antes de examinar las instrucciones
más importantes que podemos emplear desde la línea de comandos
analizaremos algunos aspectos importantes que debemos tener presentes
para poder utilizar correctamente los mandatos que veremos en capítulos
posteriores. Ten presente que alguno de los aspectos analizados en este
capítulo son también válidos cuando utilicemos X Window.
Mayúsculas y minúsculas
Uno de los aspectos importantes que debemos tener presente al utilizar Linux
es que este, al igual que sucede con Unix , y a diferencia de Windows,
distingue las mayúsculas de las minúsculas. Esto quiere decir que no es lo
mismo crear un usuario denominado Albert que albert, de la misma forma no
es lo mismo el archivo listaNombres.txt que listanombres.txt. En ambos casos
los nombres simplemente se
diferencian por el uso de las mayúsculas.
Nombrrres.txt
nombres.txt
archivos.nombres.txt
ARCHIVOS.nombres.txt
listadoDeNombresDeClientesDeLaEMpresaOrdenadosPorApellidos
Construcción de expresiones
En determinadas ocasiones necesitamos hacer referencia a más de un archivo
simultáneamente, o deberemos realizar búsquedas en las cuales no podemos
especificar un nombre en particular. Por ejemplo, puede ser necesario
localizar todos los archivos que empiecen por la letra n, o encontrar los
archivos que contengan la sílaba on.
Para poder realizar estas tareas disponemos de los comodines, gracias a los
cuales podemos construir expresiones regulares.
Un comodín es un carácter que se emplea para sustituir un conjunto de
caracteres.
Una expresión regular es un modelo formado por comodines y un conjunto de
caracteres.
Así , por ejemplo, podemos utilizar comodines para listar todos los archivos de
extensión conf del directorio /etc.
Página 5 de 33
MANDATOS EN LINUX IES Peset Aleixandre
# ls /etc/*.conf
Comodín Descripción
# ls /etc/l????.conf
# ls /etc/[a-m]*.conf
# ls /etc/[a,d,m]*.conf
Una de estas acciones es con la tecla Tab que nos permite obtener un listado
de todas las instrucciones que empiecen con el carácter o caracteres
introducidos.. Por ejemplo, si introducimos en la línea de comandos los
caracteres fi y pulsamos la tecla Tab conseguiremos ver en la pantalla un
listado de mandatos, entonces simplemente tendremos que terminar de
teclear el comando deseado.
Página 6 de 33
MANDATOS EN LINUX IES Peset Aleixandre
Mandatos múltiples
# ls /; cat /etc/shells
Redireccionamiento de mandatos
Otra posibilidad que nos brinda Linux es la de redireccionar la salida de los
comandos. En alguna ocasión puede resultar interesante desviar la salida
estándar de un comando. Por ejemplo, si deseamos guardar en un archivo el
listado con el contenido del directorio /etc simplemente deberemos escribir :
# cat listado.txt
Si quieres realizar una pausa cada vez que se llene la pantalla recuerda que
puedes emplear el mandato more.
Otra función de la redirección es indicar a un mandato con qué datos debe
trabajar.
En este caso la doble redirección se emplea para indicar cuando debe detener
la lectura. Así, si introducimos el siguiente comando podremos escribir
nombres en el fichero nombres2.txt hasta que escribamos la palabra fin.
Página 7 de 33
MANDATOS EN LINUX IES Peset Aleixandre
# cat errores.log
Si no queremos que se visualicen los mensajes de error ni que se almacenen
en un archivo deberemos redirigir la salida de errores a un dispositivo nulo.
Este dispositivo ya se encuentra definido en el sistema dentro del directorio
/dev y su nombre es null.
3. ALMACENAMIENTO DE LA INFORMACIÓN
Cuando trabajamos con el ordenador, nos vemos en la necesidad de guardar
la información en el disco duro, ya que de lo contrario se perdería esta
información al apagar el equipo. Actualmente existen en el mercado varios
estádares de conexión, que son, por orden de antigüedad: SCSI 1, IDE, SATA
Y SATA II. Todos ellos tienen distintas cualidadesde velocidad y usan
distintas controladoras en la placa base del equipo.
Página 8 de 33
MANDATOS EN LINUX IES Peset Aleixandre
Estructura física
Página 9 de 33
MANDATOS EN LINUX IES Peset Aleixandre
Estructura lógica
La estructura lógica se refiere a la distribución y el orden con los que se
debe de organizar toda la información del disco duro.
Página 10 de 33
MANDATOS EN LINUX IES Peset Aleixandre
Tipos de particiones
Primaria: Divisiones principales del disco.Como máximo, un disco puede
tener cuatro particiones primarias.
Página 11 de 33
MANDATOS EN LINUX IES Peset Aleixandre
4. SISTEMAS DE FICHEROS
El kernel de Linux soporta distintos sistemas de ficheros. Un sistema de
ficheros (filesystem) es la parte de un sistema operativo que determina el
modo en el que se almacena la información en el disco duro de nuestro
ordenador o en cualquier otro soporte de almacenamiento: disquetes,
almacenamiento especial en memorias, CD-ROMS, etc.
Un sistema operativo soportará un sistema de ficheros cuando conozca o
disponga de todas las funciones para manejarlo accediendo a datos de una
partición que lo utilice y manipulando los datos contenidos en ella, por
supuesto sin provocar errores o pérdidas de información.
Entre los sistemas de ficheros soportados en el kernel de linux se encuentran
los siguientes :
Página 12 de 33
MANDATOS EN LINUX IES Peset Aleixandre
Dentro del directorio /dev podemos encontrar diferentes archivos que están
asociados a dispositivos tan diferentes como pueden ser un módem
(/dev/modem), un ratón (/dev/mouse) o un disco duro (/dev/hda). Por ello es
importante conocer y entender cómo funciona el sistema de archivo de Linux.
El sistema de archivos de Linux está diseñado para almacenar la información
de forma ordenada y jerarquizada. Los archivos se agrupan en directorios
formando una estructura de árbol. Siguiendo esta jerarquía, cada usuario es
propietario de los archivos y directorios que ha creado y tiene plenos
derechos sobre ellos.
Cada usuario tiene un directorio de trabajo en el que almacenará sus archivos
y subdirectorios. Los demás usuarios no podrán acceder a menos que tengan
permisos asignados para ello.
Internamente el sistema de archivos de Linux está estructurado como un
árbol, cada uno de los punteros que forman este árbol se denomina inodo. Un
inodo es una estructura de datos que contiene toda la información sobre el
archivo : tamaño, permisos, ubicación en el disco o discos, propietarios, tipo
de archivo,
Organización de directorios
Al instalar Linux se crearán por defecto una serie de directorios. Todos ellos se
encuentran ubicados en el directorio raíz, que se representa por el símbolo /.
Este directorio engloba todos los demás archivos y directorios, siendo su
propietario el administrador del sistema.
A diferencia de otros sistemas operativos, como es el caso de Windows en
cualquiera de sus versiones, en Linux no existe el concepto de unidades de
disco, es decir no hay un directorio raíz para c:, otro para d:, etc. Sino que las
unidades de disco son directorios del directorio raíz. Si examinamos el
contenido del directorio /mnt veremos dos directorios que representan la
unidad de CD-ROM y dle disquete.
Los principales directorios que podemos encontrar en Linux son los siguientes
:
Investigación : deduce tú mismo y completa el contenido de la
siguiente tabla :
Directorio Descripción
Bin
Dev
Etc
Página 13 de 33
MANDATOS EN LINUX IES Peset Aleixandre
Lib
Lost+foun
d
Mnt
Tmp
Usr
Home
El directorio actual
Normalmente podemos ver en el prompt del sistema el nombre del directorio
en el que nos encontramos, pero no nos indica la ubicación exacta del
mismo.
En caso necesario podemos obtener el nombre completo del directorio actual,
incluyendo todo el trayecto hasta el mismo con la instrucción pwd.
# pwd
Crear directorios
Cuando al trabajar diariamente con Linux nos encontremos con la necesidad
de agrupar y clasificar la información y documentos que generemos de una
forma lógica, no podemos tener todos los documentos dentro del directorio de
trabajo. La forma de clasificar la información es situándola dentro de
directorios, pero para poder hacerlo deberemos aprender a crear nuestros
propios directorios.
$ mkdir /home/elisa/pruebas
$ mkdir MisDocumentos/MisImagenes
$ mkdir -p MisDocumentos/MisImagenes
Eliminar directorios
De la misma forma que nos puede ser necesario crear un directorio para
guardar archivos en él, también podemos encontrarnos con que tengamos
que eliminar un directorio que habíamos creado para guardar algún archivo
de forma temporal.
Para eliminar un directorio utilizaremos la instrucción rmdir. Así, por ejemplo,
para eliminar el directorio pruebas creado en el apartado anterior
escribiremos :
$ rmdir pruebas
Por tanto:
$ mv ejemplos pruebas
$ mv pruebas MisDocumentos
$ ls -l MisDocumentos
$ cd MisDocumentos
$ cd
$ cd /home/elisa/MisDocumentos/MisImagenes
O
$ cd /user/bin
$ cd ..
$ cd /
Página 16 de 33
MANDATOS EN LINUX IES Peset Aleixandre
Crear archivos
Cuando trabajamos con un sistema operativo disponemos de diversos
métodos para crear archivos. Normalmente los archivos se crearán utilizando
aplicaciones concretas. Por ejemplo, podemos utilizar un tratamiento de
textos como Corel WordPerfect para crear archivos en los cuales se guardarán
nuestros documentos o alguna de las aplicaciones de la suit StarOffice para
crear una hoja de cálculo o base de datos que evidentemente se almacenarán
en forma de archivos. En capítulos anteriores hemos visto cómo crear
archivos redirigiendo la salida de un comando como ls a un archivo.
A diferencia de otros sistemas operativos en Linux podemos crear un archivo
vacío con el comando del sistema, touch.
$ touch unarchivovacio
Podemos ver la nueva fecha realizando un listado del directorio con el formato
lago y la fecha completa.
$ ls -l –full-time
Opciones de touch:
Copiar archivos
Para copiar archivos en Linux utilizaremos el mandato cp. Este comando nos
permitirá realizar duplicados de los ficheros de una forma rápida.
El formato más simple de esta instrucción es indicando el nombre del fichero
a copiar y el nombre de la copia.
$ cp listado.txt copialistado.txt
$ cp listado.txt MisDocumentos
Página 17 de 33
MANDATOS EN LINUX IES Peset Aleixandre
$ cp lis* MisDocumentos/MisImagenes
Una de las precauciones que hemos de tener al realizar copias es que Linux
sustituirá el archivo destino si éste existiera por el nuevo archivo. Para evitar
eliminar de esta forma algún archivo accidentalmente podemos utilizar dos
parámetros diferentes del comando cp. El primero de ellos es -i. Este
parámetro fuerza a Linux a realizar la copia de forma interactiva, es decir, si
el destino existiese se nos mostraría un mensaje de advertencia antes de
sobrescribirlo
$ cp -i listado.txt MisDOcumentos
El segundo parámetro que podemos utilizar es -b, el cual realiza una copia de
seguridad del archivo destino antes de sobreescribirlo
$ cp -b listado.txt MisDocumentos
La copia de seguridad tiene una tilde, ~ al final de su nombre.
También podemos utilizar este comando para copiar directorios, pero para ello
tendremos que utilizar el parámetro -r, de esta forma se realiza una copia
recursiva, del directorio y su contenido.
$ cp -r MisDocumentos CopiaDocumentos
Página 18 de 33
MANDATOS EN LINUX IES Peset Aleixandre
$ mv listado.txt lista.txt
Eliminar archivos
$ rm unarchivovacio copialistado.txt
$ rm -i CopiaDocumentos/l*
$ rm -r CopiaDocumentos/MisImagenes
Es posible combinar los dos parámetros anteriores para evitar eliminar algún
fichero accidentalmente.
$ rm -ri CopiaDocumentos
Para evitar que Linux nos solicite confirmación podemos emplear el comando
-f.
$ rm -rf MisDocumentos/pruebas
Resumiendo:
$ ls /etc | more
$ ls /etc | less
O indicando directamente el nombre del archivo o archivos a visualizar
$ less lista.txt
$ less lista.txt nombres.txt
$ less n*
Como puede observar, el comando less una vez finalizado el listado visualiza
dos puntos en la última línea de la pantalla donde podemos introducir la tecla
de la acción deseada.
La instrucción ls
La instrucción utilizada en Linux para visualizar el contenido de un directorio
es ls. A diferencia del dir del antiguo MS_DOS las posibilidades de este
comando son muy extensas. ls dispone de más de 40 parámetros diferentes
que permiten obtener más o menos información al realizar el listado de
archivos y directorios.
Página 20 de 33
MANDATOS EN LINUX IES Peset Aleixandre
$ ls -lSh /etc
Página 21 de 33
MANDATOS EN LINUX IES Peset Aleixandre
Por ejemplo, podemos obtener el listado de todos los archivos que empieden
por n de nuestro directorio de trabajo.
$ ls n*
$ dir
$ ls -C –b
Buscar archivos
Aunque podemos intentar localizar un archivo o archivos realizando listados
de lso diferentes directorios de Linux, encontrar un archivo de esta forma si
no sabemos aproximadamente donde se encuentra puede convertirse en una
tarea titánica.
Linux pone a nuestra disposición diversas instrucciones que nos van a facilitar
el trabajo que puede suponer localizar un archivo si no sabemos dónde se
encuentra.
La más importante de ellas es find. Esta instrucción nos permite localizar
archivos o directorios a partir de alguna información conocida del mismo.
Si quisiéramos encontrar todos los archivos existentes que empiecen por
passw simplemente tendríamos que escribir la siguiente instrucción :
Pero egrep también soporta expresiones regulares como grep o fgrep, es por
ello que podemos emplear este comando indistintamente, siendo en más de
una ocasión más práctico y flexible que sus homólogos.
Página 23 de 33
MANDATOS EN LINUX IES Peset Aleixandre
Opciones de grep:
Los permisos de cada fichero se pueden ver con el comando ls -l. Para
cambiar los permisos de un fichero se emplea el comando chmod, que tiene
el formato siguiente:
chmod a -r fichero.txt
Página 25 de 33
MANDATOS EN LINUX IES Peset Aleixandre
7. VISUALIZACION DE ARCHIVOS
Visualización sin formato de un fichero. Comando cat
Este comando permite visualizar el contenido de uno o más ficheros de forma
no formateada. También permite copiar uno o más ficheros como apéndice de
otro ya existente. Algunas formas de utilizar este comando son las siguientes,
cat filename Saca por pantalla el contenido del fichero filename.cat file1
file2... Saca por pantalla, secuencialmente y según el orden especificado, el
contenido de los ficheros indicados.
cat file1 file2 >file3 El contenido de los ficheros file1 y file2 es
almacenado en file3.
Página 26 de 33
MANDATOS EN LINUX IES Peset Aleixandre
Página 27 de 33
MANDATOS EN LINUX IES Peset Aleixandre
Página 28 de 33
MANDATOS EN LINUX IES Peset Aleixandre
donde fichero1, fichero2 etc. son los ficheros que se van a añadir al archivo
tar.
Al contrario que tar que agrupa varios ficheros en uno, gzip comprime
un único fichero con lo que la información se mantiene pero se reduce
el tamaño del mismo. El uso de gzip es muy sencillo gzip fichero con
lo que se comprime fichero (que es borrado) y se crea un fichero con
nombre fichero.gz.
gzip –d fichero.gz
Página 29 de 33
MANDATOS EN LINUX IES Peset Aleixandre
Redirecciones
Los comandos de Linux tienen una entrada estándar (número 0) y dos
salidas estándar (número 1 para la salida normal del comando, y número 2
para la salida de los mensajes de error que se puedan producir en su
ejecución). Por defecto tanto la entrada como las salidas estándar de los
comandos son la propia terminal, a no ser que por la propia naturaleza del
comando se den en él los nombres de algunos ficheros que hagan el papel de
entrada y de salida. Por ejemplo, en el comando
cp file1 file2
ls >file
date >>archivo
donde -t iso9660 indica el tipo de sistema que usa la unidad de disco para
guardar los ficheros (las más usuales son: iso9660 en el caso de un CD-ROM,
vfat en el caso de Windows, y ext2 o ext3 en el caso de Linux),
/dev/cdrom indica el dispositivo que se va a montar. Todos los dispositivos
están representados por un fichero del directorio /dev, por ejemplo en el caso
de un disquete será seguramente /dev/fd0, por último
/mnt/cdrom es el directorio en el que se pondrá a disposición del usuario el
contenido del CD-ROM.
Para montar disquetes se suele utilizar el directorio /mnt/floppy. De todas
formas el usuario siempre puede crear un directorio vacío con el nombre que
el elija para montar las unidades de disco que desee donde desee. Cuando el
usuario haya dejado de usar ese disco deberá "desmontarlo" mediante el
comando umount antes de sacar el disquete o el CD-ROM. En este último
caso debería escribir:
umount /mnt/cdrom
mount /mnt/floppy
Página 32 de 33
MANDATOS EN LINUX IES Peset Aleixandre
Página 33 de 33