armbian等linux系统修改fstab实现开机自动挂载磁盘(详解)

当 Linux 操作系统启动时,它会尝试挂载您的硬盘和其他存储设备上的分区。为了实现这一目标,系统使用 /etc/fstab 文件来确定应该如何挂载文件系统。/etc/fstab 文件是一个文本文件,包含了在系统引导期间将要挂载的所有文件系统的定义。它通过指定每个文件系统的设备名称、挂载点、文件系统类型和选项等参数来完成此操作。

通常情况下,/etc/fstab 文件中的每行都对应着一个文件系统及其相关配置信息。每一行都包含以下6个字段(记住只有6个也就是用空格或者tab隔开的6列):

第1列,设备名称(Device):

该文件系统所使用的块设备的名称或 UUID。

第一列可以是磁盘路径也可以是UUID,这个磁盘路径和可以用fdisk -l 命令查看,这个UUID可以用blkid 命令查看

第2列,挂载点(Mount Point):

该文件系统所挂载到的目录位置。

这个挂载点就是你挂在后以后要用的文件路径,比如/mnt/sda1

这个路径必须提前新建好,新建文件夹命令示例:

mkdir /mnt/sda1

第3列,文件系统类型(Filesystem Type):

该文件系统所使用的文件系统类型,例如 ext4、NTFS 或 exFAT 等。

这个文件系统就是你磁盘分区的格式,我们要挂载fat/NTFS/exFAT这些windows格式的时候需要提前安装驱动支持

在 Armbian 下挂载 fat 和 ntfs 分区通常不需要任何额外的安装,因为这些文件系统格式通常都已经预置了所需的内核模块。但是,对于 exFAT 文件系统,需要额外安装 exfat-fuse 和 exfat-utils 软件包才能够正常挂载。

使用以下命令来安装这些软件包:

sudo apt-get install exfat-fuse exfat-utils

安装完成后,就可以像挂载其他文件系统一样来挂载 exFAT 格式的分区,例如:

sudo mount -t exfat /dev/sdb1 /mnt/exfat

第4列,挂载选项(Mount Options):

配置文件系统的读写权限、自动挂载方式等功能。

下面是一些常见的选项:

rw:可读写模式。

ro:只读模式。

users:允许普通用户挂载和卸载该分区。

owner:将文件系统的所有权交给挂载它的用户。

auto:开机时自动挂载所有列在 /etc/fstab 文件中的文件系统。

noauto:不自动挂载该分区,在需要时手动挂载。

exec:启用二进制程序执行权限。

noexec:禁止二进制程序执行权限。

uid=<value>:将文件系统的所有者设置为指定用户 ID 的用户。

gid=<value>:将文件系统的所有组设置为指定组 ID 的用户组。

umask=<value>:设定默认的文件和目录权限掩码值。

多个选项可以同时使用,以逗号隔开。例如:defaults,noatime,nofail,表示使用默认选项,关闭文件访问时间记录,并在挂载失败时不阻止系统启动。具体支持哪些选项将依赖于您的Linux发行版和内核版本。

上述示例中defaults主要包括以下内容:

rw:读写模式。

suid 和 dev:允许 SUID 标志和设备文件特权。

exec:启用二进制程序执行权限。

auto:自动挂载分区。

nouser:只有 root 用户才能进行挂载和卸载操作。

async:异步 I/O 操作,可提高性能。

atime:记录文件最后访问时间。

例如,如果您想禁用写入权限,可以使用 ro 选项替换掉 rw 选项,如下所示:

UUID=<partition-UUID> <mount-point> <file-system-type> ro,nofail 0 0

第5列,备份频率(Dump Frequency):

与备份程序,dump命令相关的数据。0表示不进行备份。

第6列,检查顺序(Filesystem Check Order):

指定在开机时检查文件系统的顺序。0表示不进行检查。

例如,以下是一个简单的 /etc/fstab 文件示例:

# Device        Mount point       Filesystem type     Options         Dump   Pass
UUID=4f8e246a-5c15-49df-a2b9-8f40b9a7cf87    /       ext4           defaults        1      1
/dev/sda2     /home        ext4          noatime,errors=remount-ro        0       2

第一行表示将 UUID 为 4f8e246a-5c15-49df-a2b9-8f40b9a7cf87 的 ext4 文件系统挂载到根目录下,使用默认选项,并在备份时进行备份。同时指定了该文件系统的检查顺序为 1。

第二行表示将 /dev/sda2 分区的 ext4 文件系统挂载到 /home 目录下,并禁用访问时间记录(noatime),如果发生错误则重新挂载并只允许 root 用户进行挂载和卸载操作,不备份,在系统启动时进行第二级别的检查。

总之,通过修改 fstab 中的配置,您可以实现自动挂载硬盘分区、配置文件系统的读写权限、自动挂载方式等功能。

最后我们来用一个示例总结一下:

UUID=B804-9CBF /mnt/sdb3 exfat defaults,nofail,umask=0000 0 0

上述/etc/fstab 文件中的这一行配置可以将 exFAT 格式的分区自动挂载到 /mnt/sdb3 目录下,具体的配置信息如下:

UUID=B804-9CBF: 表示设备的 UUID,用于唯一标识该分区。您可以通过运行命令 sudo blkid 来查看所有可用块设备和它们的 UUID。

/mnt/sdb3: 表示分区挂载的目录。如果该目录不存在,则需要先创建该目录才能进行挂载操作。

exfat: 表示该分区使用 exFAT 文件系统格式。

defaults,nofail,umask=0000: 表示文件系统的默认挂载选项,包括读写权限、异步 I/O 操作等。此外,还设置了 nofail 参数,以确保即使在挂载失败时也不会阻止系统启动。umask=0000 则禁用了掩码,使得文件和目录的权限可以被设置为最大值。

0 0: 表示备份频率和检查顺序的参数,对于 exFAT 分区来说,这些参数并不适用。

PS:

1,在使用 /etc/fstab 文件自动挂载文件系统时,一定要确保目标挂载点存在,并且您有相应的权限进行挂载。

2,建议在修改 /etc/fstab 文件之前先备份该文件,以免出现意外情况。

3,是defaults 而不是default。
4,指定多个用户或用户组权限可以直接逗号隔开UUID=<partition-UUID> <mount-point> <file-system-type> defaults,nofail,uid=www,gid=hhh,uid=user1,gid=group1 0 0

5,需要所有用户都有读写权限可以直接这么写UUID=<partition-UUID> <mount-point> <file-system-type> defaults,nofail,,umask=0000 0 0

参考链接:armbian等linux系统修改fstab实现开机自动挂载磁盘(详解) - 知乎 (zhihu.com)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/787939.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于投标的细节

第一点&#xff1a; 进来的时候记住到达时间&#xff0c;这个时间只能是个参考。签到表时间填写要符合逻辑性&#xff0c;就是来的比你早的到达时间一定比你的晚&#xff0c;来的比你晚的到达时间一定比你迟。优先考虑的是先后而不是真实到达时间。除非你是第一个填写的 第二点…

如何创建自己的 Spring Boot Starter 并为其编写单元测试

当我们想要封装一些自定义功能给别人使用的时候&#xff0c;创建Spring Boot Starter的形式是最好的实现方式。如果您还不会构建自己的Spring Boot Starter的话&#xff0c;本文将带你一起创建一个自己的Spring Boot Starter。 快速入门 创建一个新的 Maven 项目。第三方封装的…

连接Redis不支持集群错误,ERR This instance has cluster support disabled,解决方案

1. 问题背景 调整redis的配置后&#xff0c;启动程序时&#xff0c; 会报如下错误&#xff1a; [redis://172.16.0.8xxx]: ERR This instance has cluster support disabledSuppressed: io.lettuce.core.RedisCommandExecutionException: ERR This instance has cluster supp…

TypeScript-数组、函数类型

1.数组类型 1.1类型 方括号 let arry:number[][5,2,0,1,3,1,4] 1.2 数组泛型 let arry2:Array<number>[5,2,0,1,3,1,4] 1.3接口类型 interface makeArryRule{[index:number]:number }let arry3:makeArryRule[5,2,0,1,3,1,4] 1.4伪数组 说明&#xff1a; argument…

MyBatis数据库逆向生成工具

使用Mybatis数据库逆向生成工具 1.在pom中引入通用mapper工具 <!-- 通用mapper逆向工具 --><dependency><groupId>tk.mybatis</groupId><artifactId>mapper-spring-boot-starter</artifactId><version>1.2.4</version></d…

苹果安卓双端短视频直播系统源码,带后台-支持二开和采集

搭建教程 1.PHP5.6-7.2 mysql 5.6 redis5.0 nginx1.15 2.宝塔就完全满足了 我刚开了台服务器&#xff0c;建议用阿里云的 我这个是腾讯云 先让服务器 自己装着 时间比较长 3.搭建前需要准备的东西 腾讯云直播、七牛存储、百度语音、腾讯地图等好多东西 七牛存储…

面试算法4/400-乘积小于 K 的子数组

题目 给定一个正整数数组 nums和整数 k &#xff0c;请找出该数组内乘积小于 k 的连续的子数组的个数。 示例 1: 输入: nums [10,5,2,6], k 100 输出: 8 解释: 8 个乘积小于 100 的子数组分别为: [10], [5], [2], [6], [10,5], [5,2], [2,6], [5,2,6]。 需要注意的是 [10,…

Micron FY24 Q2业绩强劲,凭内存实现翻盘

根据TechInsights数据显示&#xff0c;美光科技24财年第二季度业绩强劲&#xff0c;公司通过技术创新和产能优化&#xff0c;成功抓住了AI服务器和其他高性能应用带来的市场需求增长机遇。尽管短期内面临供应紧张的问题&#xff0c;但美光通过加大研发投入和产能转换力度&#…

蓝桥杯算法基础(30):尺取法的应用(hiho字符串),next数组应用(前缀周期性),后缀数组的应用

尺取法应用题hiho字符串 如果一个字符串恰好包含2个h,1个‘1’和1个‘0’&#xff0c;我们就称这个字符串是hiho字符串 例如"oihateher"、“hugeinputhugeoutput”都是hiho字符串 现在给定一个只包含小写字母的字符串S&#xff0c;小H想知道S的所有子串中&#xff0c…

Leetcode 322. 零钱兑换

心路历程&#xff1a; 这道题和上一道完全平方数的和基本上一摸一样&#xff0c;甚至比上一道题还简单&#xff0c;基于dp的建模&#xff1a; 状态&#xff1a;当前的目标总金额 动作&#xff1a;选哪一个硬币 返回值&#xff1a;凑成该目标总金额的最少硬币个数 这道题如果硬…

2024.4.2

模拟面试&#xff1a; 一、GPIO是什么&#xff1f; 答&#xff1a;通用输入输出接口&#xff0c;可以作为单片机和外部设备连接的桥梁。 二、VCC是什么? VCC通常是多少V? 答&#xff1a;电源&#xff0c;通常是3.3V和5V。 三、FreeRTOS任务有几种状态&#xff0c;分别是…

MATLAB科研绘图与学术图表绘制从入门到精通

&#x1f482; 个人网站:【 摸鱼游戏】【神级代码资源网站】【工具大全】&#x1f91f; 一站式轻松构建小程序、Web网站、移动应用&#xff1a;&#x1f449;注册地址&#x1f91f; 基于Web端打造的&#xff1a;&#x1f449;轻量化工具创作平台&#x1f485; 想寻找共同学习交…

二轮电动自行车充电桩开源系统

文章目录 一、产品功能部分截图1.手机端&#xff08;小程序、安卓、ios&#xff09;2.PC端 二、小程序体验账号以及PC后台体验账号1.小程序体验账号2.PC后台体验账号关注公众号获取最新资讯 三、产品简介&#xff1f;1. 充电桩云平台&#xff08;含硬件充电桩&#xff09;&…

`@Autowired`

Autowired 是Spring框架中的一个注解&#xff0c;用于实现依赖注入。当你在一个类的字段、构造函数或方法上使用Autowired注解时&#xff0c;Spring容器会在创建该类实例的过程中自动寻找匹配的bean&#xff0c;并将其注入到相应的位置。 这里是Autowired注解的一些使用场景和…

【xinference】(8):在autodl上,使用xinference部署qwen1.5大模型,速度特别快,同时还支持函数调用,测试成功!

1&#xff0c;关于xinference Xorbits Inference (Xinference) 是一个开源平台&#xff0c;用于简化各种 AI 模型的运行和集成。借助 Xinference&#xff0c;您可以使用任何开源 LLM、嵌入模型和多模态模型在云端或本地环境中运行推理&#xff0c;并创建强大的 AI 应用。 Xor…

外部工具包不要依赖服务的环境变量

1. 前言 虽然这周才过去一天&#xff0c;但自己真的是被bug围住了&#xff0c;果然程序员每天的工作就是在写bug<->解决bug中无限循环。今天遇到了之前给项目写的一个工具包的bug&#xff0c;这个工具包因为需要抽出来给到其他组使用&#xff0c;所以抽成了类工具包的一…

互联网、因特网、万维网的区别

互联网 internet&#xff1a;凡是能彼此通信的设备组成的网络就叫互联网&#xff0c;即使只有两台计算机&#xff0c;无论以何种技术使其彼此通信&#xff0c;都叫互联网。所以&#xff0c;根据互联网的覆盖规模可以分为&#xff1a; 局域网&#xff08;Local Area Network&am…

初学者必看!Python wtforms库让你轻松创建和验证Web表单

1. 什么是WTForms 库? WTForms 是一个 Python 库&#xff0c;用于在 Web 应用程序中创建和验证表单。它提供了一个简单的接口来定义表单字段和验证规则&#xff0c;并将它们呈现为 HTML 表单。WTForms 支持多种 Web 框架&#xff0c;包括 Flask、Django 和 Pyramid。 2. 核心…

NSSCTF Round#20 Basic 真亦假,假亦真 CSDN_To_PDF V1.2 出题笔记 (附wp+源码)

真亦假&#xff0c;假亦真 简介&#xff1a;java伪造php一句话马。实则信息泄露一扫就出&#xff0c;flag在/flag里面。 题目描述&#xff1a;开开心心签个到吧&#xff0c;祝各位师傅们好运~ 静态flag&#xff1a;NSS{Checkin_h4v3_4_g00D_tINNe!} /路由显示 <?php e…

【MyBatis】MyBatis的日志实现

目录 一、日志演变 二、MyBatis中实现日志管理 1.导入pom依赖 2.添加logback配置文件 3.日志打印 三、MyBatis日志技术实现原理 3.1 初始化 3.2 具体实现类 3.3 自己模拟实现mybaits的日志实现 四、架构系统如何考虑日志 一、日志演变 JDK 1.4之前 没有任何的日志框…