My ~/.bash_history is fine and has all of the previous commands that I ever typed. However, when I press the up-arrow key on the keyboard, I get nothing; the history command shows only the commands that I typed in this session only. How can I fix that?

I use Debian Stretch and GNOME Terminal.




$ cat .bash_logout 
# ~/.bash_logout: executed by bash(1) when login shell exits.

# when leaving the console clear the screen to increase privacy

if [ "$SHLVL" = 1 ]; then
    [ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q

Ctrl+R only shows the commands I typed in this session

for example, if I opened a new terminal window there will be no history at all, if I typed a command then the history is this command only

Update 2.0

su 's history is working normally with no problems, it's just my user

I even created a new user and tested its history and it's working great

rahman@www:~$ history 
    1  history 
rahman@www:~$ su
root@www:/home/rahman# history 10
  314  aptitude show linux-image-4.9.0-4-amd64
  315  aptitude show linux-image-4.9.0-3-amd64
  316  aptitude install firmware-linux-free irqbalance
  317  aptitude safe-upgrade
  318  aptitude safe-upgrade -y
  319  exit
  320  exit
  321  exit
  322  history 4
  323  history 10
root@www:/home/rahman# exit
rahman@www:~$ history 10
    1  history 
    2  su
    3  history 10

Update 3.0

rahman@www:~$ echo $HISTFILE
rahman@www:~$ echo $HISTCONTROL

will someone help me, please? this problem is very annoying and pisses me off.

  • Check that there are no entries relating to history in /home/<username>/.bash_logout Commented Oct 19, 2017 at 15:21
  • There are two problems. If you press Control-R, could you look on history? What value do you have on HISTFILE, HISTSIZE. What permission on your .bash_history. Note: if you have two open shell, sometime one will overwrite the other history. Commented Oct 19, 2017 at 15:22
  • I've updated the question with the info you needed Commented Oct 19, 2017 at 15:41
  • @A.RahmanMahmoud You never mentioned HISTFILE.
    – Kusalananda
    Commented Oct 20, 2017 at 17:06
  • In addition to the output of echo $HISTFILE, please add the output of echo $HISTCONTROL. Commented Oct 20, 2017 at 17:10

1 Answer 1


I found this link

and the problem got resolved by running

sudo chown <user> .bash_history

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .