Настройка Bash
История команд
...
### Настройка истории
# Не запоминать дублирующиеся команды
HISTCONTROL=ignoreboth
# Количество строк в памяти
HISTSIZE=1024
# Количество строк в файле .bash_history
HISTFILESIZE=10240
# Формат времени (вкл. запись timestamp)
HISTTIMEFORMAT='%d.%H.%y %H:%M:%S '
### Полезные команды (alias'ы)
alias ll='ls -lah'
# подсказка
alias ff='echo find ./ -type f -exec grep -i -H \"STRING\" {} \\\;'
Просмотр истории команд командой
history
bashlogger
Помимо .bash_history можно вести лог команд пользователей в syslog
Установка bash
Bash должен быть собран с флагом bashlogger, тогда он будет писать лог в /dev/log
echo "app-shells/bash bashlogger" >> /etc/portage/package.use
Пересобираем (при необходимости)
emerge bash -1av
Настройка syslog-ng
Настроим правила для bash в отдельный файл /var/log/bash.log
...
filter f_debug { ...
and not filter(f_bash); };
filter f_syslog { ...
and not filter(f_bash); };
filter f_messages {...
and not filter(f_bash); };
## правила bash
destination bash { file("/var/log/bash.log" owner(root) group(root) perm(0600)); };
filter f_bash { program(bash); };
log { source(src); filter(f_bash); destination(bash); };
Изменяем фильтр f_syslog, f_messages, f_debug что бы не дублировать логи bash
Ротация логов
Добавить
...
##### BASH #####
/var/log/bash.log {
size 10M
sharedscripts
missingok
postrotate
/etc/init.d/syslog-ng reload > /dev/null 2>&1 || true
endscript
}
Обсуждение