Saya mencari cara untuk menonaktifkan webcam yang terintegrasi ke laptop saya. Kamera web menggunakan modul uvcvideo tetapi saya tidak ingin memasukkannya ke dalam daftar hitam karena ia juga digunakan oleh kamera web eksternal yang saya miliki.
Apakah ada cara untuk menonaktifkan perangkat itu sendiri tanpa menyentuh daftar modul?
Ini adalah bagaimana webcam terdaftar oleh lsusb. Yang pertama adalah yang terintegrasi (Diidentifikasi oleh beberapa aplikasi sebagai BisonCam NB Pro), yang kedua adalah Logitech C525 eksternal:
Bus 002 Device 004: ID 5986:0361 Acer, Inc
Bus 003 Device 002: ID 046d:0826 Logitech, Inc.
Saya telah memeriksa BIOS - tidak ada cara untuk menonaktifkan webcam dari sana. Selain itu saya ingin belajar cara menonaktifkan perangkat dengan ID.
Terima kasih!
Jawaban:
Sederhana saja. Kerja kerasnya adalah menentukan jalan menuju perangkat USB. Kita perlu mulai dengan menemukan perangkat mana yang ingin kita nonaktifkan. Kita dapat melakukan ini dengan
lsusb
:Ubah 1-6 ke port perangkat Anda yang akan dinonaktifkan. Port sering tidak logis (itu fisik) tetapi Anda bisa mendapatkan pemetaan port
lsusb -t
. Setelah Anda merasa memilikinya, Anda dapat mengujinya dengan:Ini memberi saya
0402
dan5602
, vendor dan ID produk untuk perangkat yang tepat (sebagaimana tercantum dalamlsusb
).Sekarang kami telah menemukannya, mematikannya sederhana:
Setelah memastikan itu berfungsi seperti yang diinginkan, buat itu memuat setiap startup (misalnya, dalam
/etc/rc.local
.)sumber
echo "0" > /sys/bus/usb/devices/1-6/bConfigurationValue
dengan sudo, ini tidak berhasil. Nilai tidak tinggal di sana, file tidak mengandung apa pun. Kamera web masih berfungsi.echo "0" > /sys/bus/usb/devices/1-6/bConfigurationValue
baris ke/etc/rc.local
.@ surjack:
1-6
tergantung pada pemetaan port Anda. Jika Anda mengetik,lsusb -t
Anda akan mendapatkannya lalu membandingkannya dengan outputlsusb
. Bagi saya, saya mendapatkan output berikut:dan
Sekarang temukan Bus yang tepat
04
dalam kasus saya karenaAcer, Inc
ini adalah kamera. Pemetaan port menunjukkan kamera berada diBus 04.Port 1
. Ini berarti daripada menggunakan1-6
saya harus menggunakan4-1
. Saya bukan ahli Linux / Ubuntu tetapi ini memberi saya kesan bahwa Anda harus menggunakanBus-Port
dan hanya menggunakan angka. Jika Anda ingin 100% yakin gunakancat
perintah seperti yang dijelaskan:dan bandingkan dengan lsusb.
Dalam kasus saya:
yang identik dengan output lsusb:
5986:0525
.Sekarang Anda menemukan webcam internal Anda.
Tetapi sayangnya lysdexia benar dan perintah echo tidak berfungsi karena
Permission denied
.Apakah ada solusi lain yang tersedia?
sumber
sudo -i
dan kemudianecho "0" > ...
.sudo echo "0" > sudo /sys/bus/usb/devices/...
Jika Anda hanya ingin mengaktifkan yang eksternal ketika terpasang, tetapi mengaktifkan yang internal jika yang eksternal tidak terpasang, inilah skrip untuk itu. Ini berdasarkan jawaban Wildneuro, tetapi bisa mengetahui jalur perangkat untuk Anda yang diberi ID.
Saya menggunakannya karena beberapa aplikasi yang saya andalkan tampaknya tidak menawarkan cara untuk dengan mudah memilih kamera pilihan Anda. Anda dapat dengan mudah menyesuaikan dengan ID kamera Anda sendiri (dari
lsusb
).Kode di sini: https://gist.github.com/shimon/12cd1080fb8669549aadc2b5408922bc
sumber