Ubuntu 14.04 на MacBook Air.
Используя следующий метод для установки веб-камеры на MacBook Air:
cd /etc/local/src
git clone https://github.com/patjak/bcwc_pcie.git
cd bcwc_pcie/firmware
sudo make
sudo make install
cd ..
sudo make
sudo install
sudo depmod
sudo modprobe -r bdc_pci
sudo modprobe facetimehd
Установка работает, но она не постоянна. Я должен повторять последние три команды каждый раз, когда я хочу использовать веб-камеру. Может кто-нибудь сказать, пожалуйста, почему и как это исправить? Я должен быть в состоянии добавить строку в файл где-нибудь или ...?
Вы скомпилировали модуль ядра facetimehd
но это, по-видимому, конфликтует с модулем, включенным в ядро Ubuntu, bdc_pci
. Эта команда удаляет тот драйвер из ядра:
sudo modprobe -r bdc_pci
Согласно Wiki репозитория мы можем поместить в черный список тот модуль для преодоления возможных проблем.
Чтобы сделать это, создайте файл в /etc/modprobe.d
с суффиксом .conf
. Можно также просто добавить строку к основному черному списку /etc/modprobe.d/blacklist.conf
, но делая отдельный файл для каждого модуля Вы хотите поместить в черный список, помогает управлять ими. Глобальные обновления могут заменить основной черный список новой версией время от времени, и необходимо будет отредактировать его снова.
Чтобы создать и отредактировать файл, Вы должны будете базироваться разрешение. Не использовать chmod
или chown
, просто используйте sudo
. Например, использование:
sudoedit /etc/modprobe.d/blacklist-bdc_pci.conf
Это вызывает редактора по умолчанию, обычно nano
, но можно использовать sudo nano
sudo vim
и т.д. согласно Вашему предпочтению. При вызове графического текстового редактора как gedit используйте -H
флаг для получения чистой среды: sudo -H gedit /etc...
Добавьте одну строку к файлу
blacklist bdc_pci
Или если Вы хотите, добавьте две строки, один комментарий (запускается с #
таким образом, строка будет проигнорирована), так будущее, Вы и другие люди будете знать причину помещения в черный список, например
# conflicts with facetimehd webcam driver
blacklist bdc_pci
Сохраните и выйдите, все сделанные.
Это могло бы быть достаточно, но если новый модуль все еще не становится загруженным автоматически, самый легкий путь к сделанным, которые происходят, состоит в том, чтобы сделать systemd
загрузите его путем добавления его к файлу /etc/modules
. Можно также создать файл в каталоге /etc/modules-load.d
с расширением .conf
, и как с черным списком, который был бы незначительно лучшей практикой.
sudoedit /etc/modules-load.d/facetimehd.conf
(или sudoedit /etc/modules
, или назовите свой любимый текстовый редактор как выше...),
Добавьте одну строку:
facetimehd
Или два:
# webcam driver, doesn't load itself
facetimehd
Сохраните и выйдите, и модуль должен быть загружен при следующей начальной загрузке.