首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

linux 禁用usb设备

在Linux系统中,禁用USB设备可以通过多种方式实现,主要涉及修改内核模块加载、配置udev规则以及使用特定的命令行工具。以下是详细的基础概念、方法及其应用场景:

基础概念

  • USB设备:通用串行总线(USB)设备是一种常见的接口标准,用于连接计算机和外部设备,如鼠标、键盘、存储设备等。
  • 内核模块:Linux内核可以通过加载和卸载模块来动态扩展其功能。USB相关的驱动通常作为内核模块存在。
  • udev:是Linux的设备管理器,负责管理和控制设备节点。

方法及应用场景

1. 使用 echo 命令临时禁用USB端口

这种方法适用于临时禁用某个USB端口,重启后会失效。

代码语言:txt
复制
echo "0" > /sys/bus/usb-serial/drivers/usb-serial/unbind

应用场景:当需要临时断开某个USB设备以便进行维护或防止数据泄露时。

2. 修改 /etc/modprobe.d/blacklist.conf

通过编辑这个文件,可以永久禁用特定的USB驱动模块。

代码语言:txt
复制
blacklist usb_storage

然后运行 update-initramfs -u 更新initramfs。

应用场景:长期禁用某些USB设备,如存储设备,以提高系统安全性。

3. 使用 udev 规则

创建一个新的udev规则文件,例如 /etc/udev/rules.d/99-disable-usb-storage.rules,内容如下:

代码语言:txt
复制
ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="xxxx", ATTR{idProduct}=="xxxx", RUN+="/bin/sh -c 'echo 0 > /sys$env{DEVPATH}/authorized'"

替换 xxxx 为特定设备的Vendor ID和Product ID。

应用场景:精确控制特定USB设备的启用或禁用,适用于需要根据设备ID进行细粒度管理的场景。

解决常见问题

如果在执行上述操作后USB设备仍然被启用,可能的原因及解决方法包括:

  • 权限问题:确保操作是以root用户或具有足够权限的用户执行的。
  • 内核模块未正确卸载:使用 lsmod | grep usb_storage 检查相关模块是否已加载,并尝试手动卸载。
  • udev规则未生效:重新加载udev规则并重启系统以确保新规则被应用。
代码语言:txt
复制
sudo udevadm control --reload-rules && sudo udevadm trigger

通过这些方法,可以有效地管理和控制Linux系统中USB设备的使用,从而提高系统的安全性和稳定性。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

2分40秒

Windows 系统使用 RemoteFx 重定向 USB 设备

-

老外:禁用华为设备是愚蠢的,这会让英国5G发展大大落后!

40分21秒

Linux内核《设备驱动程序架构》

25分10秒

02 -Linux安装/08 -Linux安装-设备文件名和挂载点

44分14秒

Linux内核《IO体系结构与访问设备》

46分27秒

Linux内核网络设备与套接字缓冲区

1时18分

1Linux基础知识-8磁盘管理-6swap分区管理和移动设备使用

10分34秒

052_尚硅谷课程系列之Linux_实操篇_磁盘管理类(三)_查看设备挂载情况

10分34秒

052_尚硅谷课程系列之Linux_实操篇_磁盘管理类(三)_查看设备挂载情况

8分23秒

8、安全防护/15、尚硅谷-Linux云计算-安全- 安全防御概述/49、尚硅谷-Linux云计算-安全防御 - 常见的安全防御设备

40秒

可编成USB转串口适配器开发版主要作用

23秒

USB转IICI2CSPIUART适配器模块可编程好开发板

领券