Linux

Ejercicios y preguntas teóricas Linux

Ejercicios y preguntas teóricas Linux  icon-linux 

Aquí están 100 ejercicios básicos para aprender a manejar una consola Unix. Preguntas teóricas al final.

¿Cómo asignar una IP a mi ordenador?

ifconfig [interface] nº de IP

¿Cómo hago para ver los archivos del directorio anterior?

ls ../

¿Cómo sé en qué directorio estoy?

pwd

¿Como veo los archivos en un directorio?

ls

¿Cómo puedo crear uno o varios directorios?

Introduzco mi nombre de usuario (login:) y mi clave (password:) Utilizo exit para salir de una consola

¿Cómo puedo crear archivos en Unix?

Con el comando “touch” seguido del nombre de archivo que quiero crear.

¿Cómo puedo iniciar y cerrar sesión con mi nombre de usuario?

Introduzco mi nombre de usuario (login:) y mi clave (password:) Utilizo exit para salir de una consola

¿Cómo puedo crear uno o varios directorios?

Con el comando mkdir seguido del nombre o nombres, separados por espacio, de los directorios que quiero crear.

¿Con qué comando se monitorea la memoria?

Comando top

¿Cómo puedo ver el contenido de un archivo sin abrirlo?

Utilizando el comando cat

¿Cuál es el comando para saber donde estás?

Pwd

¿Cómo se quien soy?

Utilizando el comando whoami

¿Puedo tener más de una consola abierta?

Sí. Y se puede alternar entre ellas con el atajo de teclado alt +f1, f2, f3 según a la consola que queramos cambiar

¿Existen físicamente todos los dispositivos que hay en /dev?

No

¿Qué comando reinicia el equipo?

Reboot

 ¿Comando para apagar mi ordenador?

Halt ; shutdown -h

¿Cómo borro la pantalla?

Clear

¿Con qué comando puedo empaquetar y desempaquetar un conjunto de archivos o directorios?

empaquetar: tar -c desempaquetar: tar -x

 ¿Con que comando genérico de UNIX puedo comprimir y descomprimir archivos y directorios?

gzip y gunzip

¿Cómo sé los usuarios conectados a mi máquina?

who

 ¿Cómo puedo obtener información detallada de un comando?

con el man “nombrecomando”

¿Donde se escriben los comandos?

En el promt

¿Cómo un archivo sin posibilidad de recuperación

con shred

¿Cómo creo un enlace?

con ln

 ¿Cómo borrar directorios con todos sus archivos dentro?

rm -r

 ¿Cómo averiguar la cantidad de disco utilizado?

Du

¿Cómo se le llaman a los drivers en UNIX?

Módulos

En consola, ¿cómo puedo autocompletar?

Con la tecla TAB

¿Cómo puedo matar un proceso?

con kill

¿Qué es el kernel?

Es el núcleo del sistema operativo

¿Cómo se que versión del kernel tengo?

uname -r

¿Cómo cargo y descargo un módulo?

insmod y rmmod

¿Cómo visualizo los módulos cargados?

Lsmod

¿Cómo obtengo la información sobre un módulo determinado?

con modinfo

¿Cómo se le llama al intérprete de comandos?

bash

¿Cómo ver lo que hacen los usuarios que están conectados en la red?

comando w

 ¿Dónde se guardan los archivos de configuración del sistema?

en /etc

 ¿Cómo diferencio entre ruta absoluta y ruta relativa?

Si hay una / delante de la ruta

 ¿Dónde se guardan los archivos de usuario?

en /home

¿Cómo puedo ver los detalles de un archivo?

con ls -i

¿De qué forma puedo crear, eliminar o modificar particiones en UNIX?

con fdisk

¿Cuántos niveles de ejecución tiene linux?

5

¿Cómo ejecuto un proceso en 2º plano?

Comando &

¿Cómo traer un proceso en 2º plano al 1º?

con fg %n proceso

¿Cómo puedo buscar la ubicación de un comando determinado?

whereis comando

¿Cómo borro un directorio?

con el comando rmdir

¿Puede haber 2 archivos o más con la misma ruta absoluta?

No

¿Cómo situar el cursor al principio de una línea?

con ctrl + a

¿Cómo visualizo la fecha y hora del sistema?

comando date

¿Cómo puedo obtener ayuda acerca de un comando?

comando –help

¿Qué letra significa permiso de ejecución?

X

¿A que se refiere cuando se dice que los entornos Unix son CASE SENSITIVE?

Que distingue mayúsculas de minúsculas

¿Qué significa ./ ?

directorio actual

¿Qué significa ../ ?

directorio anterior

¿Qué significan las letras FHS?

Es un standard de jerarquía de archivos, significa: File Hierarchy System

¿Qué es un archivo con extensión .rpm?

Sistema gestor de paquetes (rpm:redhat package manager)

¿Qué es una consola?

Es un intérprete de comandos

¿Cómo puedo ver más allá de la pantalla?

Shift+Av Pág, para avanzar Shift+Re Pág, para retroceder

¿Cómo consulto el historial de comandos?

Con los cursores (flechas arriba y abajo)

¿Qué es pts?

Es un emulador de la terminal de consola en modo gráfico

¿Cómo accedo a la consola desde el modo gráfico?

Ctrl+Alt+Fx (donde x será el número de la consola tty a la que se quiera acceder)

¿Cómo se los grupos a los que pertenezco?

utilizando el comando groups

¿Qué hace el comando echo?

muestra los argumentos por pantalla

 ¿Cómo puedo saber en que consola me encuentro?

con el comando tty

¿Cómo se hace un enlace simbólico?

ln -s origen nombre_enlace

¿Cómo hago un enlace en el directorio dir a un archivo en el directorio actual?

ln -s archivo.ejemplo dir/ Si no pongo el nombre de archivo el enlace tendrá el mismo nombre

¿Cómo hago para ir al final de línea en una consola?

C-e (Control y la tecla e)

¿Cómo hago para avanzar hacia atrás, palabra a palabra, en una consola?

M-b (La tecla META en una plataforma IA32 suele ser la tecla ALT)

¿Cómo hago para borrar desde el cursos hasta el final de línea?

C-k

¿Cómo hago para borrar la palabra siguiente?

M-d

¿Cómo sé cual es el nombre de la máquina en la que estoy conectado?

hostname . También vale uname -n

¿Cómo hago para ver las variables de entorno de mi sesión?

env . Aunque también vale printenv o set (que en realidad sirve para asignar variables)

Puedo ejecutar un comando que no esté en mi directorio actual

Sí, puedo ejecutar un comando poniendo la ruta absoluta y/o relativa. Por ejemplo /sbin/comando . También es posible ejecutar el comando si está en los directorios que contiene la variable de entorno PATH

¿Cómo muestro el contenido de la variable PATH?

echo $PATH . Un ejemplo típico es: /usr/local/bin:/usr/bin:/bin:/usr/bin/X11 , observa que hay varios directorios separados por el caracter delimitado ‘:’

¿Cómo hago para escribir en consola, sin parar, “Hola, soy yo”?

yes “Hola, soy yo”

¿Cómo hago para copiar archivo1 a archivo2 que está en el directorio dir?

cp archivo1 ./dir/

Quiero construir un archivo suma que tenga el contenido de A1 y A2, ¿cómo hago?

cat A1 A2 > suma

¿Cómo sé cuantas líneas tiene un archivo?

wc -l

Suponiendo que tengo el archivo software.tar.gz y el archivo de firma MD5 software.tar.gz.md5, ¿cómo compruebo que es correcta?

md5sum -cv software.tar.gz.md5

Cómo hago para extraer campos de texto de un archivo

Con el comando cut . El archivo tiene líneas de texto, separadas por el caracter de salto de línea \n. Además cada línea de texto tiene los campos separados por un caracter delimitado, el estándar es ‘:

¿Cómo redirecciono la salida estándar de error?

Utilizando un 2 antes del operador de salida estandar. Por ejemplo: comando 2>archivo_error

¿cómo hago para cancelar la operación de un comando?

C-c

¿Cómo hago para enviar el caracter EOF a la entrada estándar?

C-d

¿Puedo descomprimir un archivo ZIP Windows en Linux?

Sí, con el comando unzip. Este comando no está instalado de forma estándar. También existe el comando unrar para descomprimir el formato RAR

¿Cómo hago para saber el tiempo que tarda en ejecutarse un comando?

time comando

Si quiero crear el directorio dir11 dentro de dir1, y dir1 no existe, ¿cómo lo hago con una sola instrucción?

mkdir -p dir1/dir11 . Es la opción p del comando mkdir

¿Cómo hago para encontrar si hay un usuario que se llame pepe?

grep pepe /etc/passwd

¿Cómo mostrar todas las líneas de un archivo de texto que NO contengan la palabra hola?

grep -v hola archivo.txt

¿Cómo hago para ver qué usuarios no tienen una shell asignada?

grep “:$” /etc/passwd . $ es el caracter especial de las expresiones regulares para el fin de línea, por lo tanto el patrón coincide con las líneas que terminan en : , es decir que no tienen una shell asignada

¿Como encuentro los archivos terminados en .txt en mi directorio actual?

ls *.txt o también find ./ -name .txt

Quiero ver el contenido de los archivos de texto que empiecen por a, seguidos de un 3 o un 4, y terminados en .sh, ¿como hago?

cat a[23]*.sh

Estoy perdido en el árbol de directorios, ¿cómo vuelvo a mi HOME?

cd o también cd ~ . El home está en la variable de entorno HOME, o en el caracter ~

Quiero ver cuanto espacio ocupa mi home, ¿cómo hago?

du -sh ~

Situarnos en nuestro directorio de usuario

cd ~

Crear un directorio

mkdir nueva_carpeta

Acceder a un directorio

cd nueva_carpeta

Crear un archivo

touch archivo_nuevo.txt

Cambiar el nombre de un archivo

mv archivo_nuevo.txt archivo_viejo.txt

Añadir texto a archivo desde terminal

echo “Nueva línea de texto” >> archivo_viejo.txt

Cambiar permisos de archivo para que todos puedan leerlo, escribir y ejecutar

chmod 777 archivo_viejo.txt

Subir un directorio

cd ..

Crear un enlace a un archivo

ln -s nueva_carpeta/archivo_viejo.txt enlace.ln

Eliminar una carpeta y todo su contenido

rm -R nueva_carpeta

 

icon-info-circle Mas información  icon-hand-o-right https://www.cesareox.com/docencia/simm/usar-consola-unix

PREGUNTAS TEÓRICAS GENERALES

 

¿Por qué decimos que “Linux” es solamente el kernel del sistema operativo que utilizamos?

Linux es el nombre del kernel del sistema operativo GNU/Linux. El resto del sistema fue desarrollado por el proyecto GNU y por eso se llama GNU/Linux.

¿Qué representa cada una de las columnas que vemos por pantalla al ejecutar un ls -l?

-rw-r–r– 1 sera sera 0 2005-02-08 00:42 test

La primera columna indica si se trata de un directorio (d), un archivo (-), un link simbólico (l), etc. A continuación se indican los permisos del archivo, para el dueño, el grupo y el resto de los usuarios.

La segunda columna indica la cantidad de links al inodo, la tercera y la cuarta son el dueño y el grupo del archivo.

La sexta columna inidica el tamaño del archivo, seguida por la fecha y la hora de modificación, y finalmente el nombre del archivo.

¿Que es Gnome?

GNOME o Gnome es un entorno de escritorio para sistemas operativos de tipo Unix bajo tecnología X Window ,. Forma parte oficial del proyecto GNU . El proyecto GNOME ( G NU N etwork O bject M odel E nvironment ) surge en agosto de 1997 como proyecto liderado por Miguel de Icaza para crear un entorno de escritorio completamente libre para sistemas operativos libres, en especial para GNU/Linux .

Desde el principio, el objetivo principal de GNOME ha sido proporcionar un conjunto de aplicaciones amigables y un escritorio fácil de utilizar.

¿Que son los comodines ? ¿Para qué se utilizan? Cita algunos ejemplos.

Los comodines son caracteres especiales que son interpretados por el interprete de comandos antes de que la información sea enviada a los comandos.
De esta manera, ejecutar ls * envía el listado de todos los archivos y directorios que se encuentran en el directorio actual a la pantalla(probarlo).
Ejecutar ps ax > procesos, por otro lado, hace que la salida del comando ps no se vea en la pantalla del usuario, sino que se guarde en el archivo procesos.
Si se ejecuta ls -l ?????, se obtendrá un listado con toda la información de los archivos que tengan cinco letras en su nombre.
Y si se ejecuta (sleep 300; echo “Ya está el agua para el té”) &, el shell devuelve la línea de comandos inmediatamente, pero a la vez se genera un proceso que espera 5 minutos y luego muestra un mensaje por pantalla avisando que ya está hirviendo el agua.

¿Qué es Nautilus en Gnome?

Es uno de los gestores de archivos o navegador de archivos del entorno de escritorio GNOME . Es una herramienta útil para copiar, borrar, mover etc,carpetas y ejecutar aplicaciones.

¿Cómo se determina en Linux el tipo de un archivo?

El tipo de un archivo no se determina por su extensión, sino por su contenido. El comando file analiza el contenido de un archivo y determina el tipo del mismo, según una serie de reglas. Probad file octubre.txt

¿En qué consiste el dispositivo /dev/tty1 y el tty2..

El dispositivo /dev/tty representa las consolas. tty1 representa la primera consola accesible desde Ctrl+Alt+1..

¿Quien es TUX?

Es la mascota de Linux  icon-linux

¿Qué es Ubuntu?

Es una distribución de GNU/Linux. Es decir un nucleo o kernel Linux + una serie de programas, basado en software libre .

Ejercicios resueltos de manejo de ficheros y directorios

Crea un subdirectorio que se llame ejercicioslinux en tu directorio personal.

Solución mkdir ejercicioslinux

Crea otro subdirectorio que se llame documentos en tu directorio personal.

Solución mkdir documentos

Copia los ficheros que comienzan por carta y que se encuentran en el directorio /sera/ en el subdirectorio documentos

cp /sera/* documentos/

Copia los ficheros que terminan por .txt y que se encuentran en el directorio /sera en el subdirectorio ejercicioslinux

cp /sera/*.txt ejercicioslinux/

Comprueba tu situación actual.

pwd

Entra en el subdirectorio ejercicioslinux

cd ejercicioslinux o cd /home/usuario/ejercicioslinux

Vuelve a comprobar tu situación actual.

pwd

Visualiza el contenido del directorio, de forma que sólo aparezcan los nombre de los ficheros.

ls

Vuelve a visualizar el contenido del directorio, pero esta vez deben de aparecer los nombres de los ficheros, sus permisos, fechas,. . . (formato largo).

ls -l

Suponiendo que existe el ficero ej1.txt. Borra el fichero ej1.txt de tal forma que se confirme el borrado del mismo.

rm -i ej1.txt _(la i quiere decir interactivo)

Suponiendo que existe el ficero ej2.txt. con permisos 777 Elimina todos los permisos de escritura del fichero ej2.txt

chmod a-x ej2.txt o bien con chmod 666 ej2.txt

Visualiza el contenido del directorio en formato largo y compruebe que se han denegado dichos permisos.

ls -l

Otorga el permiso de escritura de usuario al fichero ej2.txt

chmod u+w ej2.txt

Regresa a tu directorio personal.

cd $HOME por ejemplo

Elimina el fichero ej3.txt que se encuentra en el subdirectorio ejercicioslinux sin cambiar de directorio.

rm /ejercicioslinux/ej3.txt

¿De qué manera podemos evitar que los otros usuarios puedan ver el contenido de un directorio?

Si el directorio en cuestión se llama, por ejemplo, “secretos”, podríamos ejecutar chmod 711 secretos, con lo que quitaríamos el permiso de lectura, necesario para ver el contenido del directorio.

También podríamos ejecutar chmod go-rwx secretos para quitarle todos los permisos tanto al grupo como a los otros usuarios.

¿Cómo podemos hacer para que el archivo “documento” tenga los siguientes permisos?

De lectura y escritura, solo para el dueño del archivo.

chmod 600 documento

De lectura y ejecución para todos los usuarios.

Solución _chmod 555 documento

Lectura para todos los usuarios, y escritura solo para el dueño del arch.

Solución _chmod 644 documento_

¿Qué permisos asigna el comando “chmod 755 /bin” ? ¿Por qué, cuando ejecutamos este comando, nos dice que no poseemos los permisos necesarios?

Ese comando le dá todos los permisos al dueño del directorio (root), y permisos de lectura y ejecución a los miembros del grupo y al resto de los usuarios.

Cuando lo tratamos de ejecutar nos dice que no tenemos los permisos necesarios para ejecutarlo, porque solamente el dueño del archivo (o el administrador del sistema puede cambiar los permisos a un archivo o directorio, y en este caso el dueño es root, y no un usuario común.

Explica qué permisos asignan o desasignan los siguientes comandos:

  • chmod o+r carta : Le dá a los usuarios que no son el dueño del archivo, ni pertenecen al grupo del archivo el                    permiso de ver el contenido del archivo.
  • chmod 755 /bin : Le dá todos los permisos al dueño y permisos de lectura y ejecución al resto
  • chmod 644 /etc/passwd : Le dá permisos de lectura y escritura al dueño y permisos de lectura al resto
  • chmod go-rw,a+x agenda: Le quita al grupo y a los otros el permiso de leer un archivo, y les da a todos los usuarios el permiso de ejecutarlo.

Sobre el directorio /usr/bin ¿Qué tipo de archivos hay en ese directorio?

Son archivos ejecutables que no son indispensables en el sistema

¿Cuáles son los permisos del directorio /usr/bin?

Para ver los permisos del directorio utilizamos el comando ls, con la opción -d, para que no muestre el contenido, sino el directorio en si: ls -ld /usr/bin.

drwxr-xr-x 4 root root 45056 2003-05-31 20:35 /usr/bin

El directorio tiene todos los permisos para el dueño y permisos de lectura y ejecución para el resto de los usuarios.

¿Cómo se expresan esos permisos en forma con números (en octal)?

Solución 755

Sobre el directorio /etc ¿Qué tipo de archivos hay en ese directorio?

Son archivos de configuración del sistema

Espero que os sea de ayuda.

Gracias por tu visita.  

 

 

Julio

Me llamo Julio y soy un apasionado de la informática. Estoy muy contento de que mi blog apuntesjulio.com os sirva de ayuda para conocer un poco más el mundo de las nuevas tecnologías. Espero que os guste 😉 Gracias por la visita !!

Deja un comentario