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

18

Я запускаю Ubuntu 12.04, и по какой-то причине bash не сохраняет мою историю команд. файл ~/.bash_history содержит только 3 команды, которые я набрал несколько месяцев назад.

Как я могу это исправить?

EDIT: вот соответствующий контент моего .bashrc :

# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples

# If not running interactively, don't do anything
[ -z "$PS1" ] && return

# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options
HISTCONTROL=ignoreboth

# append to the history file, don't overwrite it
shopt -s histappend

# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000
    
задан yohbs 24.10.2012 в 17:13
источник

3 ответа

23

Также может быть, что root: root владеет вашей .bash_history ( КОРТ НЕ ДОЛЖЕН БЫТЬ ВЛАДЕЛЬЦЕМ, ВАШ ПОЛЬЗОВАТЕЛЬ ДОЛЖЕН БЫТЬ ВЛАДЕЛЬЦЕМ! ), в этом случае вам нужно:

$chown user:user .bash_history

Это, по-видимому, может случиться волшебным образом, когда вы делаете sudo bash много!

    
ответ дан mahatmanich 17.05.2013 в 16:50
источник
2

Предполагая, что вы используете gnome-terminal ??, если это возможно, проверьте разрешения на .bash_history. Это должно быть -rw-r--r--

Для этого в терминале ls -la |grep .bash все 3 файла должны иметь указанные выше разрешения. В противном случае попробуйте удалить .bash_history, restart & amp; посмотрите, записана ли история

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

ответ дан doug 25.10.2012 в 18:50
1

Как отмечалось выше, это может быть исправлено с правами root-> прав пользователя. Первоначальные разрешения могут быть от -rw-r--r-- или любых других вариантов и прав собственности.

В моем случае у меня было только .bash_history , принадлежащее root, но все они .bash_ *, которые должны принадлежать пользователю.

    
ответ дан Pablo Ramirez Moreta 24.05.2016 в 11:21