Как очистить историю в Ubuntu

Очистка журналов истории вашей системы Linux жизненно важна для поддержания здоровья машины. Это позволяет вам сэкономить драгоценное дисковое пространство и защитить ваши цифровые действия от любопытных глаз. Здесь мы покажем вам, как очистить данные истории в вашей оболочке Bash, файловом менеджере и текстовом редакторе в Ubuntu Linux.
Содержание
- Очистка истории команд в Bash
- Очистка истории недавних файлов в Nautilus
- Отключение недавних резервных копий в Gedit
Очистка истории команд в Bash
Linux — это операционная система, управляемая командной строкой. От управления файлами до настройки программ, почти каждое действие внутри Linux принимает какую-либо форму терминальной команды. Со временем эти команды накапливаются в вашей оболочке Bash, что может занять много дискового пространства.
Самый простой способ очистить историю команд Bash в Ubuntu — использовать UNIX-конвейер для перенаправления пустой строки в ваш файл “.bash_history”:
echo""> ~/.bash_historyТем не менее, это не очистит буфер истории для текущей сессии Bash. Чтобы сделать это, выполните следующую команду:
history-cwПримечание: вам нужно повторно выполнить эту команду для каждой активной оболочки Bash в вашей текущей сессии рабочего стола.
Подтвердите, что ваша текущая история Bash очищена, выполнив команду history без аргументов.
Отключение журналов истории в Bash
Вы можете заставить Bash не сохранять никакую историю команд из любых ваших будущих сессий. Это может быть полезно, если вы настраиваете общий компьютер и не хотите, чтобы другие пользователи знали команды, которые вы выполняете в своей учетной записи.
Начните с того, чтобы убедиться, что ваш текущий буфер истории в Ubuntu полностью очищен:
history-cwОткройте файл .bashrc с помощью вашего любимого текстового редактора:
nano ~/.bashrcВставьте следующие строки кода в конец вашего файла .bashrc:
exportHISTSIZE=0
exportHISTFILESIZE=0Примечание: переменная HISTSIZE определяет количество строк, которые Bash будет хранить во время активной сессии. Между тем, HISTFILESIZE устанавливает количество строк, которые файл журнала истории будет поддерживать со временем.
Сохраните ваш файл .bashrc, затем выполните следующую команду, чтобы применить ваши новые настройки к текущей сессии оболочки:
source ~/.bashrcПроверьте ваши новые настройки, выполнив команду ls в текущем каталоге, затем повторно выполните команду history:
ls&&history
Полезно знать: узнайте больше о сценариях оболочки, прочитав о самых важных специальных символах Bash.
Удаление конкретных записей истории Bash
Команда history также может удалять конкретные записи из своего кэша и журнала истории. Это может быть полезно, если вы хотите исключить лишь несколько команд, а не очищать всю историю вашей оболочки.
Используйте команду history, чтобы найти номер индекса команды, которую вы хотите очистить. В моем случае я хочу удалить 7-ю команду в своей истории оболочки.

Примечание: вы можете искать конкретную команду, которую хотите удалить, перенаправив команду history в grep: history | grep my-history-command.
Выполните следующую команду вместе с номером индекса записи, которую вы хотите удалить:
history-d7Подтвердите, что запись истории исчезла, повторно выполнив команду history.

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

Нажмите Ctrl + A, чтобы выбрать все недавно открытые файлы в Nautilus.
Щелкните правой кнопкой мыши, затем выберите Удалить из недавних, чтобы удалить текущую историю файлового менеджера.

Откройте меню системы в верхнем левом углу рабочего стола, затем нажмите на значок шестеренки на всплывающей панели.

Выберите Конфиденциальность и безопасность в левой боковой панели окна.

Это откроет новую подкатегорию на правой панели окна. Нажмите на категорию История файлов и корзина.

Отключите переключатель История файлов, затем нажмите кнопку Очистить историю.

Совет: узнайте, как сделать Nautilus еще более полезным с помощью плагинов и расширений.
Автоматическое удаление истории файлов в Nautilus
Другой способ очистить историю файлов в Ubuntu — удалить файлы, которые хранят данные для категории “Недавние” с помощью Bash.
Начните с создания локальной папки бинарников в вашем домашнем каталоге:
mkdir-p ~/.local/bin/&&cd ~/.local/bin/Создайте новый Bash-скрипт в вашей новой папке с помощью вашего любимого текстового редактора:
nano ./user-clear-history.shВставьте следующий блок кода в ваш файл скрипта:
#!/bin/bash
rm-f ~/.recently-used.xbel
rm-f ~/.recently-used.xbel.*
rm-f ~/.local/share/recently-used.xbel
rm-f ~/.local/share/recently-used.xbel.*Сохраните ваш файл скрипта, затем выполните следующую команду, чтобы обновить его права:
chmod +x ./user-clear-history.shОткройте приложение вашего системы, затем выберите Автозагрузка приложений.

Нажмите кнопку Добавить в верхнем левом углу окна.

Укажите имя скрипта, который вы хотите запустить. В моем случае я назову его: “Автоочистка истории файлов пользователя”.
Нажмите кнопку Обзор… под текстовым полем имени.

Нажмите Ctrl + H в меню выбора файла, затем перейдите в ваш каталог “~/.local/bin/“.
Выберите ваш shell-скрипт, затем нажмите Открыть, чтобы добавить его в вашу новую запись автозагрузки.
Нажмите Добавить, чтобы подтвердить его в вашей текущей пользовательской сессии.

Кстати: узнайте, как вы можете запустить свой скрипт из GUI, используя .desktop файлы в Linux.
Очистка истории файлов для всех пользователей
Одним из недостатков удаления истории файлов через GUI является то, что она очищается только для текущего пользователя. Это может быть проблемой, если вы обслуживаете машину, которая используется несколькими людьми.
Чтобы исправить это, откройте новую сессию терминала, затем выполните следующую команду, чтобы переключиться на пользователя root:
sudo-sПерейдите в домашний каталог пользователя root, затем создайте локальную папку bin внутри него:
cd ~ &&mkdir-p ~/.local/bin/&&cd ~/.local/bin/Создайте новый файл скрипта с помощью вашего любимого текстового редактора:
nano ./system-clear-history.shВставьте следующий блок кода в ваш файл скрипта:
#!/bin/bash
rm-f/home/*/.recently-used.xbel
rm-f/home/*/.recently-used.xbel.*
rm-f/home/*/.local/share/recently-used.xbel
rm-f/home/*/.local/share/recently-used.xbel.*Сохраните ваш новый файл скрипта, затем установите его права на выполнение:
chmod +x ./system-clear-history.shСоздайте новый файл службы systemd в “ /etc/systemd/system” для вашего нового скрипта:
sudonano/etc/systemd/system/system-clear-history.serviceВставьте следующий блок кода в ваш новый файл службы:
[Unit]
Description=Очистить историю файлов перед завершением работы
DefaultDependencies=no
Before=shutdown.target
[Service]
Type=oneshot
ExecStart=/root/.local/bin/system-clear-history.sh
[Install]
WantedBy=halt.target reboot.target shutdown.targetСохраните ваш новый файл службы, затем выполните следующие команды, чтобы загрузить его в демон systemd:
sudo systemctl daemon-reload
sudo systemctl enable--now system-clear-history.serviceПодтвердите, что служба работает правильно, проверив ее текущий статус:
systemctl status system-clear-history.service
Отключение недавних резервных копий в Gedit
Gedit — это простой текстовый редактор, который по умолчанию поставляется в некоторых последних версиях Ubuntu. В некоторых случаях этот редактор создает резервную копию каждого файла, который вы открыли и сохранили в системе. Это может быть проблемой, если вы хотите сэкономить место на вашем компьютере.
Чтобы отключить это, нажмите меню Опции в верхнем правом углу приложения, затем выберите Настройки.

Нажмите на вкладку Редактор в окне настроек Gedit, затем снимите флажок Создавать резервную копию файлов перед сохранением.

Закройте окно настроек, затем перезагрузите Gedit, чтобы применить ваши новые настройки.
Откройте новую сессию терминала, затем выполните следующую команду, чтобы удалить любые резервные файлы, которые Gedit создал в вашем домашнем каталоге:
rm"$(find ~ -regex '.*~$')"Наконец, подтвердите, что в вашем домашнем каталоге не осталось резервных файлов Gedit:
find ~ -regex'.*~$'Удаление различных журналов истории из вашей системы — это всего лишь один шаг к поддержанию и обеспечению безопасности вашего компьютера с Linux. Исследуйте удивительный мир безопасности системы, узнав, как анонимизировать вашу дистрибуцию Linux с помощью Whoami.
Кредит изображения: Samu Lopez через Unsplash. Все изменения и скриншоты сделаны Ramces Red.