<पी> चौकीदार एक खुला स्रोत और क्रॉस-प्लेटफ़ॉर्म फ़ाइल देखने की सेवा है जो फ़ाइलों को देखती है और रिकॉर्ड करती है या उनके बदलने पर कार्रवाई करती है। इसे फेसबुक द्वारा विकसित किया गया है और लिनक्स, ओएस एक्स, फ्रीबीएसडी और सोलारिस पर चलता है। यह क्लाइंट-सर्वर मॉडल में चलता है और अधिक शक्तिशाली अधिसूचना प्रदान करने के लिए लिनक्स कर्नेल की इनोटिफाई उपयोगिता को नियोजित करता है। चौकीदार की उपयोगी अवधारणाएँ
- यह पुनरावर्ती रूप से एक या अधिक निर्देशिका वृक्षों को देखता है।
- प्रत्येक देखी गई निर्देशिका को रूट कहा जाता है।
- इसे कमांड-लाइन या JSON प्रारूप में लिखी कॉन्फ़िगरेशन फ़ाइल के माध्यम से कॉन्फ़िगर किया जा सकता है।
- यह लॉग फ़ाइलों में परिवर्तन रिकॉर्ड करता है।
- रूट में होने वाले फ़ाइल परिवर्तनों की सदस्यता का समर्थन करता है।
- आपको पिछली बार चेक करने के बाद से फ़ाइल में हुए बदलावों या ट्री की वर्तमान स्थिति के लिए रूट से पूछताछ करने की अनुमति देता है।
- यह पूरे प्रोजेक्ट को देख सकता है।
<पी> इस लेख में, हम बताएंगे कि वॉचमैन को कैसे स्थापित करें और उसका उपयोग कैसे करें फ़ाइलों को देखने (निगरानी) करने और लिनक्स में उनके बदलने पर रिकॉर्ड करने के लिए। हम संक्षेप में यह भी प्रदर्शित करेंगे कि किसी निर्देशिका को कैसे देखा जाए और स्क्रिप्ट में परिवर्तन होने पर उसे कैसे सक्रिय किया जाए। लिनक्स में वॉचमैन फ़ाइल वॉचिंग सेवा स्थापित करना
<पी> हमचौकीदारलगाएंगे स्रोतों से सेवा, इसलिए पहले इन आवश्यक निर्भरताओं को स्थापित करें libssl-dev , ऑटोकॉन्फ , स्वचालित libtool , सेटअपटूल , पायथन-डेवेल और libfolly अपने लिनक्स वितरण पर निम्नलिखित कमांड का उपयोग करें। ----------- On Debian/Ubuntu -----------
$ sudo apt install autoconf automake build-essential python-setuptools python-dev libssl-dev libtool
----------- On RHEL/CentOS -----------
# yum install autoconf automake python-setuptools python-devel openssl-devel libssl-devel libtool
# yum groupinstall 'Development Tools'
----------- On Fedora -----------
$ sudo dnf install autoconf automake python-setuptools openssl-devel libssl-devel libtool
$ sudo dnf groupinstall 'Development Tools'
<पी> एक बार आवश्यक निर्भरताएँ स्थापित हो जाने पर, आप इसके जीथब रिपॉजिटरी को डाउनलोड करके वॉचमैन का निर्माण शुरू कर सकते हैं, स्थानीय रिपॉजिटरी में जा सकते हैं, निम्नलिखित कमांड का उपयोग करके इसे कॉन्फ़िगर, निर्माण और इंस्टॉल कर सकते हैं। $ git clone https://github.com/facebook/watchman.git
$ cd watchman
$ git checkout v4.9.0
$ ./autogen.sh
$ ./configure
$ make
$ sudo make install
लिनक्स में वॉचमैन के साथ फ़ाइलें और निर्देशिकाएँ देखना
<पी> चौकीदार दो तरीकों से कॉन्फ़िगर किया जा सकता है:(1) कमांड-लाइन के माध्यम से जबकि डेमॉन पृष्ठभूमि में चल रहा है या (2) JSON प्रारूप में लिखी कॉन्फ़िगरेशन फ़ाइल के माध्यम से। <पी> किसी निर्देशिका को देखने के लिए (जैसे ~/bin)। ) परिवर्तनों के लिए, निम्न आदेश चलाएँ। $ watchman watch ~/bin/
लिनक्स में एक निर्देशिका देखें <पी> निम्न कमांड state नामक एक कॉन्फ़िगरेशन फ़ाइल लिखता है /usr/local/var/run/watchman/-state/ के अंतर्गत , JSON प्रारूप में और साथ ही log नामक एक लॉग फ़ाइल में उसी स्थान पर. <पी> आप शो के रूप में कैट कमांड का उपयोग करके दो फ़ाइलों को देख सकते हैं। $ cat /usr/local/var/run/watchman/aaronkilik-state/state
$ cat /usr/local/var/run/watchman/aaronkilik-state/log
<पी> आप यह भी परिभाषित कर सकते हैं कि जब किसी निर्देशिका में परिवर्तन देखे जा रहे हों तो कौन सी कार्रवाई शुरू की जाए। उदाहरण के लिए निम्नलिखित कमांड में, 'test-trigger ' ट्रिगर का नाम है और ~bin/pav.sh वह स्क्रिप्ट है जिसे मॉनिटर की जा रही निर्देशिका में परिवर्तनों का पता चलने पर लागू किया जाएगा। <पी> परीक्षण प्रयोजनों के लिए, pav.sh स्क्रिप्ट बस टाइमस्टैम्प के साथ एक फ़ाइल बनाती है (यानी file.$time.txt ) उसी निर्देशिका में जहां स्क्रिप्ट संग्रहीत है। time=`date +%Y-%m-%d.%H:%M:%S`
touch file.$time.txt
<पी> फ़ाइल को सहेजें और स्क्रिप्ट को दिखाए अनुसार निष्पादन योग्य बनाएं। $ chmod +x ~/bin/pav.sh
<पी> ट्रिगर लॉन्च करने के लिए, निम्न कमांड चलाएँ। $ watchman -- trigger ~/bin 'test-trigger' -- ~/bin/pav.sh
डायरेक्टरी पर एक ट्रिगर बनाएं <पी> जब आपचौकीदारन निष्पादित करते हैं किसी निर्देशिका पर नज़र रखने के लिए, उसे निगरानी सूची में जोड़ा जाता है और उसे देखने के लिए, निम्न आदेश चलाएँ। $ watchman watch-list
देखें सूची देखें <पी> किसी रूट के लिए ट्रिगर सूची देखने के लिए , निम्न कमांड चलाएँ ( ~/bin बदलें root के साथ नाम). $ watchman trigger-list ~/bin
रूट के लिए ट्रिगर सूची दिखाएं <पी> उपरोक्त कॉन्फ़िगरेशन के आधार पर, हर बार ~/bin निर्देशिका परिवर्तन, एक फ़ाइल जैसे file.2019-03-13.23:14:17.txt इसके अंदर बनाया गया है और आप उन्हें ls कमांड का उपयोग करके देख सकते हैं। $ ls
वॉचमैन कॉन्फ़िगरेशन का परीक्षण करें लिनक्स में वॉचमैन सर्विस को अनइंस्टॉल करना
<पी> यदि आप वॉचमैन को अनइंस्टॉल करना चाहते हैं , स्रोत निर्देशिका में जाएँ और निम्नलिखित कमांड चलाएँ: $ sudo make uninstall
$ cd '/usr/local/bin' && rm -f watchman
$ cd '/usr/local/share/doc/watchman-4.9.0 ' && rm -f README.markdown
<पी> अधिक जानकारी के लिए, वॉचमैन जीथब रिपॉजिटरी पर जाएँ:https://github.com/facebook/watchman। <पी> आप इन निम्नलिखित संबंधित लेखों को भी पढ़ना पसंद कर सकते हैं। - स्वॉचडॉग - लिनक्स में रीयल-टाइम में सरल लॉग फ़ाइल वॉचर
- वास्तविक समय में लॉग फ़ाइलों को देखने या मॉनिटर करने के 4 तरीके
- fswatch - Linux में फ़ाइलों और निर्देशिका परिवर्तनों पर नज़र रखता है
- Pyintify - Linux में वास्तविक समय में फ़ाइल सिस्टम परिवर्तनों की निगरानी करें
- इनाव - लिनक्स में अपाचे लॉग्स को रियल टाइम में देखें
<पी> चौकीदार एक खुला स्रोत फ़ाइल देखने वाली सेवा है जो फ़ाइलों और रिकॉर्डों पर नज़र रखती है, या उनमें बदलाव होने पर कार्रवाई शुरू करती है। प्रश्न पूछने या हमारे साथ अपने विचार साझा करने के लिए नीचे दिए गए फीडबैक फॉर्म का उपयोग करें।