Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Guion-resumen
4-2
Introducción al modo comando
Para alternar entre los distintos terminales es preciso combinar la pulsación de las
teclas CTRL + ALT + Tecla de función correspondiente. En el caso de encon-
trarse trabajando en un terminal que no ejecuta el entorno gráfico, bastará
con pulsar ALT + Tecla de función para cambiarse al terminal deseado.
4-3
Anexo Linux
4-4
Introducción al modo comando
Cada distribución establece sus propias normas de configuración del comando sudo.
En el caso de Ubuntu, se realiza durante la instalación del sistema, mientras que si se trata
de distribuciones openSUSE o Fedora se realizará posteriormente a su instalación.
La utilización del comando sudo es la mejor forma de realizar tareas sin necesidad de
contar permanentemente con los privilegios (y riesgos) de la cuenta de usuario root, sino
únicamente cuando sea obligatorio.
Para configurarlo –si no se hizo durante la instalación– será necesario contar con privi-
legios de root. Para ello se ejecutará el comando su y se pulsará ENTER. En ese momento
se solicitará la contraseña de root. A partir de este momento ya es posible crear un fichero
de configuración que permitirá a una cuenta de usuario utilizar el comando sudo. Habi-
tualmente, este fichero se crea en el directorio /etc/sudoers.d con el mismo nombre que
tiene la cuenta del usuario (por ejemplo /etc/sudoers.d/prueba, si el nombre de la cuenta
es prueba). Este archivo debe cumplimentarse con un conjunto de instrucciones que serán
las que finalmente podrán ejecutar la cuenta de usuario prueba al ejecutar el comando
sudo. Por último, es muy importante consultar la documentación de cada distribución por
si fuera necesario asignar permisos específicos al archivo (por ejemplo: #chmod 440 /etc/
sudoers.d/prueba).
Pese a que es posible configurar sudo para que no sea obligatoria la introducción de
una contraseña cuando se le invoca, es una práctica totalmente desaconsejada por motivos
de seguridad.
2. Operaciones básicas
2.1. Iniciar y finalizar la sesión
En el momento de abrir un terminal de texto se solicitan las credenciales de acceso
(nombre de usuario y contraseña). Una vez introducidas y logrado el acceso al sistema,
no ocurre nada más hasta que se introduce algún comando. Una de las posibilidades es la
de iniciar una sesión en un sistema remoto, tanto a través de un terminal en modo texto
como en modo gráfico. Esta conexión remota se realiza mediante la ejecución de la utilidad
Secure Shell (SSH):
ssh nombre_usuario@servidor_remoto
La utilidad SSH conectará de forma segura con la máquina remota y facilitará al usua-
rio una interfaz de línea de comandos que permitirá operar en el sistema.
4-5
Anexo Linux
como el apagado son operaciones controladas por el proceso init. Se recomienda encareci-
damente realizar un apagado ordenado pues cualquier otro tipo de apagado puede originar
pérdida de datos o daños al sistema.
shutdown –h, apaga el sistema.
shutdown –r, reinicia el sistema.
Ambas operaciones exigen privilegios de root para su ejecución.
En un sistema Linux que sea utilizado por múltiples usuarios es habitual añadir un
mensaje que notifique una situación de apagado o reinicio y que será recibido por los
usuarios de dicho sistema:
shutdown –h 8:45 “Apagado del sistema por motivos de mantenimiento”
COMANDO RESULTADO
4-6
Introducción al modo comando
La mayor parte del tiempo se utilizan los caminos relativos, pues se ahorra tiempo
tecleando. Además, es común el empleo de algunos atajos como el punto (.), dos puntos
seguidos (..) y la virgulilla o tilde de la ñ (~).
COMANDO USO
4-7
Anexo Linux
Un enlace duro asocia dos o más ficheros compartiendo al mismo inodo. Esta situa-
ción provoca que un enlace duro sea una copia exacta del resto de los archivos asociados,
tanto de datos, como de usuario propietario o de permisos.
La ejecución del comando ls con opción –i muestra en pantalla el número inodo, que
es único para cada objeto. En el ejemplo anterior, el inodo será el mismo, lo que supone
que únicamente existe un archivo, pero que cuenta con 2 nombres asociados (archivo1 y
archivo2).
ln –s archivo1 archivo2
En Linux, todos los ficheros abiertos se representan internamente por los denomina-
dos descriptores de archivo (file descriptors). Se trata de números, comenzando por el 0. Así,
se asigna el valor 0 a stdin, el 1 a stdout y el 2 a stderr. Si se abren más archivos, contarán
con un descriptor a partir del número 3, puesto que los tres descriptores estándar se abren
por defecto.
4-8
Introducción al modo comando
El carácter necesario para representar una tubería es el la barra vertical (|) y se sitúa
entre dos comandos:
Esta secuencia permite a Linux combinar las acciones de varios comandos en uno solo,
lo que representa un método muy eficiente, pues consigue que las ejecuciones sean más
rápidas. Además, elimina la necesidad de la existencia de ficheros temporales que almace-
nen las salidas de los comandos, lo que ahorra espacio en disco y reduce las operaciones de
lectura y escritura en el mismo, que suelen ser la causa principal de los cuellos de botella.
3. La búsqueda de archivos
Es una operación bastante común en la administración de los sistemas Linux. Pueden
buscarse archivos conociendo su nombre completo o hacer uso de los comodines (en
inglés wildcards):
COMODÍN RESULTADO
Se corresponde con cualquier carácter distinto de los incluidos entre los cor-
[!texto]
chetes.
4-9
Anexo Linux
Las herramientas de línea de comandos más habituales para buscar y encontrar fiche-
ros en un sistema son locate y find.
3.1. locate
Esta utilidad realiza una búsqueda gracias a una base de datos de ficheros y directorios
construida previamente. Esta base de datos es creada por un programa (updatedb) que
suele ejecutarse una vez al día. Sin embargo, puede hacerse en cualquier momento simple-
mente ejecutando el comando updatedb en la línea de comandos con privilegios de root.
Debido a que la lista de archivos existente en la base de datos puede ser realmente
grande, es conveniente combinar esta herramienta con algunos filtros:
locate vmtools | grep bin
La ejecución de este comando devolverá todos los archivos y directorios que conten-
gan las cadenas vmtools y bin en su nombre.
3.2. find
Se trata de una utilidad muy utilizada por cualquier administrador de Linux. Funciona
recorriendo el sistema de archivos desde un punto concreto y localizando el archivo que se
corresponde con los criterios de búsqueda facilitados. El camino por defecto es siempre el
directorio de trabajo en ese momento.
Si no se facilitan argumentos, la ejecución de find mostrará los archivos del directorio
actual así como de sus subdirectorios. Es común utilizar algunas opciones para reducir los
resultados. Es el caso de –name, que devuelve únicamente archivos que cumplen una serie
de coincidencias en su nombre, o –type para especificar si se trata de un directorio (d),
enlace simbólico (l) o archivo estándar (f).
find /usr –name vmtools buscará archivos y directorios denominados vmtools en
el directorio /usr.
find /usr –type d –name vmtools buscará únicamente los directorios denomina-
dos vmtools en el directorio /usr.
find /usr –type f –name archivo1 buscará archivos con el nombre archivo1.
La utilidad find también permite realizar búsquedas basadas en criterios como fecha
y tamaño.
— Buscar por fecha. Es posible realizar búsquedas en función de ciertos atributos,
como la fecha de creación de un archivo, la de su último acceso, su última modi-
ficación, etc. Esta posibilidad se ofrece gracias a los metadatos del número inodo:
find / -ctime 3 buscará archivos en los que se ha cambiado algún
atributo (por ejemplo su propietario o sus permisos) en los últimos
3 días.
4-10
Introducción al modo comando
find / -atime 3 buscará los archivos que han sido accedidos en modo lectura en
los últimos 3 días.
find / -mtime 3 si se desea buscar los archivos modificados en los últimos 3 días.
Es posible buscar por minutos en lugar de por días, utilizando las opciones
–cmin, –amin y –mmin. Igualmente, pueden utilizarse los parámetros +n o
–n si se desea buscar coincidencias mayores o menores que el número que se
indique (establecido en n).
— Buscar por tamaño. Es posible especificar el tamaño del fichero que se busca
con la opción –size. Las combinaciones son múltiples, desde bytes (c), kilobytes
(k), megabytes (M), gigabytes (G), etcétera. Como en el caso anterior, es posible
utilizar un valor exacto (n) o buscar por valores mayores que el valor facilitado
(+n) o menores (-n).
find / –size +10M buscará los archivos de tamaño mayor a 10 Mb.
find / –size 0 buscará todos los archivos vacíos.
COMANDO USO
tac archivo1 Se utiliza para visualizar el contenido desde el final del fichero hasta el comienzo.
Puede utilizarse en archivos largos, pues permite la paginación así como la reali-
less archivo1
zación de búsquedas de contenido (opciones /, ?, etcétera).
Por defecto muestra las últimas 10 líneas de un fichero. Esta cantidad es modi-
tail archivo1
ficable con la opción -n.
Realiza la función opuesta a tail; muestra por defecto las primeras 10 líneas de
head archivo1
un fichero.
Tabla 4.5 Comandos empleados en tareas de visualización del contenido de los archivos.
4-11
Anexo Linux
COMANDO USO
mv Renombra un fichero.
rm Elimina un fichero.
COMANDO USO
mv Renombra un directorio.
4-12
Introducción al modo comando
Conviene prestar mucha atención a la ejecución del comando rm –rf, sobre todo si se
está trabajando con credenciales de root. Aunque es el método más rápido de eliminación,
puede convertirse en muy peligroso pues podría eliminar todo el sistema de archivos.
Las dos grandes familias de gestores de paquetes –los basados en Debian y los basa-
dos en RPM– son incompatibles, pero proporcionan casi las mismas características a nivel
general.
Consulte la siguiente tabla para conocer los comandos básicos para la gestión de
paquetes desde la CLI.
4-13
Anexo Linux
¿A qué paquetes pertenece un archivo? rpm –qf file dpkg --search file
4-14