Guia Basica para bachillerato de Circuitos Basicos
Comandos Linux 1.ppt
1. Comandos para la administración y
configuración de un sistema
UNIX/Linux
Parte I
2. Herencia de UNIX
Linux está inspirado en el sistema operativo Unix, que
apareció por primera vez en 1969, y que ha sido constantemente
utilizado y desarrollado desde entonces. Muchas de las
convenciones de diseño que hay detrás de Unix también están en
Linux y son fundamentales para entender los aspectos básicos del
sistema.
Unix estuvo orientado inicialmente a la interfaz de línea de
comandos, y ese legado ha llegado hasta Linux. Por tanto, la interfaz
gráfica de usuario con sus ventanas, iconos y menús se crea sobre
una interfaz básica de línea de comandos. Además, ésto significa
que el sistema de archivos de Linux está estructurado para ser
fácilmente manipulable y accesible desde la línea de comandos.
3. Directorios y sistemas de archivos
Los sistemas de archivos en Linux y Unix se organizan en
una estructura jerárquica tipo árbol. El nivel más alto del sistema de
archivos es el “/”.
Por ejemplo, /home/jebediah/cheeses.odt muestra la
dirección correcta al archivo cheeses.odt que existe en el directorio
jebediah que esta debajo del directorio home que de hecho esta en
el directorio (/).
Debajo del directorio raíz (/) Hay un grupo de directorios
importantes del sistema que son comunes a través de las
distribuciones de Linux mas usadas.
4. Estándar de Sistemas de archivos *NIX
El Filesystem Hierarchy Standard (Estándar de
Jerarquía de Sistema de Archivos) o FHS define los directorios
principales y sus contenidos en Linux y otros sistemas de la familia
Unix. Se diseñó originalmente en 1994 para estandarizar el sistema
de archivos entre distribuciones de GNU/Linux, basándose en la
tradicional organización de directorios de sistemas Unix. En 1995 se
amplió el ámbito del estándar a cualquier Unix que se adhiriese
voluntariamente.
http://www.pathname.com/fhs/
5. Directorios y sistemas de archivos
según FHS
/bin/ Órdenes esenciales binarios para todos los usuarios (cat, ls, cp...)
/dev/ Dispositivos
/home/ Directorios de datos de los usuarios
/etc/ Archivos de configuración del sistema
/lib/ Librerías esenciales para los binarios de /bin y /sbin
/var/ Archivos variables utilizados por programas instaladas, como logs y
archivos temporales
/opt/ Paquetes de programas de aplicaciones estáticos
/sbin/ Binarios de superusuario esenciales (init, route, ifup..)
/proc/ Sistema de archivos que documenta el estado del núcleo (kernel),
principalmente archivos de texto (tiempo, red...), estos archivos permiten
conocer y cambiar ciertos parámetros del núcleo sin necesidad de reiniciar el
sistema
/mnt/ Sistemas de archivos montados temporalmente
6. Directorios y sistemas de archivos de
la distribución Linux UBUNTU
/bin - aplicaciones binarias importantes
/boot - Archivos de configuración de inicio
/dev - los archivos de dispositivo
/etc - archivos de configuración, scripts (archivos de proceso de
comandos por lote) de inicio etc...
/home - directorios personales de usuarios locales
/lib - librerías del sistema
/lost+found - proporciona un sistema de perdidos+encontrados
para archivos que existen debajo del directorio raíz (/)
/media - soportes extraíbles montados (cargados) como CDs,
cámaras digitales, etc...
/mnt - sistemas de archivos montados manualmente
7. /opt - proporciona una ubicación en la que se pueden instalar
aplicaciones opcionales
/proc - directorio dinámico especial que mantiene información
sobre el estado del sistema, incluyendo los procesos actualmente
en ejecución
/root - directorio personal del usuario root
/sbin - binarios importantes del sistema
/sys - archivos del sistema
/tmp - archivos temporales
/usr - aplicaciones y archivos mayoritariamente disponibles para
todos los usuarios
/var - archivos variables tales como archivos de registros y bases
de datos
Directorios y sistemas de archivos de
la distribución Linux UBUNTU
8. Terminal de comandos
Trabajar en la línea de comandos o modo de consola no es una tarea tan
tediosa como se pudiera pensar. No se necesitan conocimientos especiales
para saber cómo usar la línea de comandos: es un programa como cualquier
otro. En Linux se pueden hacer muchas cosas usando la línea de comandos, y
aunque hay herramientas graficas para la gran mayoría de programas, a veces
no son suficientes. Aquí es donde puede resultar útil la línea de comandos.
Al terminal también se le llama frecuentemente «línea de comandos», “shell”
o modo de consola. En días pasados, esta era la forma en la que el usuario
interactuaba con el equipo; sin embargo, los usuarios de Linux han
comprobado que el uso de la shell puede ser más rápido que un método
gráfico, y todavía hoy mantiene cierto mérito.
El uso original de la terminal era como explorador de archivos y aún se sigue
usando como explorador de archivos, en el caso de que el entorno gráfico
fallara. Puede usar la terminal como explorador de archivos para navegar por
los archivos y deshacer los cambios que se pudieron haber hecho.
9. Terminal de comandos
El método normal de acceder a una línea de comandos en
Ubuntu es iniciar una terminal en el escritorio: Aplicaciones-
>Accesorios->Terminal
A veces es útil pasar a una consola real: Use la combinación de
teclas Ctrl-Alt-F1 para pasar a la primera consola.
Para regresar al modo Escritorio, use el siguiente atajo de
teclado: Ctrl-Alt-F7.
Existen seis consolas disponibles. Para acceder a cada una utilice
los atajos de teclado Ctrl-Alt-F1 a Ctrl-Alt-F6.
10. Editor de textos
Si necesita usar un editor de textos desde la
línea de comandos, puede usar nano, que es un
editor de textos fácil de usar. Cuando lo ejecute
desde la línea de comandos, utilice siempre el
siguiente comando, para asegurar que el editor no
introduzca saltos de línea:
nano -w
11. Editor de textos
Hay también algunos otros editores basados
en terminal disponibles en Ubuntu, entre los mas
populares están VIM y Emacs (los pros y los
contras de cada uno son causa de debates
amistosos dentro de la comunidad Linux). Éstos
normalmente son más difíciles de usar que nano,
aunque también son más potentes.
12. Estructura general de comandos
La sintaxis básica de todos los comandos es:
COMANDO [OPCIONES] ARGUMENTOS
donde:
COMANDO : es el nombre del comando.
[OPCIONES] : son caracteres opcionales propios de cada comando.
ARGUMENTOS: son los objetos con los que van a trabajar los comandos (normalmente
son nombres de archivos).
Se pueden poner varios comandos en una misma línea separándolos con un ";".
La longitud de la línea del terminal está limitada, por lo que para continuar escribiendo un
comando en la línea siguiente se pone un backslash () al final de la línea y se pulsa “enter"
para saltar a la siguiente línea.
Se pueden ejecutar los comandos como un "todo" poniéndolos entre paréntesis.
13. Comando sudo: “superuser do”
Muchos de los comandos que usaremos en la
administración de un sistema UNIX/Linux
requerirán ser precedidos por sudo, el cual
permitirá acceder a archivos y directorios con los
privilegios de superusuario (cuenta de usuario
root).
Ejemplo: sudo whoami
14. Comando whoami: ¿ Quien soy yo ?
Permite saber el nombre de usuario utilizado
actualmente.
Ejemplo:
$> whoami
Resultado: se devuelve “nombreusuario”
15. Comando su nombreusuario: cambio de usuario
Permite cambiar desde de una usuario actual a un ambiente
de otro usuario. En el caso de omitir el nombre de usuario de
destino se asume que se cambia al usuario root. Con “exit” o
<Ctrl+D> se vuelve al ambiente del usuario anterior.
Ejemplo:
$> su jperez
Resultado: cambio a ambiente de usuario jperez
$> su
Resultado: cambio a ambiente de usuario root (superusuario)
16. Comando pwd: “print working directory"
Permite conocer en que directorio se encuentra
ubicado actualmente.
Ejemplo:
$> pwd
Resultado: /home/jperez
17. Comando ls: “list“ (1)
Lista el contenido del directorio en que nos
encontramos. Si ponemos sólo ls, se obtiene una
lista con el nombre de los archivos; si se quiere
obtener más información sobre esos archivos se
utilizan las opciones del comando, cuya sintaxis
general es:
ls [-alsF] nombrearchivo
18. Comando ls: “list“ (2)
La siguiente es la lista de opciones que permite el comando
ls:
-a Lista además los archivos invisibles (es decir, los que empiezan
por punto)
-l Dá la información completa de los archivos listados
-s El tamaño del archivo en kilobytes (1024 bytes) precede al
nombre de cada archivo.
-F Añade un / a los “archivos directorios” y un * a los “archivos
ordinarios” ejecutables.
19. Comando cd: “change directory"
El comando cd le permitirá cambiar de directorio.
Para ir al directorio raíz, utilice "cd /"
Para ir a su directorio home, utilice "cd"
Para ir a un nivel superior, utilice "cd .."
Para ir al directorio previamente seleccionado, utilice "cd -"
Para ir a un directorio especifico de cualquier nivel, utilice, por
ejemplo, "cd /var/lib“, lo que le permitirá ir directamente al
subdirectorio “/lib” de “/var”.
20. Comando touch: crea un archivo vacío
Ejemplo:
$> touch archivo1
Resultado: se crea un archivo vacío llamado “archivo1”.
21. Comando cp: “copy"
El comando cp se utiliza para copiar archivos. Su sintaxis es:
cp [-ir] archivo_origen archivo_destino
-i : Origina que el comando requiera una confirmación, en el caso de que el archivo
destino ya exista; es decir, pregunta si se desea hacer la copia.
-r : PARA COPIAR UN DIRECTORIO COMPLETO.
archivo_origen: Nombre del archivo que se va a copiar.
archivo_destino: Nombre del archivo en el que se va a copiar el contenido del archivo
origen
En el caso de que el archivo destino ya exista, lo va a reemplazar, por lo que es
recomendable utilizar la opción -i para que nos pida confirmación y así evitar posibles
errores. Por ejemplo:
$> cp -i datos datos.new
22. Comando mv: “move"
El comando mv se utiliza para renombrar archivos; es decir, el
contenido del archivo no cambia, sólo cambia el nombre; o para mover archivos
entre directorios. La sintaxis del comando es:
mv [-i] archivo_origen archivo_destino
-i : Origina que el comando requiera una confirmación, en el caso de que el
archivo destino ya exista; es decir, pregunta si se desea hacer la copia.
archivo_origen: Nombre del archivo que se va a renombrar.
archivo_destino: Nombre del archivo en el que se va a copiar el contenido del
archivo origen
En el caso de que el archivo destino exista, lo reemplaza.
23. Comando rm: “remove"
El comando rm se utiliza para borrar archivos (y
directorios). La sintaxis de este comando es:
rm [-i] archivo(s)
-i : Origina que el comando requiera confirmación para ejecutarse.
archivo(s) : Nombre o nombres de los archivos que se van a borrar.
La opción -i se debe de utilizar para pedir confirmación
antes de proceder al borrado.
24. Comando rmdir: “remove directory"
rmdir nombredirectorio: Borra el directorio
nombredirectorio.
Si el directorio no está vacío podemos usar:
rm -rf nombredirectorio (con mucho cuidado)
25. Comando mkdir: “make directory"
mkdir nombredirectorio: Crea el directorio
nombredirectorio.
Ejemplo:
$> mkdir directorio1
Resultado: se crea el directorio “directorio1” en la ubicación
actual.