यह संभव है कि आपका $ HISTFILE जड़ के स्वामित्व में हो। मान लें कि आप अपने लॉगिन शेल के रूप में बैश का उपयोग कर रहे हैं। यहाँ कैसे जाँच करें:
$ [ -z $HISTFILE ] && echo need to set HISTFILE || ls -l $HISTFILE
-rw------- 1 root root 36639 May 21 19:48 /home/joeb/.bash_history
HISTFILE के लिए डिफ़ॉल्ट ~ / .bash_history होना चाहिए, यदि आपको "HISTFILE को सेट करने की आवश्यकता" त्रुटि दिखाई देती है या यदि $ HISTFILE ~ / .bash_history नहीं है, तो आपको ~ / .profile / ~ / .bash_profile या ~ / की जाँच करनी चाहिए। bashrc यह सुनिश्चित करने के लिए कि यह गलत तरीके से सेट या रीसेट नहीं हो रहा है।
आम तौर पर, यह सिर्फ रूट के स्वामित्व में है, इसलिए इसे रीसेट करें:
$ chown joeb.joeb $HISTFILE
$ ll $HISTFILE
-rw------- 1 joeb joeb 36639 May 21 19:48 /home/joeb/.bash_history
फिर लॉगआउट करें।
$ history
फ़ाइल के रूट के स्वामित्व में आने से पहले, फ़ाइल के स्वामित्व को बदलने के बाद दर्ज किए गए आदेशों के बाद दर्ज किए गए आदेशों को दिखाना चाहिए।
shopt -s histappend
तहत एक प्रविष्टि है/etc/bash/bashrc
। फिर भी, चलने वाले गोले के किसी भी अशुद्ध निकास, अपनी कमांड लाइन के इतिहास को खो देता है।