Como altero o local do arquivo .bash_history?


10

Estou executando o CentOS 6.xe quero mover o .bash_history para um local diferente.

Os diretórios pessoais dos meus usuários são (porque eu executo um VPS) nos /var/www/vhost/<domain>.<tld>quais o FTP é acessível (e deveria ser).

Por esse motivo, alterei as AuthorizedKeysFileconexões SSH fora do normal, ~/.ssh/authorized_keyspois as conexões FTP poderiam localizá-las facilmente.

Ao mesmo tempo, quero mover o .bash_historyarquivo para /home/%u/.bash_historyonde %uestá o usuário atual.

Respostas:


17

Você precisa definir HISTFILE para seus usuários no local necessário, defina o seguinte em .bash_profile para o usuário e, para novos usuários, defina-o no diretório de esqueleto do usuário, provavelmente /etc/skel/.bash_profile

export HISTFILE=/home/$USER/.bash_history

11
Obrigado por configurá-lo para novos usuários automaticamente também.
Brian Graham

Como você está executando um VPS, presumi que poderia ser útil. :)
Daniël W. Crompton

uma observação ... isso precisa ser bem cedo na análise do arquivo RC. Assim que qualquer coisa é gravada no histórico, quaisquer alterações neste VAR são ignoradas.
Rich Homolka

@RichHomolka de acordo com as alterações de arquivos homem para HISTFILE não são ignorados, nomeadamente:The name of the file in which command history is saved (see HISTORY below). The default value is ~/.bash_history. If unset, the command history is not saved when an interactive shell exits.
Daniel W. Crompton

@ DaniëlW.Crompton Eu concordo :) Eu uso isso para ter arquivos de histórico separados com base no ttycomando. Meu ponto foi quando você definiu. Em algum momento, o local é fixo e outras alterações são ignoradas.
Rich Homolka
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.