मैं .bash_history फ़ाइल स्थान कैसे बदलूं?


10

मैं CentOS 6.x चला रहा हूं और .bash_history को किसी भिन्न स्थान पर ले जाना चाहता हूं।

मेरे उपयोगकर्ताओं की होम निर्देशिकाएं हैं (क्योंकि मैं एक VPS चलाता हूं) /var/www/vhost/<domain>.<tld>जिसमें एफ़टीपी सुलभ है (और यह होना चाहिए)।

इस वजह से, मैंने AuthorizedKeysFileएसएसएच कनेक्शन के लिए सामान्य ~/.ssh/authorized_keysसे बाहर बदल दिया है क्योंकि एफटीपी कनेक्शन आसानी से उनका पता लगाने में सक्षम होगा।

उसी समय मैं .bash_historyफ़ाइल को स्थानांतरित करना चाहता हूं /home/%u/.bash_historyजहां %uवर्तमान उपयोगकर्ता है।

जवाबों:


17

आपको अपने उपयोगकर्ताओं के लिए HISTFILE को आपके द्वारा आवश्यक स्थान पर सेट करने की आवश्यकता है, उपयोगकर्ता के लिए .bash_profile सेट करें और नए उपयोगकर्ताओं के लिए उपयोगकर्ता कंकाल निर्देशिका में सेट करें, सबसे अधिक संभावना /etc/skel/.bash_profile

export HISTFILE=/home/$USER/.bash_history

1
नए उपयोगकर्ताओं के लिए इसे कैसे सेट किया जाए इसके लिए धन्यवाद।
ब्रायन ग्राहम

जैसा कि आप एक VPS चला रहे हैं मैंने माना कि यह काम में आ सकता है। :)
डेनियल डब्ल्यू। क्रॉम्पटन

एक नोट ... यह आरसी फ़ाइल पार्सिंग में बहुत जल्दी होने की जरूरत है। जैसे ही इतिहास में कुछ भी लिखा जाता है, इस VAR में किसी भी परिवर्तन को अनदेखा कर दिया जाता है।
रिच होमोलका

@ हिचकोर्म के लिए मैन फाइल में बदलाव के अनुसार @RHomolka को नजरअंदाज नहीं किया जाता है: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.
डेनियल डब्ल्यू। क्रॉम्पटन

@ DaniëlW.Crompton मैं सहमत हूं :) मैं ttyकमांड के आधार पर अलग-अलग इतिहास फ़ाइलों का उपयोग करता हूं । मेरी बात यह थी कि आपने इसे कब सेट किया। कुछ बिंदु पर स्थान तय हो जाता है और आगे के परिवर्तनों को अनदेखा कर दिया जाता है।
रिच होमोलका
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.