linux设置挂载指定的usb,自动挂载
一、设置指定的USB
在Linux系统中,如果您只想让系统挂载特定的USB设备,而忽略其他的USB设备,可以通过创建自定义的udev规则来实现。以下是设置系统只能挂载指定USB设备的基本步骤:
-
确定USB设备的属性:
首先,您需要确定您想要挂载的USB设备的属性,如供应商ID(idVendor)和产品ID(idProduct)。可以使用lsusb命令列出所有已连接的USB设备,并找到您想要指定的设备。lsusb或者,使用
udevadm获取更详细的信息:udevadm info -a -p $(udevadm info -q path -n /dev/sdX)其中
/dev/sdX是您的USB设备节点。 -
创建udev规则文件:
基于您收集到的设备信息,创建一个udev规则文件。这个文件将定义当特定USB设备连接时,系统将采取的行动。创建一个新的规则文件:
sudo nano /etc/udev/rules.d/99-allow-only-usb.rules添加如下规则:
ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="您的供应商ID", ATTRS{idProduct}=="您的产品ID", RUN+="/bin/echo 'USB device %k allowed'"请将“您的供应商ID”和“您的产品ID”替换为您的实际ID。
-
阻止未指定的USB设备:
创建另一个规则文件,以阻止未指定的USB设备:sudo nano /etc/udev/rules.d/99-block-other-usb.rules添加如下规则:
ACTION=="add", SUBSYSTEM=="usb", ENV{ID_VENDOR_ID}!="您的供应商ID", ENV{ID_MODEL_ID}!="您的产品ID", RUN+="/bin/echo 'USB device %k blocked'" -
重新加载udev规则:
保存规则文件并退出编辑器,然后重新加载udev规则以应用更改:sudo udevadm control --reload-rules -
测试规则:
您可以使用udevadm测试规则,以确保它们按预期工作:sudo udevadm test $(udevadm info -q path -n /dev/sdX)其中
/dev/sdX是您的USB设备节点。
请注意,这些规则仅用于在控制台中打印消息,以确认特定USB设备被允许或阻止。如果您想要完全阻止未授权的USB设备,您可能需要结合使用udev规则和usbguard或创建一个脚本来实际阻止设备挂载。
另外,如果您想要挂载特定的USB设备,您需要在udev规则中添加挂载命令,或者在/etc/fstab中添加相应的条目,以实现自动挂载。
在编辑系统文件和创建规则时,请谨慎行事,因为错误的规则可能会导致系统不稳定或安全问题。如果您不确定如何进行,最好咨询有经验的系统管理员。
二、自动挂载
要在Linux系统中设置自动挂载指定的USB设备,您可以通过两种主要方式来实现:使用udev规则或编辑/etc/fstab文件。下面是每种方法的步骤:
方法一:使用udev规则自动挂载
-
创建挂载脚本:
编写一个脚本,当udev规则触发时,这个脚本将执行挂载命令。sudo nano /usr/local/bin/mount_usb.sh添加以下内容(请根据需要修改脚本):
#!/bin/bash DISK="/dev/$1" MOUNT_POINT="/mnt/usb" FILESYSTEM=$(lsblk -no FSTYPE $DISK)if [ ! -d "$MOUNT_POINT" ]; thensudo mkdir -p "$MOUNT_POINT" fiif [ "$FILESYSTEM" != "" ]; thensudo mount -t $FILESYSTEM $DISK $MOUNT_POINT fi使脚本可执行:
sudo chmod +x /usr/local/bin/mount_usb.sh -
创建udev规则:
创建一个udev规则文件,当指定的USB设备连接时,自动执行挂载脚本。sudo nano /etc/udev/rules.d/99-usb-automount.rules添加如下规则:
ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="您的供应商ID", ATTRS{idProduct}=="您的产品ID", RUN+="/usr/local/bin/mount_usb.sh %k"替换
"您的供应商ID"和"您的产品ID"为您的USB设备的供应商和产品ID。 -
重新加载udev规则:
重新加载udev规则以应用更改。sudo udevadm control --reload-rules
方法二:在/etc/fstab中添加条目以实现自动挂载
-
确定USB设备的UUID:
使用blkid命令获取USB设备的UUID。sudo blkid找到您的USB设备的条目,并复制其UUID。
-
编辑/etc/fstab文件:
将以下行添加到/etc/fstab文件中,实现自动挂载。sudo nano /etc/fstab添加如下条目:
UUID=您的UUID /mnt/usb 自动检测的文件系统类型 defaults 0 0将
您的UUID替换为实际的UUID,/mnt/usb是您希望挂载的目录。 -
创建挂载点:
如果尚未存在,为USB设备创建一个挂载点。sudo mkdir -p /mnt/usb -
测试挂载:
您可以通过以下命令测试挂载是否正确设置:sudo mount -a
这两种方法都可以实现USB设备的自动挂载。使用udev规则可以提供更灵活的控制,例如,您可以在脚本中添加额外的挂载选项或条件。而/etc/fstab方法则更为简单,但它不提供基于设备属性的挂载控制。根据您的具体需求选择适当的方法。
相关文章:
linux设置挂载指定的usb,自动挂载
一、设置指定的USB 在Linux系统中,如果您只想让系统挂载特定的USB设备,而忽略其他的USB设备,可以通过创建自定义的udev规则来实现。以下是设置系统只能挂载指定USB设备的基本步骤: 确定USB设备的属性: 首先࿰…...
简站WordPress主题
简站WordPress主题是一种专为建立网站而设计的WordPress模板,它旨在简化网站建设过程,使得用户能够更容易地创建和管理自己的网站。简站WordPress主题具有以下特点: 易用性:简站WordPress主题被设计为简单易用,适合各…...
is和==的关系
Python中is和的关系 is判断两个变量是不是指的是同一个内存地址,也就是通过id()函数判断 判断两个变量的值是不是相同 a [1, 2, 3, 4] b [1, 2, 3, 4] print(id(a)) # 2298268712768 print(id(b)) # 2298269716992 print(a is b) # False print(a b) # Tr…...
璩静是为了薅百度羊毛
关注卢松松,会经常给你分享一些我的经验和观点。 百度副总裁璩静离职了,网传她的年薪是1500万,而璩静在4月24日注册了一个文化传媒公司,大家都认为璩静是在为离职做准备。但松松我认为不是。 我认为:璩静成立新公司是…...
Element ui input 限制只能输入数字,且只能有两位小数
<el-form-item label"整体进度:" prop"number"> <el-input v-model"formInline.number" input"handleInput" placeholder"百分比" clearable></el-input>% </el-form-item&g…...
吃掉 N 个橘子的最少天数
代码实现: 方法一:递归——超时 #define min(a, b) ((a) > (b) ? (b) : (a))int minDays(int n) {if (n 1 || n 2) {return n;}if (n % 3 0) {if (n % 2 0) {return min(min(minDays(n - 1), minDays(n / 2)), minDays(n - 2 * (n / 3))) 1;} e…...
JavaScript 之 toString()方法详解
一、前言: 在 JavaScript 中,toString() 方法是很多数据类型内置的方法,它被用于将特定的数据类型转换为字符串。但是在不同的数据类型中的作用并非完全相同,下面就来详细讲解一下 toString() 方法在各种数据类型中的使用和作用…...
PPMP_char3
PMPP char3 – Multidimensional grids and data 五一过后,有些工作要赶,抽出时间更新一下。这一章基本都熟练掌握,在做习题过程中有一些思考。这里涉及到了一点点GEMM(矩阵乘),GEMM有太多可深挖的了&a…...
VulkanSDK Demos vkcube 编译失败
操作系统: Windows 11 23H2 Vulkan 版本: 1.3.2.280.0 Visual Studio 版本: 2022 在VulkanSDK/Demos目录下存在一个demo solution,其中包含两个project, vkcube和vkcubepp,两个分别为C语言和C写的示例程序, 但是直接编译这两个project时会编译失败,报了以下错误: fatal err…...
(二)Jetpack Compose 布局模型
前文回顾 (一)Jetpack Compose 从入门到会写-CSDN博客 首先让我们回顾一下上一篇文章中里提到过几个问题: ComposeView的层级关系,互相嵌套存在的问题? 为什么Compose可以实现只测量一次? ComposeView和…...
【Oracle impdp导入dmp文件(windows)】
Oracle impdp导入dmp文件(windows) 1、连接数据库2、创建与导出的模式相同名称的用户WIRELESS2,并赋予权限3、创建directory 的物理目录f:\radio\dmp,并把.dmp文件放进去4、连接新用户WIRELESS25、创建表空间的物理目录F:\radio\t…...
代数结构:5、格与布尔代数
16.1 偏序与格 偏序集:设P是集合,P上的二元关系“≤”满足以下三个条件,则称“≤”是P上的偏序关系(或部分序关系) (1)自反性:a≤a,∀a∈P; (2…...
如何使用DEEPL免费翻译PDF
如何使用DEEPL免费翻译PDF 安装DEEPL取消PDF限制 安装DEEPL 安装教程比较多,这里不重复。 把英文pdf拖进去,点翻译,在下面的框中有已经翻译完毕的文档。 但是存在两个问题 问题1:这些文档是加密的。 问题2:带有DeepL标…...
Spring-全面详解
Spring,就像是软件开发界的一个超级英雄,它让编写Java程序变得更简单、更灵活。想象一下,如果你要盖一栋大楼,Spring就是那个提供各种工具、框架和最佳实践的建筑大师,帮助你高效、优雅地搭建起整个项目。 Spring是啥&…...
QT自适应界面 处理高DPI 缩放比界面乱问题
1.pro文件添加 必须添加要不找不到 QT版本需要 5。4 以上才支持 QT widgets 2.main界面提前处理 // 1. 全局缩放使能QApplication::setAttribute(Qt::AA_EnableHighDpiScaling, true);// 2. 适配非整数倍缩放QGuiApplication::setHighDpiScaleFactorRoundingPolicy(Qt::High…...
序列到序列模型在语言识别Speech Applications中的应用 Transformer应用于TTS Transformer应用于ASR 端到端RNN
序列到序列模型在语言识别Speech Applications中的应用 A Comparative Study on Transformer vs RNN in Speech Applications 序列到序列(Seq2Seq)模型在语音识别(Speech Applications)中有重要的应用。虽然Seq2Seq模型最初是为了解决自然语言处理中的序列生成问题而设计的…...
【Linux】- Linux环境变量[8]
目录 环境变量 $符号 自行设置环境变量 环境变量 环境变量是操作系统(Windows、Linux、Mac)在运行的时候,记录的一些关键性信息,用以辅助系统运行。在Linux系统中执行:env命令即可查看当前系统中记录的环境变量。 …...
前端笔记-day04
文章目录 01-后代选择器02-子代选择器03-并集选择器04-交集选择器05-伪类选择器06-拓展-超链接伪类07-CSS特性-继承性08-CSS特性-层叠性09-CSS特性-优先级11-Emmet写法12-背景图13-背景图平铺方式14-背景图位置15-背景图缩放16-背景图固定17-background属性18-显示模式19-显示模…...
计算机字符集产生的历史与乱码
你好,我是 shengjk1,多年大厂经验,努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注!你会有如下收益: 了解大厂经验拥有和大厂相匹配的技术等 希望看什么,评论或者私信告诉我! 文章目录 一…...
Rerank进一步提升RAG效果
RAG & Rerank 目前大模型应用中,RAG(Retrieval Augmented Generation,检索增强生成)是一种在对话(QA)场景下最主要的应用形式,它主要解决大模型的知识存储和更新问题。 简述RAG without R…...
Taotoken 助力企业构建内部 AI 助手统一管理平台
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 Taotoken 助力企业构建内部 AI 助手统一管理平台 当企业内部开始涌现多个 AI 应用时,例如为研发团队配备的代码助手和为…...
OpenCost:Kubernetes 成本监控,开源的云资源费用分析
OpenCost:Kubernetes 成本监控,开源的云资源费用分析 随着企业将越来越多的工作负载迁移到 Kubernetes,一个新的管理挑战随之浮现:到底哪个团队、哪个应用在花钱? 公有云账单只能告诉你整个集群的月度费用,…...
聚合物半导体薄膜:柔性电子皮肤如何实现无感健康监测
1. 项目概述:从“硬核”到“柔韧”的健康监测革命如果你还在用那些又厚又硬、贴着皮肤半天就发痒发红的老式健康监测电极,是时候了解一下这个正在改变游戏规则的新玩意儿了——聚合物半导体薄膜。这可不是什么实验室里的遥远概念,它正从顶尖期…...
Juniper设备密码恢复实战:从标准流程到疑难故障排除
1. Juniper设备密码恢复标准流程详解 遇到Juniper设备密码丢失的情况时,标准的单用户模式恢复是最常用的解决方案。这个过程看似简单,但实际操作中每个步骤都有需要注意的细节。下面我会结合自己处理过的几十个案例,把标准流程拆解成可落地的…...
C++-练习-109
题目:对Tv和Remote类进行如下修改a.让它们互为友元b.在Remote类中添加一个状态变量成员,该成员描述遥控器使处于常规状态还是互动模式c.在Remote中添加一个显式模式的方法d.在Tv类中添加一个对Remote中新成员进行切换的方法,该方法仅当Tv处于…...
i.MX6ULL电容触摸驱动开发:从硬件原理到Linux输入子系统实战
1. 项目概述:从零到一,搞定i.MX6ULL电容触摸最近在搞一个基于i.MX6ULL的工控HMI项目,客户要求界面操作必须流畅跟手,这就对触摸屏的响应速度和精度提出了硬性要求。市面上很多现成的模块要么驱动兼容性差,要么调试信息…...
解密网易云音乐NCM文件:3分钟掌握ncmdump核心技术与实战应用
解密网易云音乐NCM文件:3分钟掌握ncmdump核心技术与实战应用 【免费下载链接】ncmdump 转换网易云音乐 ncm 到 mp3 / flac. Convert Netease Cloud Music ncm files to mp3/flac files. 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdump ncmdump作为C实…...
燃油车的“催命符”还是环保的“里程碑”?2026年Euro 7标准下的汽车变局
如果你正打算换车,或者对汽车行业的未来走向充满好奇,那么“Euro 7”(欧7排放标准)绝对是你绕不开的一个关键词。这项被业内称为“史上最严”的排放法规,将于2026年11月29日正式对新车型实施强制认证。它不仅给内燃机戴…...
保姆级教程:在Windows上用CMake搞定Qt 6.5与WebRTC M114的集成(附完整代码)
Windows平台Qt 6.5与WebRTC M114深度集成实战指南 环境准备与工具链配置 在Windows平台上进行Qt与WebRTC的集成开发,首先需要搭建完整的工具链环境。不同于简单的库引用,这种深度集成对工具版本和系统配置有着严格要求。 必备组件清单: Visua…...
如何通过内存注入技术在英雄联盟国服实现安全换肤?
如何通过内存注入技术在英雄联盟国服实现安全换肤? 【免费下载链接】R3nzSkin-For-China-Server Skin changer for League of Legends (LOL) 项目地址: https://gitcode.com/gh_mirrors/r3/R3nzSkin-For-China-Server 想象一下,你正在峡谷中奋战&…...
