Я хочу отключить внутреннюю веб-камеру моего ноутбука под управлением 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, модули ушли. Поэтому я мог написать сценарий для этого. Но я не считаю это чистым решением; -)
Подробнее см. Модули ядра Черный список в Arch Вики:
Черный список Черный список , в контексте модулей ядра, является механизмом для предотвращения загрузки модуля ядра. Это может быть полезно, если, например, связанное с ним оборудование не требуется или если загрузка этого модуля вызывает проблемы: например, могут быть два модуля ядра, которые пытаются управлять одним и тем же аппаратным обеспечением, а загрузка их вместе приведет к конфликт. Некоторые модули загружаются как часть initramfs. mkinitcpio -M распечатает все автоматически обнаруженные модули: чтобы предотвратить загрузку некоторых из этих модулей initramfs, запишите их в /etc/modprobe.d/modprobe.conf. При запуске mkinitcpio -v будут перечислены все модули, в которые вставляются различные крючки (например, крючки файловых систем, блокировка и т. Д.). Не забудьте добавить этот .conf-файл в раздел FILES в файле /etc/mkinitcpio.conf, если вы этого еще не сделали, и перестройте initramfs после того, как вы включили в черный список модули, и перезагрузитесь впоследствии. Использование файлов в файле /etc/modprobe.d/ Создайте файл .conf внутри /etc/modprobe.d/ и добавьте строку для каждого модуля, который вы хотите в черный список, используя ключевое слово blacklist. Если, например, вы хотите предотвратить загрузку модуля pcspkr:/etc/modprobe.d/nobeep.conf
# Do not load the 'pcspkr' module on boot.
blacklist pcspkr
Примечание: команда черного списка будет черным списком модуля, чтобы он не загружался автоматически, но модуль может быть загружен, если от него зависит другой модуль, не входящий в черный список, или если он загружен вручную. Однако для этого поведения существует обходное решение; команда install сообщает modprobe запускать пользовательскую команду вместо того, чтобы вставлять модуль в ядро как обычно, поэтому вы можете заставить модуль всегда отказываться от загрузки с помощью: /etc/modprobe.d/blacklist.conf
...
install module_name /bin/false
...
Это будет эффективно черным списком этого модуля и любого другого, зависящего от него. Необходимо просто поместить список модулей в /etc/modprobe.d/blacklist.uvcdrver.conf. Имя файла может быть любым. Просто убедитесь, что формат и разрешения правильные.
Я предлагаю вам запустить
sudo update-initramfs -u
после изменения вашего черного списка. Это обновит ваш исходный ramdisk.
В случае, если вы были после решения в одной команде командной строки, это может быть полезно (на основе этого ответа):
Чтобы отключить камеру до перезагрузки, используйте эту команду:
[ f1]Введите свой пароль, и если в терминале нет ошибок, ваша веб-камера должна быть отключена. Если вы получили сообщение об ошибке: modprobe: FATAL: модуль uvcvideo используется, вы можете попытаться принудительно удалить его с помощью:
sudo rmmod -f uvcvideo
Чтобы снова включить веб-камеру, введите shell: [!d4 ]
sudo modprobe uvcvideo