La terminal de Linux tiene una función de “historial“. Con esta función, se realizará una copia de seguridad de cada operación de comando que ingreses para más adelante. Dado que todos los comandos de tu terminal se guardan en el “historial” (history), es esencial mantener una copia de seguridad del mismo para su custodia.
En esta guía, te mostraré cómo realizar copias de seguridad del historial de terminales Linux y también, cómo restaurar las copias de seguridad. Por lo tanto, abre tu emulador de terminal Linux favorito y sigue adelante!
1. ¿Dónde se almacena el historial de la terminal Linux?
La terminal Linux almacena tu historial en un archivo. Este archivo se llama “.bash_history
“. Cualquiera puede editarlo, y se almacena en el directorio home
. Dado que el archivo de historial de terminal para Linux se almacena en un directorio de usuario, cada usuario del sistema tiene un archivo.
Los permisos especiales no protegen estos archivos de historial, y cualquier usuario del sistema puede echar un vistazo al historial de otro con un simple comando. Así que, por ejemplo, si quiero echar un vistazo al historial de la línea de comandos/terminal del nombre de usuario “alexynior” en mi sistema Linux, lo haré:
cat /home/usuario/.bash_history
![Ver historial de comandos de usuario Linux](https://esgeeks.com/wp-content/uploads/2019/11/Ver-historial-de-comandos-de-usuario-Linux.png)
Los usuarios también pueden ver el historial del usuario actual con el que han iniciado sesión en la terminal de Linux, simplemente ejecutando el comando “history
“.
history
![Comando history en Linux](https://esgeeks.com/wp-content/uploads/2019/11/Comando-history-en-Linux.png)
Lo mejor de todo, ya que “history
” es solo un archivo, se puede buscar como un archivo de texto normal utilizando la función grep
. Entonces, por ejemplo, para encontrar instancias de “git clone
” en el nombre de usuario con el siguiente comando.
cat /home/usuario/.bash_history | grep 'git clone'
![Buscar término en comando history de terminal](https://esgeeks.com/wp-content/uploads/2019/11/Buscar-término-en-comando-history-de-terminal.png)
También funciona como el usuario conectado actualmente con el comando “historial”.
history | grep 'término de búsqueda'
2. Guardar historial de terminal en una copia de seguridad
En la sección anterior de esta guía, hablé sobre cómo el “historial” para la terminal Linux es solo un archivo de texto perfectamente oculto que contiene todos los comandos ingresados por el usuario. Bueno, dado que es solo un archivo, eso significa que es muy fácil hacer una copia de seguridad para su custodia.
Para crear una copia de seguridad, utiliza el comando cat
. ¿Por qué? Con cat
, puedes ver la totalidad de un archivo de texto directamente en la terminal. Podemos usar este comando en combinación con el símbolo “>
” para redirigir la salida de visualización a un archivo de copia de seguridad.
Entonces, por ejemplo, para hacer una copia de seguridad de tu historial actual, ejecuta el comando cat
seguido de “~/.bash_history
” y guárdalo en un archivo con la etiqueta “historial_backup
“.
cat ~/.bash_history > historial_backup
![Realizar copiar de seguridad del historial de terminal](https://esgeeks.com/wp-content/uploads/2019/11/Realizar-copiar-de-seguridad-del-historial-de-terminal.png)
También puedes ejecutar el comando history
en combinación con “>
” y guardarlo de esa manera.
history > history_backup
Por último, es posible hacer una copia de seguridad del historial de la línea de comandos / terminal de otro usuario que no haya iniciado sesión ejecutando el siguiente comando.
cat /home/usuario/.bash_history > historial_backup
3. Hacer copia de seguridad de ciertos elementos del historial
Es posible que solo desees hacer una copia de seguridad de comandos específicos en el historial de tu terminal Linux. La forma de hacerlo es ver el archivo de historial y combinarlo con el comando grep
, que filtrará palabras clave específicas.
Por ejemplo, para hacer una copia de seguridad de los comandos en el historial de tu terminal de Linux que contienen los comandos git clone
o git
, puedes ejecutar la operación a continuación.
![Backup de ciertos elementos del historial terminal](https://esgeeks.com/wp-content/uploads/2019/11/Backup-de-ciertos-elementos-del-historial-terminal.png)
cat ~/.bash_historial | grep 'git' >> historial_backup
O,
cat /home/usuario/.bash_history | grep 'git' >> historial_backup
El filtrado con grep
también se puede aplicar al comando history
, así:
history | grep 'git' >> historial_backup
Para hacer una copia de seguridad de ciertas palabras clave del archivo de historial, reemplaza “git
” en los ejemplos anteriores con cualquier comando que desees hacer una copia de seguridad. Siéntate libre de volver a ejecutar este comando tanto como sea necesario.
4. Cómo restaurar la copia de seguridad del historial
Restaurar la copia de seguridad del historial es tan simple como eliminar el archivo original y colocar la copia de seguridad en su lugar. Para eliminar el archivo de historial original, usa el comando rm
en una ventana de terminal para eliminar “.bash_history
“.
rm ~/.bash_history
Una vez que el archivo de historial original se elimina de la carpeta home
del usuario en el que deseas restaurar el historial, usa el comando mv
para cambiar el nombre de “historial_backup
” a “.bash_history
“.
mv historial_backup ~/.bash_history
Ahora que el nuevo archivo de historial está en su lugar, ejecuta el comando history -rw
para volver a cargar la función de historial de la terminal.
history -rw
Luego podrás ver el historial de tu terminal con:
history
5. Restaurar copias de seguridad para otros usuarios
¿Necesitas restaurar las copias de seguridad del historial de otros usuarios en el sistema? Para hacer esto, comienza iniciando sesión en su usuario con el comando su
.
su usuario
Después de iniciar sesión en el usuario, elimina el archivo de historial actual que reside en el directorio home
del usuario (~
).
rm ~/.bash_history
Desde allí, cambia el nombre del archivo de respaldo del historial como el nuevo archivo “.bash_history
” en el directorio del usuario.
mv /ruta/de/backup/archivo/historial-backup ~/.bash_history
Escribe los cambios con:
history -rw
Cuando termine, ejecuta history
para ver los comandos restaurados en la ventana de la terminal. ¡Es todo!
También te interesará:
- +5 comandos para usar calculadora en terminal Linux
- +15 Comandos esenciales de seguridad en Linux
- +3 Comandos para crear una cuenta de usuario en Linux
Si te gusta el contenido y deseas apoyar a la mejora del sitio web, considera hacer una contribución ¡haciendo clic aquí por favor!. ¡NO ES OBLIGATORIO, GRACIAS! 🙂
¿Te ha gustado este artículo? Sígue este blog en su fanpage de Facebook, Twitter, Instagram y/o YouTube para que no te pierdas del mejor contenido informático y hacking!