[[ Настройка Bash ]]

Gentoo

Настройка Bash

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

/etc/bash/bashrc

...

### Настройка истории
# Не запоминать дублирующиеся команды
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

/etc/syslog-ng/syslog-ng.conf

...

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

Ротация логов

Добавить

/etc/logrotate.d/syslog-ng.custom

...

##### BASH #####
/var/log/bash.log {
    size 10M
    sharedscripts
    missingok
    postrotate
        /etc/init.d/syslog-ng reload > /dev/null 2>&1 || true
    endscript
}


Обсуждение

Ваш комментарий. Вики-синтаксис разрешён:
180​ +14 =
 
howto/gentoo/gentoo_bashlogger.txt · Последнее изменение: 2022/08/31 14:53 — 127.0.0.1
Gentoo Linux Gentoo Linux Driven by DokuWiki