bash не сохранять историю

Как полностью отключить историю команд в bash?

bash не сохранять историю

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

/.bashrc это пропиши.

bash не сохранять историю

под рут для всех юзеров

bash не сохранять историю

прописал, перезаргузил всё равно ни как 🙁

bash не сохранять историю

Ах ты маленький хакир, а ну перестань

bash не сохранять историю

А как удалить историю, мне вот самое главное чтоб истории вообще не вёл bash. В

/.bash_history смотрю очень много команд так и остались, это меня калит!

bash не сохранять историю

на запись права убери у

bash не сохранять историю

Спасибо большое! Всё теперь гуд!

иногда полезно за собой подчищать. Особенно если это веб-сервер =)

bash не сохранять историю

/.bash_logout прописать. Тогда история будет удаляться каждый раз при разлогине. Может быть полезно, если историю нужно хранить только в пределах одной сессии.

bash не сохранять историю

За историю отвечают эти строчки в

bash не сохранять историю

А потом понадобится какую-нибудь команду вспомнить, которую определённое время назад вводил, а нельзя, ибо история отключена.

bash не сохранять историю

А как установить эти перемнные на уровне системы? На /etc/environment копал, там не нашел?

bash не сохранять историю

Я эти команды наизусть выучиваю. А история команд оставлять включенным наоборот я считаю небезопасным. Как бы для меня конфиденциальность, минимализм всегда на первом месте стоит. 🙂

bash не сохранять историю

bash не сохранять историю

интересно сделать так, что бы история команд шифровалась. Можно шифровать хомяк юзера целиком, например encfs.

Это полезно при работах на серверах заказчика, потому что приходится копировать всякие скрипты и архивы в хомяк, но не хочется это всёвремя удалять и заново заливать.

bash не сохранять историю

А зачем глобально? Команды выполняют юзеры. Вот каждый из них при желании может управлять сохранением своей истории. Зачем что-то ещё?

Источник

Временно приостановить bash_history на данной оболочке?

Есть ли способ временно приостановить отслеживание истории в bash, чтобы войти в своего рода режим «инкогнито»? Я ввожу в свой терминал информацию, которая не нужна для записи конфиденциальной финансовой информации.

Это должно быть то, что вы ищете:

Из man bash

Если HISTFILE не установлен или файл истории недоступен для записи, история не сохраняется.

В качестве альтернативы, если вы хотите выключить, а затем снова включить, это может быть проще в использовании set :

Выключи

Включи

Если вам нужно избежать сохранения нескольких команд и вы все еще хотите использовать стрелку вверх для доступа к предыдущим командам, используйте:

Существует четыре способа (уровня) управления хранением команд.

Если не установлено, история команд не сохраняется при выходе из оболочки.

Null HISTFILE=» и / или установлен на HISTFILE=/dev/null работает с тем же эффектом. Поймите, что команды все еще записываются в список памяти, попробуйте history команду или стрелку вверх.

Предупреждение: если HISTFILE сбрасывается до того, как оболочка существует, все, что было записано в памяти, все равно может быть записано в файл.

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

Удалите все команды из списка истории в памяти:

Все команды удаляются (из памяти), и, следовательно, ничто не может быть сохранено в файл, конечно, пока переменная не будет снова установлена ​​в какое-либо действительное числовое значение.

Источник

Скрытность в Linux. Заметаем следы

Файлы в Linux имеют 3 типа временных меток: время доступа (англ. access time, сокр. atime), время модификации (англ. modification time, сокр. mtime) и время изменения (англ. change time, сокр. ctime).

Однажды может возникнуть необходимость подделать временные меткикакого-либо файла.

Время доступа (atime), как и время модификации (mtime) могут быть легко изменены с помощью команды touch, но для подделки метки времени изменения (ctime) стандартного решения не существует.

Тем не менее, в качестве обходного пути, можно установить системное время в то значение на которое вы хотите изменить ctime файла, затем использовать команду touch на этом файле и потом откатить системное время обратно.

Из приведенной ниже статьи вы узнаете, как сохраняя анонимность изменять временные метки файла.

Узнать Временные Метки Файла

Чтобы получить информацию о текущий временных метках файла воспользуетесь командой stat :

Разница Между Временами «Доступа», «Модификации» и «Изменения»

Временная меткаКогда она обновляется?
atimeВремя доступа к файлу обновляется когда вы открываете файл либо когда он используется для других операций, например таких как: grep, cat, head и т.д.
mtimeВремя модификации файла обновляется когда вы изменяете его содержимое либо сохраняете файл.
ctimeВремя изменения файла обновляется когда меняются его атрибуты, такие как владелец файла, права, либо он перемещается на другую файловую систему. Также это время обновляется и при изменения времени модификации файла.

Изменение Времени «Доступа» и «Модификации» Файла

Изменить время доступа к файлу (atime) :

Изменить время модификации файла (ctime) :

Подделка Времени «Изменения» Файла

Как я уже говори ранее, не существует стандартного решения для подделки времени изменения файла (ctime).

Тем не менее, это можно сделать если сначала поменять системное время на то, на которое вы хотите поменять ctime, затем использовать команду touch на файле и потом откатить системное время обратно.

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

Сохраните текущую дату и время в переменную NOW :

Установите поддельное системное время (необходим root) :

Используйте команду touch на файле для изменения всех временных меток на поддельные :

Откатите время назад (необходим root) :

Для увеличения скорости выполнения модификаций и как следствие уменьшения риска возможных последствий, вы можете выполнит приведенные выше команды следующим образом :

Заметаем Следы 😉

Чтобы замести следы не забудьте очистить значение переменной, а также почистить логи и историю.
Очистите значение переменной NOW :

Из файла /var/log/messages удалите строки с информацией об изменении системного времени (необходим root) :

Очистите историю входов в Linux (необходим root) :

Очистите историю текущей сессии :

Очистить или Удалить Историю Входов в Linux

В Linux системах есть три стандартные команды, которые показывают информацию о последних подключавшихся пользователях : last, lastb, и lastlog.

Вывод этих команд включает : логин, время последнего подключения, IP адрес, порт и т.д.

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

КомандаЖурнал логовОписание
last/var/log/wtmpИстория успешных входов/выходов
lastb/var/log/btmpИстория неудавшихся попыток входа
lastlog/var/log/lastlogСписок последних подключавшихся пользователей

Удаление Информации о Последних Подключениях

Для удаления всей информации о последних подключавшихся пользователях необходимо очистить журналы с логами :

Очистить Историю Команд в BASH

Полностью удалить историю Bash

Выполните следующую команду для полного удаления всей истории Bash :

ОпцииОписание
-cОчистить файл истории
-wВнести команды текущей сессии в файл с историей

Удалить определенную строку из истории Bash

Очистить историю команд текущей сессии

Выполните для удаления истории команд только текущей сессии :

ОпцияОписание
-rПрочитать файл с текущие историей и добавить его содержимое к списку истории команд

Не сохранять команду в истории Bash

Выполнить команду не занося ее в историю Bash :
$ команда
Поставьте пробел перед любой командой и она не будет сохранена в истории Bash.

Не сохранять все команды текущей сессии в истории Bash

Отключение HISTFILE приводит к тому, что пока Вы не выйдите из текущей сессии, любые команды которые Вы будете выполнять не будут сохраняться в файле с историей bash_history :

Изменение Прав Доступа к Файлам и Папка в Linux — Основы Chmod

Команда сhmod (change mode) служит для изменения прав доступа к файлам и папкам.

Синтаксис

Команды chmod имеет следующий синтаксис :

Показать текущие права на файл / директорию можно с помощью команды ls :

или используя команду stat :

Классы доступа

Классы доступа используются для того, чтобы определить какому пользователю назначаются права. Если класс доступа не указан, то по умолчанию используется класс “all”. Классы доступа представлены одной или несколькими из ниже перечисленных букв :

КлассClassОписание
uuserвладелец файла (папки)
ggroupпользователи, которые являются членами группы к которой принадлежит файл (папка)
oothersпользователи, которые не являются ни владельцем файла (папки), ни входят в группу файла (папки)
aallвсе три перечисленных выше класса, то же самое что ugo

Операторы

Программа chmod использует оператор для того, чтобы указать каким образом будут применены права доступа к файлам или папкам. Приняты следующие операторы :

ОператорОписание
+добавить указанные права доступа к указанному классу
убрать указанные права доступа из указанного класса
=присвоить указанные права доступа

Права доступа

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

Права доступаNameОписание
rreadправа на чтение содержимого файла или директорию (просматривать файлы и поддиректории в папке)
wwriteправа на запись в файл или директорию (создавать файлы и поддиректории в папке)
xexecuteправа на исполнение файла в качестве программы/скрипта либо права на вход в директорию (просмотр дерева каталога)
Xspecial executeправа на вход в директорию и права на исполнение файла, в случае, если хотя бы одному классу уже назначено право на исполнение (для любого из user, group или other)

Числовые права доступа

Возможно использование прав доступа как в символьной, так и в числовой форме.

Числовая форма для прав доступа :

10 Простых Примеров :

1. Добавить всем права на чтение файла :

2. Забрать права на исполнение файла у всех :

3. Добавить всем права на чтение и запись :

4. Установить права на чтение и запись для владельца и забрать права у всех остальных :

5. Для директории и всего ее содержимого добавить права на запись для владельца, и забрать права на запись для всех остальных :

6. Забрать у всех все права :

7. Дать всем права на права на чтение, запись и выполнение файла :

8. Задать права на чтение и запись без права на исполнение для владельца и группы, а все остальным дать право только на чтение :

9. Назначить права ‘-rwx’ для владельцев директорий, добавить права ‘rw’ для владельцев файлов, ‘—‘ для всех остальных :

10. Забрать у всех права на исполнение файлов в директории и поддиректориях, но в то же время, разрешить всем просматривать содержимое директорий :

Запуск Команд на Удаленном Linux Сервере через SSH

В этой заметке Вы найдете различные примеры того, как выполнять команды на удаленном Linux сервере и получать результат локально.

Данная информация будет очень полезна, если Вы пишете Bash скрипт, который будет запускаться с локальной машины и выполнять какие-либо команды на удаленном сервере.

Выполнение Команд на Удаленном Linux Сервере

Узнать uptime удаленного сервера

Перезагрузить удаленный сервер

Запуск Нескольких Команд через SSH

СПОСОБ 1 :

Узнать Uptime и Disk Usage

СПОСОБ 2 :

Узнать Memory Usage и Load Average

СПОСОБ 3 :

Показать Версию Ядра, информацию о CPU и кол-во RAM

Выполнение Локального Скрипта на Удаленном Linux Сервере

Запустить Локальный Скрипт ‘local_script.sh’ на Удаленной Машине

7 Советов — Настройка Истории Команд в Bash

Настройка истории команд в Bash осуществляется путем добавления переменных окружения в файл

/.bashrc вступили в силу, выполните :

1. Добавляем Отображение Даты и Времени в Bash History

Иногда очень полезно узнать время, когда какая-либо команда была выполнена.

Установите HISTTIMEFORMAT, чтобы сохранять время выполнения каждой команды.

Для этого добавьте следующую строку в файл

Теперь, набрав history, Вы получите следующий вывод :

2. Увеличиваем Размер Хранимой Истории

Увеличьте HISTSIZE — количество команд, которые необходимо запоминать в списке истории (стандартное значение — 500).

Увеличьте HISTFILESIZE — максимальное количество строк, содержащееся в файле истории (стандартное значение — 500).

3. Добавляем Команды Bash в Файл с Историей

Чтобы добавлять новые команды в файл с историей, а не переписывать его каждый раз, добавьте следующую строку в

4. Мгновенно Сохранять Историю Команд

Если сессия внезапно оборвется Вы потеряете текущую историю команд.

Добавьте следующую строку в файл

5. Контролируйте Bash History

HISTCONTROL — представляет из себя список опций, разделенных двоеточиями.

Они контролируют каким образом список команд сохраняется в истории.

ОпцияОписание
ignorespaceне сохранять строки начинающиеся с символа
ignoredupsне сохранять строки, совпадающие с последней выполненной командой
ignorebothиспользовать обе опции ‘ignorespace’ и ‘ignoredups’
erasedupsудалять ВСЕ дубликаты команд с истории

6. Игнорировать Определенные Команды

HISTIGNORE — список шаблонов через двоеточие, используемых для принятия решения о сохранении строк с командами в списке истории.

Не сохранять команды ls, ps и history :

Не сохранять команды начинающиеся с s :

7. Одна Команда — Одна Запись в Истории

Сохранять все строки многострочной команды в одной записи списка истории :

Изменить Имя Файла с Историй Команд

Используйте HISTFILE для изменения имени файла, в котором сохраняется история команд. Стандартное значение

Источник

История команд Linux

В терминале Linux, кроме всего прочего, есть одна замечательная вещь. Это история команд Linux. Все команды, которые вы вводите во время работы сохраняются и вы можете найти и посмотреть их в любой момент. Также можете вернуться на несколько команд чтобы не набирать недавно выполненную команду заново.

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

История команд Linux

Большинство задач, связанных с историей команд, мы будем выполнять либо с помощью команды history, либо с помощью оболочки. В истории хранится последняя 1000 команд, которые вы выполняли. Чтобы посмотреть всю историю для этого терминала просто запустите команду history без параметров:

bash не сохранять историю

Для дополнительных действий с историей вам могут понадобиться опции. Команда history linux имеет очень простой синтаксис:

$ history опции файл

В качестве файла можно указать файл истории. По умолчанию история для текущего пользователя хранится в файле

/.history, но вы можете задать, например, файл другого пользователя. А теперь рассмотрим опции:

Так вы можете посмотреть только последние 10 команд:

bash не сохранять историю

bash не сохранять историю

Если вы хотите выполнить поиск по истории bash, можно использовать фильтр grep. Например, найдем все команды zypper:

history | grep zypper

bash не сохранять историю

На самом деле работать с историей еще более просто с помощью оболочки, возможно, вы уже используете многие ее функции, но о некоторых точно не знаете. Рассмотрим их:

Чтобы показать предыдущую команду просто нажмите стрелку вверх, так можно просмотреть список раньше выполненных команд.

Вы можете выполнить последнюю команду просто набрав «!!». Также можно выполнить одну из предыдущих команд указав ее номер «!-2»

bash не сохранять историю bash не сохранять историю

Чтобы выполнить поиск по истории прямо во время ввода нажмите Ctrl+R и начните вводить начало команды.

bash не сохранять историюЕсли вы знаете, что нужная команда была последней, которая начиналась на определенные символы, например, l, то вы можете ее выполнить, дописав «!l»:

bash не сохранять историю

Если нужная команда последняя содержала определенное слово, например, tmp, то вы можете ее найти, использовав «!?tmp»:

bash не сохранять историю

Если вы не хотите, чтобы выполняемая команда сохранилась в истории просто поставьте перед ней пробел.

Таким образом, вы можете очень быстро отыскать нужную команду, если помните как она была написана. История команд bash хранит очень много команд и этого вполне достаточно для комфортной работы.

Настройка истории Linux

export HISTTIMEFORMAT=’%F %T ‘
$ history

bash не сохранять историю

Для форматирования можно использовать такие модификаторы:

Также можно отключить вывод одинаковых команд:

Существует два флага, ignoredups и ignorespace. Второй указывает, что нужно игнорировать команды, начинающиеся с пробела. Если вы хотите установить оба значения, используйте флаг ignoreboth. Используйте переменную HISTSIZE, чтобы установить размер истории:

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

Для тестирования работы вы можете набирать эти команды прямо в терминале и сразу видеть результат, но для сохранения добавьте нужные строки в ваш

Готово, теперь осталось сохранить изменения и перезапустить ваши терминалы. Теперь ваша история будет выводить дату, игнорировать дубли и синхронизироваться между терминалами.

Выводы

В этой статье мы рассмотрели что такое история команд linux, как с ней работать, как применяется команда history linux и какие настройки можно использовать для более комфортной работы. Если у вас остались вопросы, спрашивайте в комментариях!

Источник

Bash, история команд

Поскольку все команды хранятся таким образом, вы можете манипулировать ими и использовать их для повышения производительности командной строки. В этом статье мы рассмотрим некоторые основы работы с историей Bash.

Переменные Bash History

Есть несколько переменных среды, которые управляют конфигурацией истории bash.

Настройки HISTCONTROL

Переменная HISTCONTROL имеет четыре параметра, которыми вы можете манипулировать, чтобы изменить свое поведение.

Ignoredups — Не писать строку после команды дублирования строки.
Ignorespace — не писать строки, начинающиеся с одного или нескольких пробелов в истории.
Ignoreboth — Установить оба значения выше.
Undefined — Если вы не определяете какие-либо правила, они не будут применены.

Проверьте текущие настройки истории с помощью команды экспорта:

Измените настройки, экспортировав нужную переменную:

Сделайте ваши настройки постоянными, добавив их в файл bashrc:

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

Показать историю команд

Чтобы отобразить список ранее введенных команд в вашей системе Linux, вы будете использовать команду history. Просто введите в командной строке:

Показать последнее X количество команд

Вы можете посмотреть последнее число набранных команд, просто добавив число к команде. Например, если вы хотите увидеть последние 20 команд:

Вызов команд из истории

Вы также можете указать по номеру, какую команду вы хотите запустить. Например, я хотел запустить команду 18 в приведенном выше примере. Используя восклицательный знак, сделать это можно так:

Использование указателей слов

Есть и более сложные «указатели слов». Они позволяют вам взять слово или слова из предыдущей команды и использовать их снова, не печатая их.

Например, следующая команда:

dig — это слово 0, + short — это слово 1, а ya.ru — это слово 2.

Теперь давайте посмотрим, как извлечь первое слово (или 0) из команды. Мы будем использовать тот же пример выше, но на этот раз мы хотели бы перечислить весь каталог вместо просмотра содержимого файла.

Вы также можете извлечь слово из команды, используя синтаксис поиска. Например, допустим, вы хотели использовать второе слово (1) из последней команды cat, которую вы выполнили. Не имеет значения, была ли это последняя команда, которую вы выполнили, или 30 команд назад, вы можете использовать обозначение «! : 1». Вот пример:

Как вы можете видеть выше, «! Dig: 2» выполнил обратный поиск самой последней команды, начинающейся с «dig», затем взял второе слово и вставил его в команду.

Поиск Bash History

Вы также можете искать по истории Bash. В командной строке bash, удерживая нажатой клавишу Ctrl, нажмите «r» и начните вводить первые несколько букв команды, которую вы ищете. Например, допустим, что я искал цикл «while», который недавно набрал, для этого нажать [Ctrl + r] и набрать «wh», вот так:

Этот поиск найдет последнюю команду, начинающуюся с «wh», для поиска выше или глубже в истории просто снова нажмите [Ctrl + r].

Вы также можете найти строку в команде, введя восклицательный знак и заключив строку в вопросительные знаки, например:

Вы также можете использовать другие инструменты, такие как more, less или grep.

Удаление истории Bash

Теперь, когда мы рассмотрели просмотр, использование и поиск в истории Bash, давайте поговорим об очистке или удалении определенных элементов из истории Bash.

Ваша история bash — это просто текстовый файл, сохраненный в

Вы также можете удалить определенную строку из своей истории Bash, используя опцию удаления, например, так:

Заключение

С историей Bash вы можете многое сделать, мы лишь рассказали об основах, с которых можно начать.

Если вам понравился этот пост, пожалуйста, поделитесь им.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *