¡Esta es una revisión vieja del documento!
Tabla de Contenidos
Trabajo con comandos
Consolas virtuales
Una consola virtual es una manera de conectarse a Linux sin entorno gráfico. De esta forma nos comunicaremos con el sistema operativo a través de comandos.
Linux tiene diferentes terminales a través de los que podemos conectarnos con una consola (todo esto viene de la época en la que terminal, consola y monitor eran dispositivos diferentes, hoy pueden considerarse sinónimos). Los terminales son nombrados como ttyn, siendo n el número de terminal. El número de terminales disponibles puede variar de una distribución a otra.
Para abrir cada terminal pulsamos ctrl + alt + F[1-7, según el número de terminal a utilizar]. Para comenzar a usar el terminal, debemos identificarnos con nuestro usuario y contraseña.
Permisos en la ejecución de comandos
Los comandos son órdenes introducidas mediante texto al sistema. El superusuario root no tendrá ningún límite, pero los usuarios corrientes, sólo podrán realizar acciones en su directorio de usuario.
Los comandos pueden tener opciones que agregan funcionalidad a su cometido principal. Estas opciones pueden definirse con el carácter - seguido de una letra, o – seguido de una palabra. Para definir varias opciones con -, basta con indicar las letras a continuación del guión (sin espacios).
En algunas distribuciones linux (como Ubuntu) el usuario root no está activado por seguridad, por lo que el usuario primario (el que se creó al instalar el sistema operativo), es el que asume la capacidad de root a través del comando sudo, antepuesto a cualquier otro que requiera permisos de superusuario.
Es posible activar el usuario root con la instrucción:
sudo passwd root
El sistema nos pedirá su contraseña y el superusuario quedará activo. Para asumir el papel de root sin activarlo podemos acceder a las siguientes instrucciones:
sudo -i sudo su
Con el comando exit volveríamos a nuestro usuario.
Para ejecutar abrimos un terminal en nuestro escritorio Linux, clicando en el icono “terminal”, o pulsando ctrl + T. Para abrir un terminal de root, escribimos en un terminal común:
gksu terminal
La mayoría de los comandos que sólo se pueden ejecutar con permisos de superusuario se encuentran en /sbin y /usr/sbin.
Comandos de ayuda
man: manual de comando
Proporciona información acerca del comando especificado.
man ls
xman: manual de comandos gráfica
Accedemos en el entorno gráfico al manual de comandos. No hay que escribir nada más.
help: ayuda
Se especifica como opción de un comando precedido de dos guiones. Muestra la ayuda del comando y lista sus opciones. También puede ejecutarse como -h.
wget --help
info: programa ayuda
Al especificar un comando, pasamos a una interfaz navegable con enlaces entre páginas. Muy útil cuando man no es suficiente, o no tiene entrada a otro comando.
Los enlaces se indican con *, seguido por el título del enlace seguido de ::. Para seguir un enlace, se pone el cursor sobre él y se pulsa intro.
Para navegar por este programa:
- b: Retroceder a la última página visitada.
- u: Nivel superior en el árbol de páginas.
- n: Siguiente página.
- p: Página previa.
Se sale del programa pulsando la letra q.
apropos: buscar comando
Introduciendo una palabra clave, o parte de la palabra, la busca en las páginas del manual (man) y las descripciones.
whatis: descripciones de comandos
Muestra un resumen de las especificaciones del comando, extraídas de la descripción breve de las páginas del manual.
Comandos para trabajar con archivos y directorios
ls: listado de directorio
El comando ls lista el contenido del directorio donde nos encontremos, o del directorio especificado. Pueden usarse comodines (carácter * que vale por cualquier cadena de caracteres), y la tecla TAB para autocompletar el nombre de archivos y directorios.
Opciones:
- -l: Muestra información de los archivos: permisos, propietario, grupo, tamaño, etc.
- -lh: Además de la información mostrada anteriormente, especifica los tamaños de los elementos listados con K, M, G, etc.
- -i: Muestra los inodos de los archivos y directorios listados.
- -a: Además, muestra los archivos y directorios ocultos.
- -R: Muestra los elementos de forma recursiva, es decir, todo el árbol de subdirectorios y su contenido.
Un comando similar a éste es dir.
cd: acceder a directorios
El comando cd sirve para moverse por el árbol de directorios. para ello basta con especificar el directorio al que acceder a continuación de cd:
cd Documentos/Aula\ Mentor
En el ejemplo anterior, el carácter \ es el caracter de escape: al ponerlo se indica que el espacio es parte del nombre.
Puede usarse . para indicar que se parte del directorio actual, y .. para indicar que se parte del directorio inmediatamente superior. Si escribimos cd .. accederíamos al directorio superior. El carácter / al comienzo, indica que partimos del directorio raíz.
Si escribimos simplemente cd, accederíamos al directorio principal del usuario.
No olvidar que con la tecla TAB autocompletamos el nombre del directorio que estamos escribiendo, siempre que no haya otra coincidencia.
mkdir: creación de directorios
Sirve para crear directorios. Un usuario normal sólo puede crearlos en su propio directorio.
rmdir: borrado de directorios
El directorio debe de estar vacío para poder borrarlo. Sólo podrán borrarse directorios que se encuentren bajo el directorio del usuario (salvo si es root).
cp: copiar
Comando para copiar archivos y directorios. Hay que tener cuidado, ya que por defecto, si asignamos un nombre que ya existe, este archivo se sobrescribirá (perderemos esa información irremediablemente).
cp [archivo a copiar] [nuevo archivo copiado]
Se puede indicar el directorio en el que nos encontramos con un punto.
mv: mover
Este comando sirve tanto para mover un archivo o directorio de una ubicación a otra, como para cambiar el nombre a un archivo o directorio.
mv archivoOrigen archivoDestino
Si en el archivo de destino indicamos otro nombre diferente del archivo de origen, cambiará el nombre. Si la ubicación de origen y destino es la misma, el archivo (o directorio) cambiará de nombre.
rm: borrar archivos y directorios
Lo borra bien borrado. Algunas opciones útiles:
- -r: Borrado recursivo. Sirve para borrar un directorio que no está vacío. Todo lo que contiene es eliminado.
- -i: El sistema pide confirmación cada vez que va a eliminar un archivo.
chmod: gestión de permisos
Cambia los permisos de los archivos y directorios de los que el usuario es propietario. Sólo el superusuario puede modificar los permisos de cualquier archivo.
chmod [opciones] [modo de cambio] [archivo|directorio]
Las opciones más comunes son:
- -R: Usado sobre un directorio, realiza el cambio en cada elemento que contenga ese directorio y todos sus subdirectorios.
- -v: Muestra todas las acciones que se han efectuado en cada archivo o directorio.
Existen dos modos, o maneras, de cambiar los permisos:
- Modo octal: en [modo cambio] se indican los nuevos permisos escribiendo tres números: ugo
- u: Permisos del usuario.
- g: Permisos del grupo.
- o: Permisos del resto de usuarios del sistema operativo.
- Cada número representa en decimal, un registro de 3 bits, que en función de su estado (1,0) indica respectivamente los permisos de: lectura (bit 2, valor 4), escritura (bit 1, valor 2) y ejecución (bit 0, valor 1). La suma de sus valores determina los permisos. Ejemplo:
chmod 764 directorio1/archivoPrueba
- Modo simbólico: se especifican, separados por comas, los cambios que se van a hacer en el archivo especificado. En cada cambio hay que indicar a los usuarios que afecta (u, g, o), si se dan o se quitan permisos (+, -) y cuáles son esos permisos (r, w, x). Ejemplo:
chmod go+w, g-x directorio1/archivoPrueba
chown: cambio de propietario y grupo
Para poder cambiar el usuario propietario y el grupo propietario de un archivo o carpeta se utiliza el comando chown (change owner). Para ello hay que disponer de permisos de escritura sobre el archivo o carpeta.
Sintaxis: chown [nuevo_usuario] [nuevo_grupo] [nombre_archivo]
cat: muestra contenido
Muestra el contenido de uno o varios ficheros de texto por la pantalla. Si el contenido es muy largo, sólo se verá el final, por lo que puede usarse unido a otros dos comandos separados por el caracter '|' para solucionarlo:
- cat nombreFichero | more: Puede ir pasándose el fichero de pantalla en pantalla de forma manual.
- cat nombreFichero | less: Permite movre el fichero hacia arriba y hacia abajo.
Si se especifican varios ficheros, se imprimirán en pantalla uno a continuación de otro sin ningún tipo de separación.
ln: crea enlace a fichero
Crea un enlace a un fichero que puede estar en otra ubicación. Hay de dos tipos:
- Duros: Se crean de la forma ln nombreFichero nombreEnlace y se trata DEL MISMO fichero aunque tenga un nombre diferente (mismo inodo). Cuando se elimina, el contenido continúa existiendo mientras halla un archivo o enlace “duro” que lo referencie.
- Blandos o simbólicos: Se crean con la opción -s y es un archivo diferente del que apunta. Similar al acceso directo de Windows.
Comandos para obtener información del sistema
dmidecode: información del sistema (root)
Este comando requiere permisos de superusuario o root. Muestra una gran cantidad de información del sistema. Para poder ver la salida del terminal paginada, se utiliza la sintaxis dmidecode | less. Para salir del paginador, se pulsa la letra q.
df: información de particiones
Muestra información de las particiones del sistema: tamaño, espacio usado, espacio disponible y punto de montaje (esto es la ubicación donde se han montado).
La opción -h muestra las unidades de los tamaños (Mb, Gb, etc.).
du: información de directorio
Muestra información relativa al directorio especificado: espacio que ocupa y subdirectorios que incluye.
La opción -h muestra las unidades de los tamaños (Mb, Gb, etc.).
date: fecha
Muestra la fecha en formato local. Con la opción -u se obtiene la fecha universal.
lspci: dispositivos PCI
Muestra los dispositivos PCI conectados al ordenador. Con la opción -vmm se informa información más detallada acerca de cada dispositivo.
uname: información del sistema
Muestra información del sistema Linux al que estamos conectados. Con la opción -sr nos informa además del nombre y versión del kernel de Linux.
lsb_release: información de distribución Linux
Ofrece información de la distribución de Linux que estamos usando. Con las opciones -icd indica distribución, versión y nombre.
Comandos de gestión de usuarios (permisos de root)
adduser: crear usuario o grupo vacío
Crea un nuevo usuario. Su sintaxis es adduser [nombreNuevoUsuario], y tras introducir el comando, el sistema pide su contraseña. El directorio del nuevo usuario se encuentra en /home, y sus archivos de configuración en /etc/skel. Por defecto, al crearse un nuevo usuario, se crea un grupo con su mismo nombre.
Las opciones de este comando se encuentran en el archivo /etc/adduser.conf.
Puede especificarse un grupo al que se añadirá al nuevo usuario que se va a crear, con la sintaxis adduser [nombreNuevoUsuario] [nombreGrupo].
También puede especificarse para crear un grupo vacío (sin ningún usuario) con la opción –group y especificando el nombre del nuevo grupo.
addgroup: crear grupo vacío
Crea un grupo que no contiene ningún usuario. Equivalente a adduser –group [nombreNuevoGrupo]
deluser: Borra usuario
Borra el usuario cuyo nombre se especifique a continuación, pero no su directorio /home/usuario. Para ello puede usarse la opción –remove-home. También se usa para eliminar a un usuario de un grupo, con la sintaxis: deluser [nombreUsuario] [nombreGrupo].
addgroup: crear grupo
Se utiliza para crear un grupo nuevo vacío. La sintaxis es: addgroup [nombreGrupo].
delgroup: borrar grupo vacío
Borra un grupo de usuarios que esté vacío. Sintaxis del comando: delgroup [nombreGrupo].
Comandos de gestión de paquetes
apt-get: instalación de paquetes desde internet
Comando que sirve para instalar paquetes desde internet, equivalente a la herramienta gráfica Synaptic.
dpkg: instalación de paquetes locales
Instala un paquete que se encuentre en el equipo local.
Comandos de montaje de dispositivos
mount: montar unidad
Incorpora un dispositivo. Si se ejecuta sin opciones, lo incorpora al directorio raíz. Lo habitual es usar la sintaxis: mount [opciones] [dispositivo] [puntoMontaje], en el que puntoMontaje hace referencia a la ubicación del dispositivo en el árbol de directorios.
Algunas opciones:
- -t: indica el tipo de fichero a montar: ext3, ext4, ntfs, etc.
- -a: monta todos los dispositivos que aparecen en el archivo /etc/fstab, salvo los que tienen la opción noauto o están seleccionados por el tipo -t.
- -w: Monta los dispositivos como lectura/escritura.
Un ejemplo:
mount -t ext3 /dev/sda2 /mnt
umount: desmontar unidad
Este comando desmonta un dispositivo del árbol de directorios. Puede especificarse el dispositivo o el punto de montaje.
Comandos de red
ifconfig: información conexiones
Muestra información de las conexiones de red.
iwconfig;; información conexiones inalámbricas
Muestra información de las conexiones inalámbricas.
Comandos de gestión de procesos
/etc/init.d/[proceso] [acción]
Ejecutar una acción para un proceso concreto. Las acciones que se pueden ejecutar para cualquier proceso del sistema son:
- start: Inicia el proceso.
- stop: Detiene el proceso.
- restart: Reinicia el proceso.
halt: detención de procesos y apagado
Este comando detiene todos los procesos abiertos del sistema y apaga el equipo.
reboot: reinicio del sistema
Este comando detiene todos los procesos abiertos del sistema y reinicia el equipo.
Otros comandos
wget: gestor de descargas desde web
Este gestor de descargas puede usarse para descargar un archivo desde una página web o dirección ftp, con la sintaxis: wget [rutaArchivo]. El archivo se descargará en el directorio donde nos encontremos. Pueden descargarse varios archivos, separando con un espacio las diferentes rutas: wget [rutaArchivo1] [rutaArchivo2] [rutaArchivo3].
Pueden usarse las siguientes opciones:
- -i: Si son muchos archivos a descargar, pueden especificarse todas las rutas en un archivo de texto, con una ruta por línea. con esta opción e indicando la ruta al archivo de texto, comenzarán a descargarse todos los archivos indicados.
- -c: Para continuar con una descarga interrumpida wget -c [rutaArchivo].
También es posible usar wget para descargar páginas web completas, indicándo su ruta. En este caso pueden usarse estas opciones:
- -p: Se descargan archivos de estilo (CSS) y otros complementos.
- -r: Se descarga hasta el nivel 5 de la página web.
- -l: Se descarga hasta el nivel que se indique a continuación de la opción, sin dejar ningún espacio: wget -l4 [rutaWeb].
- -k: Convierte los enlaces entre los archivos descargados, para poder navegar sin conexión.
- -P: Para especificar un el directorio de descarga, en vez de descargar en el que nos encontremos.
