Как сделать резервную копию истории терминала Linux

Как сделать резервную копию истории терминала Linux

Терминал Linux имеет функцию «истории». Благодаря этой функции каждая вводимая вами командная операция будет сохранена на будущее. Поскольку все команды вашего терминала сохраняются в «истории», важно сохранить их резервную копию для сохранности.

В этом руководстве мы покажем вам, как создать резервную копию истории терминала Linux, а также как восстановить резервные копии. Итак, откройте свой любимый эмулятор терминала Linux и следуйте за ним!

Где хранится история терминала Linux?

Терминал Linux хранит свою историю в файле. Этот файл называется «.bash_history». Кто угодно может его редактировать, и он хранится в домашнем каталоге. Поскольку файл истории терминала для Linux хранится в пользовательском каталоге, каждый пользователь в системе имеет файл.

Специальные разрешения не защищают эти файлы истории, и любой пользователь в системе может просмотреть историю другого с помощью простой команды. Так, например, если я хочу взглянуть на историю терминала / командной строки имени пользователя «user» в моей системе Linux, я бы сделал:

Как сделать резервную копию истории терминала Linux

кот /home/user/.bash_history

Пользователи также могут просматривать историю текущего пользователя, под которым они вошли в терминальную оболочку Linux, просто выполнив команду «history».

история

Лучше всего то, что «история» - это просто файл, и его можно искать как обычный текстовый файл с помощью функции grep. Так, например, чтобы найти экземпляры «git clone» в имени пользователя с помощью приведенной ниже команды.

кот /home/user/.bash_history | grep 'git clone'

Он также работает как текущий вошедший в систему пользователь с помощью команды «history».

история | grep 'поисковый запрос'

Сохранить историю терминала в резервную копию

В предыдущем разделе этого руководства я говорил о том, что «история» терминала Linux - это просто аккуратно скрытый текстовый файл, содержащий все введенные пользователем команды. Что ж, поскольку это всего лишь файл, это означает, что его очень легко создать резервную копию для безопасного хранения.

Чтобы создать резервную копию, используйте команду  cat  . Почему? С помощью  cat вы можете просмотреть весь текстовый файл прямо в терминале. Мы можем использовать эту команду в сочетании с символом «>», чтобы перенаправить вывод просмотра в файл резервной копии.

Так, например, для резервного копирования текущей истории запустите команду cat для «~ / .bash_history» и сохраните ее в файл с меткой «history_backup».

Как сделать резервную копию истории терминала Linux

кошка ~ / .bash_history> history_backup

Вы также можете запустить команду history в сочетании с «>» и сохранить ее таким образом.

history> history_backup

Наконец, можно создать резервную копию истории командной строки / терминала другого пользователя, не вошедшего в систему, выполнив команду ниже.

Примечание: не забудьте изменить «имя пользователя» на пользователя, от которого вы хотите сохранить историю.

cat /home/username/.bash_history> history_backup

Резервное копирование только определенных элементов истории

Возможно, вы захотите создать резервную копию только определенных команд в истории вашего терминала Linux. Для этого нужно просмотреть файл истории и объединить его с командой grep , которая будет фильтровать определенные ключевые слова.

Например, чтобы выполнить резервное копирование только тех команд в истории вашего терминала Linux, которые содержат команды git clone или git , вы можете выполнить операцию, указанную ниже.

Примечание: в этих примерах мы используем «>>», а не «>». Причина «>>» в том, что он не перезапишет содержимое резервной копии файла истории и может быть повторно запущен несколько раз для добавления в резервную копию.

кот ~ / .bash_history | grep 'git' >> history_backup

Или

кот /home/username/.bash_history | grep 'git' >> history_backup

Фильтрация с помощью grep также может быть применена к команде history , например.

история | grep 'git' >> history_backup

Чтобы создать резервную копию определенных ключевых слов из файла истории, замените «git» в приведенных выше примерах любыми командами, для которых требуется создать резервную копию. Не стесняйтесь повторно запускать эту команду сколько угодно раз.

Как восстановить резервную копию истории

Восстановить резервную копию истории так же просто, как удалить исходный файл и поместить резервную копию на его место. Чтобы удалить исходный файл истории, используйте команду rm в окне терминала, чтобы удалить «.bash_history».

rm ~ / .bash_history

После удаления исходного файла истории из домашней папки пользователя, для которого вы хотите восстановить историю, используйте команду mv, чтобы переименовать «history_backup» в «.bash_history».

mv history_backup ~ / .bash_history

Теперь, когда новый файл истории на месте, запустите команду history -rw, чтобы перезагрузить функцию истории терминала.

история -rw

После этого вы сможете просмотреть историю своего терминала с помощью:

история

Восстановить резервные копии для других пользователей

Необходимо восстановить резервные копии истории от других пользователей в системе? Для этого начните с входа в систему своего пользователя с помощью команды su .

su имя пользователя

После входа в систему для пользователя удалите текущий файл истории, который находится в домашнем каталоге пользователя (~).

rm ~ / .bash_history

Оттуда переименуйте файл резервной копии истории в новый файл «.bash_history» в каталоге пользователя.

mv / путь / к / резервная копия / файл / история резервной копии ~ / .bash_history

Запишите изменения с помощью:

история -rw

Когда закончите, запустите историю, чтобы просмотреть восстановленные команды в окне терминала.


Улучшите буфер обмена Gnome Shell с помощью Pano

Улучшите буфер обмена Gnome Shell с помощью Pano

Посмотрим правде в глаза, буфер обмена Gnome Shell по умолчанию не очень хорош. Установите Pano, чтобы улучшить работу с буфером обмена!

Как установить DaVinci Resolve 17 в Linux

Как установить DaVinci Resolve 17 в Linux

Вам нужен отличный нелинейный видеоредактор для Linux? Заставьте Davinci Resolve 17 работать с этим руководством!

Как загрузить обои на рабочий стол Linux с помощью загрузчика обоев

Как загрузить обои на рабочий стол Linux с помощью загрузчика обоев

Wallpaper Downloader — удобный загрузчик и менеджер обоев для Linux. Он поддерживает большинство сред рабочего стола Linux и очень прост в использовании. Это руководство

Как установить ОС Tuxedo на свой компьютер

Как установить ОС Tuxedo на свой компьютер

Хотите протестировать ОС Tuxedo на компьютерах Tuxedo? Узнайте, как установить последнюю версию Tuxedo OS на свой ПК.

Как установить файл DEB в Linux

Как установить файл DEB в Linux

.DEB вариант № Что ты делаешь с этим? Узнайте о многих способах установки файлов DEB на ПК с Linux.

Как играть в Dying Light на Linux

Как играть в Dying Light на Linux

Dying Light — видеоигра в жанре survival horror, разработанная Techland и изданная Warner Bros Interactive Entertainment в 2015 году. Игра сосредоточена на

Как установить Neptune Linux на свой компьютер

Как установить Neptune Linux на свой компьютер

Neptune использует среду рабочего стола KDE Plasma 5 и стремится создать элегантную ОС. Вот как установить Neptune Linux на свой компьютер.

Попробуйте новый рабочий стол на основе оснастки Ubuntu

Попробуйте новый рабочий стол на основе оснастки Ubuntu

Хотите опробовать новую настольную операционную систему Ubuntu, основанную на Snap-пакетах? Узнайте, как развернуть его на виртуальной машине с помощью этого руководства.

Как играть в Undertale на Linux

Как играть в Undertale на Linux

Undertale — это двухмерная инди-ролевая игра 2015 года, разработанная и изданная разработчиком игр Тоби Фоксом. Это руководство расскажет о загрузке и установке Undertale на вашем компьютере.

Как играть в Total War: THREE KINGDOMS на Linux

Как играть в Total War: THREE KINGDOMS на Linux

Total War: Three Kingdoms — это пошаговая стратегия в реальном времени, разработанная Creative Assembly. Вот как играть на Linux.