TGViewer
ServerAdmin.ru ServerAdmin.ru @srv_admin · 32.6K subscribers
Post #1289 8.99K
​​Я практически всегда, когда настраиваю Linux сервер, одним из первых действий меняю параметры history. Это такая штука, которая обычно не нужна, но иногда может сильно выручить. Также я всегда смотрю history, когда подключаюсь к незнакомому серверу. Так можно быстро оценить, что здесь раньше делали, особенно если за кем-то что-то переделать надо.

Изменяю следующие параметры:
◽ количество строк, которые будут храниться в истории, в файле .bash_history
◽ сохранение даты выполнения команды
◽ записывать команду в историю сразу же после её выполнения
◽ настраиваю исключения, которые не будут сохраняться в истории, чтобы не забивать список неинформативными командами

Для этого в ~/.bashrc добавляю следующие настройки:

export HISTSIZE=10000
export HISTTIMEFORMAT="%h %d %H:%M:%S "
PROMPT_COMMAND='history -a'
export HISTIGNORE="ls:ll:history:w:htop:pwd"

Первый параметр увеличивает размер файла до 10000 строк. Можно сделать и больше, хотя обычно хватает такого размера. Второй параметр указывает, что необходимо сохранять дату и время выполнения команды. Третья строка вынуждает сразу же после выполнения команды сохранять ее в историю. В последней строке мы создаем список исключений для тех команд, запись которых в историю не требуется. Я привел пример самого простого списка. Можете дополнить его на свое усмотрение.

Консольная команда history запускает встроенную в оболочку утилиту. Если запустить её без параметров, то она выведет в терминал всё содержимое истории. Ограничить список можно указав число строк:
# history 10
Удалить строку с указанным номером. Обычно нужно, если пароль в истории засветил.
# history -d 5
Очистить историю команд для текущего сеанса:
# history -с
В этом случае сам файл с историей не очищается и при повторном подключении вы снова увидите всю историю. Для того, чтобы окончательно очистить файл с историей, надо после очистки через ключ -с, запустить еще и запись пустого списка:
# history -w
Но тут опять есть нюанс. В истории останется последняя команда с очисткой. Чтобы гарантированно удалить всю историю и не оставить следов, можно сделать так:
# cat /dev/null > ~/.bash_history && history -c && exit

При этом стоит помнить, что запуск команд в командной строке MC не попадает в общую историю, а записывается в историю самого MC. Она живет в /root/.local/share/mc/history. Если будете чистить историю, не забудьте и туда заглянуть.

А для того, чтобы команда не попала в history, можно перед ней поставить пробел. Она исполнится как обычно, но в историю не попадёт.

#bash #terminal
  • 👍 7
More from @srv_admin
  1. Sep 23, 2026Очередная подборка статей авторов, которые согласились в ней участвовать. Кто не понимает,…
  2. Sep 23, 2026Контейнеры в одном инструменте, виртуалки — в другом, частное облако — вообще отдельная ис…
  3. Sep 23, 2026Расскажу тем, кто не знает, и напомню тем, кто забыл, как я. Не надо в Proxmox в LXC конте…
  4. Sep 22, 2026Недавно случайно заметил любопытную информацию на тему Proxmox VE и новой функциональности…
  5. Sep 22, 2026✔️ Сети для всех — сообщество для тех, кто развивается в сетевом и системном администриров…
  6. Sep 22, 2026Я ранее уже рассказывал, что приобрёл себе домой полноценную серверную платформу на базе S…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →