Saya menjalankan Ubuntu 12.04, dan untuk beberapa alasan, bash tidak menyimpan riwayat perintah saya. satu ~/.bash_history
file berisi hanya 3 perintah yang saya mengetik beberapa bulan yang lalu.
Bagaimana saya bisa memperbaikinya?
EDIT:
inilah konten saya yang relevan .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
.bashrc
./bin/bash
~/.bash_history
Jawaban:
Bisa juga root itu: root memiliki .bash_history Anda ( ROOT TIDAK HARUS MENJADI PEMILIK, PENGGUNA ANDA HARUS MENJADI PEMILIK! ), Dalam hal ini Anda perlu:
Ini tampaknya bisa terjadi secara ajaib ketika Anda melakukan banyak bash!
sumber
Dengan asumsi Anda menggunakan gnome-terminal ??, jika demikian mungkin periksa izin pada .bash_history. Harus
-rw-r--r--
Untuk melakukannya di terminal
ls -la |grep .bash
, ketiga file harus memiliki izin di atas. Kalau tidak, coba hapus .bash_history, mulai ulang & lihat apakah ada riwayat yang kemudian ditulisPerhatikan bahwa riwayat hanya ditulis setelah terminal ditutup atau berhenti.
sumber
Seperti yang dikomentari di atas, ini dapat diperbaiki dengan perubahan kepemilikan root>> pengguna. Izin awal dapat dari
-rw-r--r--
atau dari variasi lain dan kepemilikan root.Dalam kasus saya, saya hanya
.bash_history
dimiliki oleh root tetapi semuanya .bash_ * yang harus dimiliki oleh pengguna.sumber