当前位置: 首页 > article >正文

linux命令详解,存储管理相关

存储管理

一、内存使用量,free

free 命令是一个用于显示系统中物理内存(RAM)和交换空间(swap)使用情况的工具

free -m
free -m -s 5

参数
-b

  • 功能: 以字节(bytes)为单位显示内存使用情况。
  • 说明: 这个选项适用于需要精确到字节的情况。
    -k
  • 功能: 以千字节(kilobytes,KB)为单位显示内存使用情况。
  • 说明: 这是 free 命令的默认单位,适用于大多数情况。
    -m
  • 功能: 以兆字节(megabytes,MB)为单位显示内存使用情况。
  • 说明: 适用于需要以更大的单位显示内存使用情况的情况。
    -g
  • 功能: 以千兆字节(gigabytes,GB)为单位显示内存使用情况。
  • 说明: 适用于内存容量较大的系统,以更简洁的方式显示内存使用情况。
    -h
  • 功能: 以人类可读的格式显示内存使用情况,自动选择合适的单位(KB、MB、GB)。
  • 说明: 这个选项会根据内存的实际大小自动选择最合适的单位,使输出更易于阅读。
    -l
  • 功能: 显示低内存(low memory)和高内存(high memory)的使用情况。
  • 说明: 主要用于 32 位系统,现代 64 位系统通常不需要这个选项。低内存是指可以直接由内核管理的内存,高内存是指需要通过ZONE_HIGHMEM管理的内存。
    -s <interval>
  • 功能: 持续显示内存使用情况,每隔指定的时间间隔(秒)显示一次。
  • 说明: 适用于需要实时监控内存使用情况的场景。
    -t
  • 功能: 在输出中添加一行总结,显示总内存、已用内存、空闲内存、共享内存、缓冲区和缓存。
  • 说明: 这个选项会在输出的末尾添加一行总结,方便快速查看总体内存使用情况。
    -o
  • 功能: 不显示缓冲区和缓存的内存使用情况。
  • 说明: 适用于只需要查看基本内存使用情况,而不关心缓冲区和缓存的情况。
    -V
  • 功能: 显示 free 命令的版本信息。
  • 说明: 适用于需要检查 free 命令版本的情况。
    image.png
    结果解释
  • 物理内存:
    • 总量:3888 MB
    • 已用:1108 MB
    • 空闲:2327 MB
    • 共享:12 MB
    • 缓冲/缓存:685 MB
    • 可用:2779 MB
  • 交换空间:
    • 总量:974 MB
    • 已用:0 MB
    • 空闲:974 MB

二、磁盘使用量,df

df 命令用于显示文件系统的磁盘空间使用情况

df
df -hT
  • 显示文件系统的磁盘使用情况,并以人类可读的格式(自动选择合适的单位 KB、MB、GB)显示,同时显示每个文件系统的类型
    参数
    参数和free命令类似,没有-b(以字节为单位)参数,多了一些其他参数,比如-T(显示每个系统文件的类型)
    -k
  • 功能: 以千字节(1K 字节)为单位显示磁盘使用情况。
  • 说明: 这是默认的单位,但明确指定 -k 可以确保输出单位一致。
    -m
  • 功能: 以兆字节(1M 字节)为单位显示磁盘使用情况。
  • 说明: 适用于需要以更大的单位显示磁盘使用情况的情况。
    -h
  • 功能: 以人类可读的格式显示磁盘使用情况,自动选择合适的单位(KB、MB、GB)。
  • 说明: 这个选项会根据磁盘的实际大小自动选择最合适的单位,使输出更易于阅读。
    -B <size>
  • 功能: 以指定的块大小显示磁盘使用情况。
  • 说明<size> 可以是 1(字节)、1K(千字节)、1M(兆字节)等。
    -T
  • 功能: 在输出中添加一列,显示每个文件系统的类型(例如 ext4、xfs、btrfs 等)。
  • 说明: 适用于需要查看文件系统类型的场景。
    -P
  • 功能: 以 POSIX 格式输出,不显示标题行。
  • 说明: 适用于需要标准格式输出的脚本或自动化任务。
    -a
  • 功能: 显示所有文件系统,包括那些通常不显示的 dummy 文件系统。
  • 说明: 适用于需要查看所有文件系统的详细信息的情况。
    -x <filesystem_type>
  • 功能: 排除指定类型的文件系统。
  • 说明: 例如,排除 tmpfs 文件系统。
    -t <filesystem_type>
  • 功能: 只显示指定类型的文件系统。
  • 说明: 例如,只显示 ext4 文件系统。
    -l
  • 功能: 只显示本地文件系统。
  • 说明: 适用于需要区分本地和网络文件系统的情况。
    -i
  • 功能: 显示 inode 信息而不是块使用情况。
  • 说明: 适用于需要查看文件系统中 inode 使用情况的情况。
    -h --si
  • 功能: 以人类可读的格式显示磁盘使用情况,使用 1000 为基数(而不是 1024)。
  • 说明: 适用于需要符合国际单位制的情况。
    -x <filesystem_type> -t <filesystem_type>
  • 功能: 结合使用 -x 和 -t 选项,可以同时排除和包含特定类型的文件系统。
  • 说明: 例如,排除 tmpfs 文件系统,只显示 ext4 文件系统。
    image.png

三、文件或目录大小,du

du 命令用于显示文件和目录的磁盘使用情况。它可以递归地显示目录下每个文件和子目录的大小,也可以显示单个文件的大小。

sudo du ./* -hsc

参数
-k

  • 功能: 以千字节(1K 字节)为单位显示磁盘使用情况。
  • 说明: 这是默认的单位,但明确指定 -k 可以确保输出单位一致。
    -m
  • 功能: 以兆字节(1M 字节)为单位显示磁盘使用情况。
  • 说明: 适用于需要以更大的单位显示磁盘使用情况的情况。
    -h
  • 功能: 以人类可读的格式显示磁盘使用情况,自动选择合适的单位(KB、MB、GB)。
  • 说明: 这个选项会根据磁盘的实际大小自动选择最合适的单位,使输出更易于阅读。
    -b
  • 功能: 以字节为单位显示磁盘使用情况。
  • 说明: 适用于需要精确到字节的情况。
    -s
  • 功能: 显示总和,不显示每个文件和子目录的详细信息。
  • 说明: 适用于只需要知道总磁盘使用情况的情况。
    -a
  • 功能: 显示所有文件和目录,包括隐藏文件和目录。
  • 说明: 适用于需要查看所有文件和目录的详细信息的情况。
    -d <depth>
  • 功能: 限制递归的深度。
  • 说明<depth> 是一个整数,表示递归的层数。例如,-d 1 只显示当前目录下的子目录。
    -S
  • 功能: 显示每个目录的大小,不包括子目录的大小。
  • 说明: 适用于需要单独查看每个目录的大小的情况。
    -c
  • 功能: 在输出中添加一行总结,显示总磁盘使用情况。
  • 说明: 适用于需要查看总和的情况。
    --exclude=<pattern>
  • 功能: 排除匹配特定模式的文件或目录。
  • 说明<pattern> 是一个通配符模式,例如 *.log 会排除所有 .log 文件。
    -x
  • 功能: 仅显示同一文件系统上的文件和目录。
  • 说明: 适用于需要区分不同文件系统的情况。
    -l
  • 功能: 计算所有文件,即使它们有多个硬链接。
  • 说明: 适用于需要准确计算所有文件大小的情况,即使有硬链接。
    -H
  • 功能: 以 1000 为基数(而不是 1024)显示人类可读的格式。
  • 说明: 适用于需要符合国际单位制的情况。
    -L
  • 功能: 跟踪符号链接指向的文件。
  • 说明: 适用于需要计算符号链接指向的文件的实际大小的情况。
    -X <file>
  • 功能: 从指定文件中读取排除模式。
  • 说明<file> 是一个包含排除模式的文件,每行一个模式。
    image.png

五、挂载分区,mount

mount 命令用于将文件系统(如硬盘分区、USB驱动器、网络文件系统等)挂载到指定的挂载点,使其可以被访问,一般需要root权限

mount 显示挂载信息

image.png

sudo mount <device> <mount_point>

sudo mount /dev/sdb1 /mnt/usb
  • sudo: 以超级用户权限执行 mount 命令。
  • mount: 将文件系统挂载到指定的挂载点。
  • /dev/sdb1: 要挂载的设备,通常是硬盘或USB驱动器的分区。
  • /mnt/usb: 挂载点,即设备将被挂载到的目录。
    参数
    -t <type>
  • 功能: 指定文件系统的类型。
  • 说明: 用于指定要挂载的文件系统的类型,例如 ext4ntfsvfat 等。
    -o <options>
  • 功能: 指定挂载选项。
  • 说明: 用于指定挂载时的各种选项,常见的挂载选项包括:
    • ro: 以只读方式挂载。
    • rw: 以读写方式挂载。
    • noexec: 不允许在挂载点上执行文件。
    • nosuid: 忽略文件的 setuid 和 setgid 位。
    • nodev: 不允许访问设备文件。
    • sync: 以同步方式写入数据。
    • async: 以异步方式写入数据。
    • uid=<user_id>: 指定文件系统的拥有者。
    • gid=<group_id>: 指定文件系统的所属组。
    • umask=<mask>: 设置文件系统的权限掩码。
    • fmask=<mask>: 设置文件的权限掩码。
    • dmask=<mask>: 设置目录的权限掩码。
    • codepage=<codepage>: 指定代码页(主要用于 FAT 文件系统)。
    • iocharset=<charset>: 指定字符集(主要用于 FAT 文件系统)。
    • shortname=<mode>: 设置短文件名模式(主要用于 FAT 文件系统)。
    • utf8: 使用 UTF-8 编码(主要用于 FAT 文件系统)。
    • errors=<mode>: 指定错误处理模式,例如 errors=remount-ro(出错时重新以只读方式挂载)。
      -a
  • 功能: 挂载 /etc/fstab 文件中定义的所有文件系统。
  • 说明: 适用于需要一次性挂载所有配置文件中定义的文件系统的情况。
    -v
  • 功能: 显示详细信息。
  • 说明: 适用于需要查看挂载过程中的详细信息的情况。
    -r
  • 功能: 以只读方式挂载文件系统。
  • 说明: 等同于 -o ro
    -w
  • 功能: 以读写方式挂载文件系统。
  • 说明: 等同于 -o rw
    -L <label>
  • 功能: 按标签挂载文件系统。
  • 说明: 适用于需要按文件系统的标签(label)挂载的情况。
    -U <uuid>
  • 功能: 按 UUID 挂载文件系统。
  • 说明: 适用于需要按文件系统的 UUID 挂载的情况。
    -n
  • 功能: 不使用 /etc/mtab 文件记录挂载信息。
  • 说明: 适用于需要临时挂载且不希望记录到 /etc/mtab 的情况。
    -R
  • 功能: 递归挂载文件系统。
  • 说明: 适用于需要递归挂载文件系统及其子文件系统的情况。
    -i
  • 功能: 不执行任何实际操作,仅显示将要执行的挂载命令。
  • 说明: 适用于需要模拟挂载操作的情况。
    -f
  • 功能: 强制挂载,即使设备不可用也尝试挂载。
  • 说明: 适用于需要强制挂载的情况。
    -F <file>
  • 功能: 从指定文件中读取挂载选项。
  • 说明: 适用于需要从文件中读取挂载选项的情况。

http://www.kler.cn/a/393240.html

相关文章:

  • EasyPoi 使用$fe:模板语法生成Word动态行
  • Websocket客户端从Openai Realtime api Sever只收到部分数据问题分析
  • 图解HTTP-HTTP状态码
  • Windows脚本命令与Linux Bash脚本命令
  • USDZ格式轻松转OBJ
  • Zerotier + VSCode远程连接实验室的服务器、Xshell连接远程服务器
  • 排序算法 -堆排序
  • SQL面试题——奔驰SQL面试题 车辆在不同驾驶模式下的时间
  • 学Linux的第八天
  • 数字IC实践项目(10)—基于System Verilog的DDR4 Model/Tb 及基础Verification IP的设计与验证(付费项目)
  • uniapp 上传 base64 图片
  • ubuntu22.04上手指南(更新阿里源、安装ssh、安装chrome、设置固定IP、安装搜狗输入法)
  • 【二叉搜素树】——LeetCode二叉树问题集锦:6个实用题目和解题思路
  • 除了 Postman,还有什么好用的 API 测试工具吗
  • uni-app中使用 unicloud 云开发平台③
  • C++生成随机数
  • 信用租赁系统的灵活配置与智能化管理助力租赁市场发展
  • 29系统备份与恢复
  • 深入理解 Vue v-model 原理与应用
  • 量化交易系统开发-实时行情自动化交易-4.1.1.A股趋势跟踪交易策略实现
  • 批量缓存模版
  • 基于yolov5的番茄成熟度检测系统,支持图像、视频和摄像实时检测【pytorch框架、python源码】
  • 【前端篇】Node.js 版本管理新选择:Volta,让版本切换更简单
  • OpenGL 进阶系列07 - 阴影贴图(shadowmap )
  • 【深度学习】使用硬件加速模型训练速度
  • Scala可变List