Grave tudo na linha de comando centos / fedora / ubuntu

6

somos 100% usuários de Linux em toda a rede e trabalhamos o relógio, o que acontece mudança de turno próximo admin vem para o seu turno nesse tempo que todas as questões vem ele resolver os problemas, mas eles apenas limpar o histórico do terminal. Se quisermos registrar todos os terminais no que eles fizeram para resolver os mesmos problemas ou podemos monitorar também, para o registro de problemas, temos OTRS internos que eles atualizam para relatórios.

Obrigado ton

    
por neolix 10.05.2010 / 20:15

4 respostas

3

Quando eu quero registrar uma sessão raiz, eu uso rootsh . Se os administradores precisarem usar o sudo para todos os comandos, ele também registrará todos os comandos.

Você pode dar uma olhada na tela também, pois ela pode realizar o que você está tentando fazer.

Por fim, o registro em log pode não ser a melhor situação para o seu fluxo de trabalho. A exigência de atualização de um motd, wiki ou site simples para todas as alterações pode ser melhor.

    
por 10.05.2010 / 20:46
3

Veja minhas funções de registro de histórico e veja se eles podem ser adaptados às suas necessidades.

Isso é o que algumas linhas típicas do meu arquivo de log podem ter:

echo hello ### [email protected] Bash-4.0 /dev/pts/1 192.168.2.22 20100510 17:53 /home/user/test
cd .. ### [email protected] Bash-4.0 /dev/pts/1 192.168.2.22 20100510 17:53 /home/user/test -> /home/user

A primeira linha acima inclui um comando, um marcador de comentário, o usuário / host, a versão do shell, o dispositivo de terminal e o IP, a data e a hora e o diretório que estava atual quando o comando foi emitido. A segunda linha é um exemplo de uma entrada que é produzida quando um comando cd é usado e a opção -t da função está ativa. Ele mostra os diretórios de trabalho anteriores e novos.

Para configurar:

  • Origem da função
  • define a variável hcmntextra='date "+%Y%m%d %R"'
  • definir a variável
    PROMPT_COMMAND='hcmnt -eityl ~/.hcmnt.log "$LOGNAME@$HOSTNAME Bash-${BASH_VERSION%.*}"'

Escolha os locais apropriados para os arquivos e adicione as etapas acima aos seus arquivos ~/.bashrc .

A função leva vários interruptores opcionais. Um interesse pode ser -l . Com ele, os comandos são gravados em um arquivo de log. Você pode grep desse arquivo e copiar e colar comandos que precisa ser executado novamente. Se você omitir esse switch, as linhas anotadas serão gravadas no histórico do shell, onde poderão ser recuperadas e reutilizadas usando os recursos de manipulação de histórico do Bash. O fato de as anotações seguirem um caractere de comentário significa que você pode reutilizar os comandos como estão e as anotações serão ignoradas.

    
por 11.05.2010 / 01:08
2

Aqui está uma opção manual. Experimente o comando de script.

script -a ticketnum.txt , em seguida, faça o que você precisa fazer ctrl+d interrompe a gravação e o arquivo resultante pode ser anexado ao ticket. Tenho certeza de que isso pode ser automatizado um pouco com alguns scripts.

    
por 11.05.2010 / 05:40
1

Você pode estar interessado em algo como shell_sink para gravar e anotar seu histórico de shell.

    
por 10.05.2010 / 20:31