统信UOS中禁用USB存储设备有四种方法:一、动态卸载usb_storage模块;二、通过udev规则阻止设备授权;三、modprobe黑名单+install拦截并更新initramfs;四、GRUB中添加内核参数usb-storage.disable=1并更新配置。

如果您在统信UOS系统中需要阻止USB存储设备(如U盘)被识别或挂载,则可能是出于数据安全管控或防止未授权外设接入的目的。以下是多种可独立实施的禁用USB设备的方法:
一、通过sysfs接口解绑USB存储驱动
该方法通过动态卸载内核模块usb_storage,使系统在当前会话中无法识别任何USB Mass Storage设备,操作即时生效且无需重启。
1、打开终端,执行命令查看usb_storage模块是否已加载:lsmod | grep usb_storage。
2、若输出包含usb_storage行,说明模块处于活动状态,执行卸载命令:sudo rmmod usb_storage。
3、验证卸载效果:再次运行lsmod | grep usb_storage,确认无输出或显示引用计数为0。
4、插入U盘后执行lsblk或dmesg | tail -10,应无新增disk设备及usb-storage相关日志。
二、使用udev规则永久禁用USB存储
udev是Linux设备管理的核心子系统,通过编写匹配USB存储设备的规则并执行禁止动作,可在设备接入时自动阻止其初始化,实现策略级管控。
1、创建udev规则文件:sudo nano /etc/udev/rules.d/99-disable-usb-storage.rules。
2、在文件中写入以下内容:SUBSYSTEM=="usb", ATTR{idVendor}=="*", ATTR{idProduct}=="*", RUN+="/bin/sh -c 'echo 0 > /sys$DEVPATH/authorized'"。
3、保存并退出编辑器,执行重载命令:sudo udevadm control --reload-rules。
4、触发规则更新:sudo udevadm trigger --subsystem-match=usb。
5、拔插U盘,观察dmesg | tail -10是否缺失“usb-storage”、“scsi add-single-device”等字样。
三、通过modprobe黑名单禁用usb_storage模块
该方式在系统启动阶段阻止usb_storage模块被自动加载,适用于需长期禁用USB存储的场景,对内核模块加载机制进行静态干预。
1、新建配置文件:sudo nano /etc/modprobe.d/usb-storage-blacklist.conf。
2、写入黑名单指令:blacklist usb-storage。
3、同时添加安装拦截规则以增强可靠性:install usb-storage /bin/false。
4、保存后更新initramfs:sudo update-initramfs -u。
5、重启系统,再次插入U盘,执行lsmod | grep usb_storage应无返回结果。
四、修改内核启动参数禁用USB存储支持
此方法在GRUB引导阶段传递内核参数,直接关闭USB存储子系统的初始化流程,属于最底层的禁用手段,影响范围覆盖所有USB大容量存储设备。
1、编辑GRUB配置文件:sudo nano /etc/default/grub。
2、定位GRUB_CMDLINE_LINUX行,在引号内追加参数:usbcore.autosuspend=-1 usb-storage.disable=1。
3、保存文件后更新GRUB配置:sudo update-grub(x86_64架构)或sudo grub-mkconfig -o /boot/grub/grub.cfg(ARM64架构)。
4、重启系统,启动完成后执行cat /proc/cmdline确认参数已生效。
5、插入U盘,运行ls /sys/bus/usb/drivers/,确认列表中不含usb-storage目录。

















