आंतरिक वेब कैमरा कैसे निष्क्रिय करें?


10

मैं अपने लैपटॉप के आंतरिक वेब कैमरा को Ubuntu 13.10 पर निष्क्रिय करना चाहता हूं? जैसा कि यहां बताया गया है , मैंने पहले से ही संबंधित कर्नेल मॉड्यूल को ब्लैक लिस्ट करके अक्षम कर दिया है। लेकिन रिबूट के बाद मॉड्यूल फिर भी लोड किए जाते हैं। इन मॉड्यूल से छुटकारा पाने के लिए मैं क्या कर सकता हूं?

मेरा मॉड्यूल ब्लैकलिस्ट में निहित है /etc/modprobe.d/blacklist-webcam.confऔर ऐसा दिखता है:

blacklist videodev
blacklist videobuf2_core
blacklist videobuf2_memops
blacklist videobuf2_vmalloc
blacklist uvcvideo

लेकिन lsmodमुझे (रिबूट के बाद):

Module                  Size  Used by
uvcvideo               80885  0 
videobuf2_vmalloc      13216  1 uvcvideo
videobuf2_memops       13362  1 videobuf2_vmalloc
videobuf2_core         40499  1 uvcvideo
videodev              133509  2 uvcvideo,videobuf2_core

संपादित करें:
जब मैं करता हूं तो sudo modprobe -r uvcvideoमॉड्यूल चले गए हैं। इसलिए मैं ऐसा करने के लिए एक स्क्रिप्ट लिख सकता था। लेकिन मैं इसे एक स्वच्छ समाधान के रूप में नहीं मानता; ;-)


टाइप करने पर आपको क्या मिलता है sudo modprobe -r uvcvideo?
जॉब

1
आपने अपनी ब्लैकलिस्ट फ़ाइल को कहाँ सहेजा है?
ब्रायम

@Braiam: ब्लैकलिस्ट में निहित है /etc/modprobe.d। इसमें ब्लूटूथ मॉड्यूल को ब्लैकलिस्ट करने के लिए प्रविष्टियां भी हैं। यह काम करता है, इसलिए फ़ाइल की व्याख्या की जाती है।
मार्क हॉन्टमैन

कैमरा को निष्क्रिय करने के लिए आपकी आवश्यकता के पीछे चालक क्या है? गंभीरता से, ट्रोल करने की कोशिश नहीं कर रहा। यदि आप kmodules और whatnot द्वारा उपयोग किए गए संसाधनों को मुक्त करना चाहते हैं, तो भयानक। यदि आप चाहते हैं कि कैमरा छवियों / वीडियो पर कब्जा न करे, और केबी या मेमोरी के बारे में परवाह न करें, तो शायद यही है? pbs.twimg.com/media/BTWPnR_CYAA2pfM.jpg उन्हें यहाँ पाएं eff.org/deeplinks/2013/04//
0xSheepdog

मुझे लगता है कि वे बाद में udv नियमों से सक्षम हो रहे हैं। मुझे यकीन नहीं है कि आप उन्हें कैसे निष्क्रिय कर सकते हैं।
ब्राह्मण

जवाबों:


6
  • अपनी ब्लैकलिस्ट.कॉन्फ़ में परिवर्तित blacklist videodevकरेंinstall videodev /bin/false
  • update-initramfs -u
  • reboot

अधिक जानकारी के लिए आर्क विकी पर कर्नेल मॉड्यूल ब्लैक लिस्ट करें देखें :

प्रतिबंधीकरण

कर्नेल मॉड्यूल के संदर्भ में ब्लैकलिस्ट करना, कर्नेल मॉड्यूल को लोड होने से रोकने के लिए एक तंत्र है। यह उपयोगी हो सकता है, उदाहरण के लिए, संबंधित हार्डवेयर की आवश्यकता नहीं है, या यदि उस मॉड्यूल को लोड करने में समस्या होती है: उदाहरण के लिए दो कर्नेल मॉड्यूल हो सकते हैं जो हार्डवेयर के एक ही टुकड़े को नियंत्रित करने का प्रयास करते हैं, और उन्हें एक साथ लोड करने का परिणाम होता है संघर्ष।

कुछ मॉड्यूल initramfs के भाग के रूप में लोड किए गए हैं। mkinitcpio -Mस्वचालित रूप से पता लगाए गए सभी मॉड्यूल का प्रिंट आउट लेगा: इनट्रामरफ्स को उन मॉड्यूलों में से कुछ को लोड करने से रोकने के लिए, उन्हें /etc/modprobe.d/modprobe.conf में ब्लैकलिस्ट करें। रनिंग mkinitcpio -vविभिन्न हुक (जैसे फाइलसिस्टम हुक, ब्लॉक हुक, आदि) द्वारा खींचे गए सभी मॉड्यूल को सूचीबद्ध करेगा। याद रखें कि .conf फ़ाइल को /etc/mkinitcpio.conf में FILES अनुभाग में फ़ाइल करें, यदि आपने ऐसा पहले से नहीं किया है, और एक बार जब आप मॉड्यूल को ब्लैकलिस्ट कर दिया है, और उसके बाद रिबूट करें तो initramfs को फिर से बनाएँ।

/Etc/modprobe.d/ में फ़ाइलों का उपयोग करना

/Etc/modprobe.d/ के अंदर एक .conf फ़ाइल बनाएं और उस प्रत्येक मॉड्यूल के लिए एक पंक्ति जोड़ें, जिसे आप ब्लैकलिस्ट करना चाहते हैं, ब्लैकलिस्ट कीवर्ड का उपयोग करके। यदि उदाहरण के लिए आप pcspkr मॉड्यूल को लोड होने से रोकना चाहते हैं:

/etc/modprobe.d/nobeep.conf

# Do not load the 'pcspkr' module on boot.
blacklist pcspkr

नोट: ब्लैकलिस्ट कमांड एक मॉड्यूल को ब्लैकलिस्ट कर देगा ताकि यह स्वचालित रूप से लोड न हो, लेकिन मॉड्यूल को लोड किया जा सकता है यदि कोई अन्य गैर-ब्लैक लिस्टेड मॉड्यूल इस पर निर्भर करता है या यदि यह मैन्युअल रूप से लोड होता है।

हालाँकि, इस व्यवहार के लिए एक समाधान है; इंस्टाल कमांड सामान्य रूप में कर्नेल में मॉड्यूल डालने के बजाय एक कस्टम कमांड चलाने के लिए modprobe का निर्देश देता है, इसलिए आप मॉड्यूल को लोडिंग में हमेशा विफल होने के लिए मजबूर कर सकते हैं:

/etc/modprobe.d/blacklist.conf

...
install module_name /bin/false
...

यह प्रभावी रूप से उस मॉड्यूल और उस पर निर्भर किसी भी अन्य को ब्लैकलिस्ट कर देगा।


1

बस /etc/modprobe.d/blacklist.uvcdrver.conf में मॉड्यूल की सूची डालकर काम करना चाहिए। फ़ाइल का नाम कुछ भी हो सकता है। बस सुनिश्चित करें कि प्रारूप और अनुमतियाँ सही हैं।


1

आपकी मदद के लिए बहुत बहुत धन्यवाद! मुझे बैन के समाधान की कोशिश करते हुए समस्या का स्रोत मिला । उसका समाधान अच्छा काम करता है। रिबूट के बाद मॉड्यूल वास्तव में चले गए थे। लेकिन इसमें एक खामी है: मैं modprobe uvcvideoवेबकैम को फिर से सक्षम करने के मामले में मॉड्यूल को लोड नहीं कर सकता ।

अपने सिस्टम के माध्यम से खुदाई करते समय, यह पता लगाने के लिए कि uvcvideoमॉड्यूल क्यों लोड किया गया था, मैंने आखिरकार एक grep -r uvcvideo /etc/वॉयला बना दिया , मुझे एक स्क्रिप्ट मिली /etc/pm/power.dजिसमें modprobe uvcvideoपावर केबल को प्लग किया गया था। मैंने इस स्क्रिप्ट को कुछ समय पहले ऑप्टिमाइज़ करने के लिए लिखा था। बिजली की खपत। मैंने वेब कैमरा मॉड्यूल के साथ काम करने वाली पंक्तियों पर टिप्पणी की और उसके बाद, ब्लैकलिस्ट ने काम किया!


0

मैं आपको चलाने का सुझाव दूंगा

sudo update-initramfs -u

अपने ब्लैकलिस्ट को संशोधित करने के बाद। यह आपकी प्रारंभिक रैमडिस्क को अपडेट करेगा।


नहीं, वह काम नहीं किया
मार्क Hauptmann

0

इस मामले में कि आप एक कमांड लाइन निर्देश में समाधान के बाद थे, यह मददगार हो सकता है ( इस उत्तर के आधार पर ):

जब तक रिबूट इस कमांड का उपयोग न करे, तब तक कैमरा अक्षम करें:

sudo modprobe -r uvcvideo

अपना पासवर्ड टाइप करें और यदि टर्मिनल में कोई त्रुटि नहीं दिखाई देती है, तो आपका वेबकैम अक्षम होना चाहिए। यदि आपको त्रुटि संदेश मिला है: modprobe: FATAL: मॉड्यूल uvcvideo उपयोग में है, तो आप इसे हटाने के लिए बाध्य करने का प्रयास कर सकते हैं:

sudo rmmod -f uvcvideo

अपने वेबकैम को फिर से सक्षम करने के लिए, शेल में टाइप करें:

sudo modprobe uvcvideo
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.