【Linux】存储

声明:以下内容均来学习自《Linux就该这么学》一书

Linux系统中的一切文件都是从"根(/)"目录开始的,并按照文件系统层次化标准(FHS)采用树形结构来存放文件,以及定义了常见目录的用途。此外,Linux系统中的文件和目录名称对大小写敏感。

1、Linux系统中常见目录名称及作用

|-----------------|-----------------------------------|
| /boot | 开机所需文件------内核、开机菜单以及所需配置文件等 |
| /dev | 以文件形式存放任何设备与接口 |
| /etc | 配置文件 |
| /home | 用户家目录 |
| /bin | 存放单用户模式下还可以操作的命令 |
| /lib | 开机时用到的函数库,以及/bin与/sbin下面的命令要调用的函数 |
| /sbin | 开机过程中需要的命令 |
| /media | 用于挂载设备文件的目录 |
| /opt | 放置第三方的软件 |
| /root | 系统管理员的家目录 |
| /srv | 一些网络服务的数据文件目录 |
| /tmp | 任何人都可以使用的"共享"临时目录 |
| /proc | 虚拟文件系统,例如系统内核、进程、外部设备及网络状态等 |
| /usr/local | 用户自行安装的软件 |
| /usr/sbin | Linux系统开机时不会使用到的软件/命令/脚本 |
| /usr/share | 帮助与说明文件,也可放置共享文件 |
| /var | 主要存放经常变化的文件,如日志 |
| /lost+found | 当文件系统发生错误时,将一些丢失的文件片段存放在这里 |
[Linux中常见目录名称及作用]

2、挂载mount

当用户需要使用硬盘设备或分区中的数据时,需要先将其与一个已存在的目录文件进行关联,这个关联的动作就是"挂载"。挂载是在使用硬件设备前所执行的最后一步操作,只需使用mount命令把硬盘设备或分区与一个目录文件进行关联,然后就能在这个目录中看到硬件设备中的数据了。

mount用于挂载文件系统:mount 文件系统 挂载目录

|--------|-------------------------|
| -a | 挂载所有在/etc/fstab中定义的文件系统 |
| -t | 指定文件系统的类型 |
[mount参数及作用]

-a 参数会在执行挂载后自动检查/etc/fstab文件中有无疏漏被挂载的设备文件,如果有,则进行自动挂载操作。

bash 复制代码
# 将设备/dev/sdb2挂载到/backup目录下
mount /dev/sdb2 /backup

上述方法在重启后挂载就会失效。如果想让硬件设备和目录永久地进行自动关联,就必须把挂载信息按照指定的填写格式:设备文件 挂载目录 格式类型 权限选项 是否备份 是否自检 写入到/etc/fstab文件中。

|----------|-------------------------------------------------------------|
| 设备文件 | 一般为设备的路径+设备名称,也可以写唯一识别码(UUID,Universally Unique Identifier) |
| 挂载目录 | 指定要挂载的目录,需要在挂载前创建好 |
| 格式类型 | 指定文件系统的格式,比如Ext3、Ext4、XFS、SWAP、iso9600等 |
| 权限选项 | 若设置为defaults,则默认权限为:rw、suid、dev、exec、auto、nouser、async |
| 是否备份 | 若为1则开机后使用dnmp进行磁盘备份,为0则不备份 |
| 是否自检 | 若为1则开机后进行磁盘自检,为0则不自检 |
[用于挂载信息各字段所表示的意义]

3、umount

用于撤销已经挂载的设备文件:unmount [挂载点/设备文件]。

bash 复制代码
umount /dev/sdb2

4、fdisk

用于管理磁盘分区:fdisk [磁盘名称]。它提供了添加、删除、转换分区等功能于一身的"一站式分区服务"。与直接写到命令后面的参数不同,这条命令的参数是交互式的。

|-------|-------------|
| m | 查看全部可用的参数 |
| n | 添加新的分区 |
| d | 删除某个分区信息 |
| l | 列出所有可用的分区类型 |
| t | 改变某个分区的类型 |
| p | 查看分区信息 |
| w | 保存并退出 |
| q | 不保存直接退出 |
[fdisk参数及作用]

5、df -h

用于查看挂载状态和硬盘使用量信息。

相关推荐
ALex_zry1 分钟前
跨Linux发行版CPU指令集兼容性深度解析与实践指南
linux·运维·服务器
特立独行的猫a17 分钟前
redis客户端库redis++在嵌入式Linux下的交叉编译及使用
linux·数据库·c++·redis·redis客户端库
无敌小茶43 分钟前
Linux学习笔记之环境变量
linux·笔记
Harbor Lau1 小时前
Linux常用中间件命令大全
linux·运维·中间件
漫谈网络1 小时前
基于 Netmiko 的网络设备自动化操作
运维·自动化·netdevops·netmiko
꧁坚持很酷꧂2 小时前
Linux Ubuntu18.04下安装Qt Craeator 5.12.9(图文详解)
linux·运维·qt
凉、介2 小时前
PCI 总线学习笔记(五)
android·linux·笔记·学习·pcie·pci
电鱼智能的电小鱼2 小时前
EFISH-SBC-RK3588无人机地面基准站项目
linux·网络·嵌入式硬件·机器人·无人机·边缘计算
电鱼智能的电小鱼2 小时前
基于 EFISH-SBC-RK3588 的无人机环境感知与数据采集方案
linux·网络·嵌入式硬件·数码相机·无人机·边缘计算
小诸葛的博客3 小时前
详解Linux中的定时任务管理工具crond
linux·运维·chrome