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

【Ubuntu与Linux操作系统:五、文件与目录管理】

第5章 磁盘存储管理


5.1 Linux磁盘存储概述

磁盘存储是Linux系统存储数据的重要组件,它通过分区和文件系统组织和管理数据。Linux支持多种文件系统,如ext4xfsbtrfs,并以块的形式管理存储设备。

1. 分区与文件系统

  • 分区:磁盘被分割为多个逻辑块,每块可以单独管理和格式化。分区类型包括主分区、扩展分区和逻辑分区。
  • 文件系统:文件系统定义了数据在磁盘上的组织方式。常见的文件系统有ext4(默认)、FAT32(跨平台)等。

2. 磁盘设备命名规则

  • 磁盘设备在Linux系统中以/dev目录表示,例如/dev/sda代表第一块SATA硬盘。
  • 分区以数字标识,例如/dev/sda1表示第一个分区。

3. Linux中的存储抽象

  • 挂载点:文件系统需要挂载到目录才能使用,例如挂载根文件系统到/
  • 虚拟文件系统(VFS):提供文件系统的统一接口,使不同文件系统在用户看来一致。

磁盘存储管理是系统维护的核心,影响到数据存储的安全性和效率。


5.2 使用命令行工具管理磁盘分区和文件系统

在Linux中,命令行工具是磁盘管理的主要方式。常用工具包括fdiskpartedmkfs

1. 使用fdisk管理分区

  • 查看磁盘信息:

    sudo fdisk -l
    
  • 创建新分区:

    sudo fdisk /dev/sda
    

    按照提示输入命令(如n创建分区,w保存修改)。

2. 使用parted管理分区

  • 启动parted工具:

    sudo parted /dev/sda
    
  • 创建分区:

    mklabel gpt
    mkpart primary ext4 0% 50%
    

3. 创建文件系统

  • 格式化分区:

    sudo mkfs.ext4 /dev/sda1
    

4. 检查和修复文件系统

  • 检查文件系统:

    sudo fsck /dev/sda1
    
  • 修复文件系统:
    添加-y选项自动修复错误。

命令行工具提供灵活的磁盘分区和文件系统管理方式,适合服务器环境和高级用户。


5.3 使用图形界面工具管理磁盘分区和文件系统

在桌面版Linux系统中,图形化工具使磁盘管理更直观。Ubuntu提供的磁盘管理工具是Gnome Disks,也称“磁盘”应用。

1. 打开磁盘工具

  • 从“活动”搜索栏搜索“磁盘”,打开图形化磁盘管理器。

2. 查看磁盘信息

  • 磁盘工具显示所有磁盘及其分区信息,包括大小、类型和挂载点。

3. 管理分区

  • 创建分区:选择目标磁盘,点击“+”按钮,指定分区大小和类型(如ext4)。
  • 格式化分区:选择分区后点击“格式化”,设置文件系统类型。
  • 删除分区:点击“-”按钮移除分区。

4. 挂载和卸载分区

  • 挂载分区:选择分区并点击“挂载”。
  • 卸载分区:选择分区并点击“卸载”。

图形化工具适合初学者,但在高级场景中可能需要配合命令行工具。


5.4 挂载和使用外部存储设备

外部存储设备(如U盘、移动硬盘)是数据交换的重要工具。在Linux中,这些设备需要挂载后才能使用。

1. 自动挂载

  • 插入设备后,Ubuntu会自动识别并挂载到/media/用户名/路径下。文件管理器会显示设备图标,可直接访问。

2. 手动挂载

  • 查看设备:

    lsblk
    
  • 创建挂载点:

    sudo mkdir /mnt/mydisk
    
  • 挂载设备:

    sudo mount /dev/sdb1 /mnt/mydisk
    
  • 卸载设备:

    sudo umount /mnt/mydisk
    

3. 配置永久挂载

  • 编辑/etc/fstab文件,将设备信息写入:

    /dev/sdb1 /mnt/mydisk ext4 defaults 0 0
    

正确挂载外部设备能保证数据的读写安全,并避免硬件损坏。


5.5 文件系统的备份

数据备份是保障数据安全的关键操作。在Linux中,可以通过多种工具和策略完成备份。

1. 基本备份工具

  • cp命令:适合小规模备份:

    cp -r 源目录 目标目录
    
  • rsync工具:高效的增量备份工具:

    rsync -av --progress 源目录 目标目录
    

    使用--delete选项可以同步删除目标中多余的文件。

2. 压缩备份

  • 使用tar压缩目录:

    tar -czvf 备份文件.tar.gz 源目录
    

3. 备份策略

  • 完全备份:定期备份所有数据,安全但占用存储空间。
  • 增量备份:仅备份自上次备份以来修改的文件,节省空间但恢复时需逐步应用备份。

制定合理的备份计划,定期测试备份数据,是避免数据丢失的重要保障。

相关文章:

【Ubuntu与Linux操作系统:五、文件与目录管理】

第5章 磁盘存储管理 5.1 Linux磁盘存储概述 磁盘存储是Linux系统存储数据的重要组件,它通过分区和文件系统组织和管理数据。Linux支持多种文件系统,如ext4、xfs和btrfs,并以块的形式管理存储设备。 1. 分区与文件系统: 分区&am…...

32_Redis分片集群原理

1.Redis集群分片 1.1 Redis集群分片介绍 Redis集群没有使用一致性hash,而是引入了哈希槽的概念。Redis集群有16384个哈希槽,每个key通过CRC16校验后对16384取模来决定放置哪个槽。 用于将密钥映射到散列插槽的基本算法如下: HASH_SLOT = CRC16(key) mod 16384 集群的每…...

微信小程序mp3音频播放组件,仅需传入url即可

// index.js // packageChat/components/audio-player/index.js Component({/*** 组件的属性列表*/properties: {/*** MP3 文件的 URL*/src: {type: String,value: ,observer(newVal, oldVal) {if (newVal ! oldVal && newVal) {// 如果 InnerAudioContext 已存在&…...

Sql 创建用户

Sql server 创建用户 Sql server 创建用户SQL MI 创建用户修改其他用户密码 Sql server 创建用户 在对应的数据库执行,该用户得到该库的所有权限 test.database.chinacloudapi.cn DB–01 DB–02 创建服务器登录用户 CREATE LOGIN test WITH PASSWORD zDgXI7rsafkak…...

数据结构:LinkedList与链表—面试题(三)

目录 1、移除链表元素 2、反转链表 3、链表的中间结点 4、返回倒数第k个结点 5、合并两个有序链表 1、移除链表元素 习题链接https://leetcode.cn/problems/remove-linked-list-elements/description/ 描述:给你一个链表的头节点 head 和一个整数 val &#xff…...

【开发日记】Docker修改国内镜像源

1、问题: docker pull镜像时提示以下内容: Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)2、解决 ①…...

Elasticsarch:使用全文搜索在 ES|QL 中进行过滤 - 8.17

8.17 在 ES|QL 中引入了 match 和 qstr 函数,可用于执行全文过滤。本文介绍了它们的作用、使用方法、与现有文本过滤方法的区别、当前的限制以及未来的改进。 ES|QL 现在包含全文函数,可用于使用文本查询过滤数据。我们将回顾可用的文本过滤方法&#xf…...

第432场周赛:跳过交替单元格的之字形遍历、机器人可以获得的最大金币数、图的最大边权的最小值、统计 K 次操作以内得到非递减子数组的数目

Q1、跳过交替单元格的之字形遍历 1、题目描述 给你一个 m x n 的二维数组 grid,数组由 正整数 组成。 你的任务是以 之字形 遍历 grid,同时跳过每个 交替 的单元格。 之字形遍历的定义如下: 从左上角的单元格 (0, 0) 开始。在当前行中向…...

RK3399开发板Linux实时性改造

本次测试基于NanoPC-T4开发板(国产化处理器RK3399),4.19.111内核Xenomai实时性改造测试。 Xenomai下载网站:https://xenomai.org/downloads/ NanoPC-T4网站:https://wiki.friendlyarm.com/wiki/index.php/NanoPC-T4/z…...

青少年编程与数学 02-006 前端开发框架VUE 22课题、状态管理

青少年编程与数学 02-006 前端开发框架VUE 22课题、状态管理 一、状态管理二、Vuex1. 安装Vuex2. 创建Vuex Store3. 在Vue应用中使用Store4. 在组件中使用状态5. 模块化Store 三、Vuex应用示例1. 创建项目2. 安装Vuex3. 设置Vuex Store4. 在主项目中使用Store5. 创建组件6. 更新…...

Linux 内核中的 netif_start_queue 函数:启动网络接口发送队列的关键

在 Linux 内核的网络子系统中,netif_start_queue 函数扮演着至关重要的角色。这个函数的主要功能是启动(或启用)网络接口的发送队列,标志着网络接口已经准备好开始发送数据包。本文将深入探讨 netif_start_queue 函数的用途、工作原理以及在实际网络驱动代码中的应用。 函…...

数据结构之顺序结构二叉树(超详解)

文章目录 1 树1.1 树的概念与结构1.2 相关术语1.3 树的表示与运用场景1.3.1 运用场景 2. 二叉树2.1 概念与结构2.1.1 满二叉树2.1.2 完全二叉树 3. 顺序结构二叉树3.1 堆的引入3.1.1 概念与结构 3.2 功能实现3.2.1 堆的结构3.2.2 初始化、销毁 3.3 堆的插入数据3.3.1 向上调整算…...

acwing_5722_十滴水

acwing_5722_十滴水 下面这篇大佬的题解属实是把指针用明白了&#xff0c;可以好好理解一下&#xff1a; 原题解连接&#xff1a;AcWing 5722. 一个简单模拟实现 - AcWing map/unordered_map的用法:见收藏夹 #include<iostream> #include<unordered_map> #incl…...

acwing-3194 最大的矩形

acwing-3194 最大的矩形 这个题程序设计课上有讲过&#xff0c; 平民算法&#xff0c;时间复杂度在 O ( n 2 ) O(n^2) O(n2) // // Created by HUAWEI on 2024/10/28. // #include<iostream>using namespace std;const int Max_size 1e4 20;int N; int h[Max_size];…...

UnityDemo-TheBrave-制作笔记

这是我跟着b站up主MStudio的视频学习制作的&#xff0c;大体上没有去做一些更新的东西&#xff0c;这里只是一个总的总结。在文章的最后&#xff0c;我会放上可以游玩该游戏的链接和exe可执行文件&#xff0c;不过没有对游戏内容进行什么加工&#xff0c;只有基本的功能实现罢了…...

玩转 JMeter:Random Order Controller让测试“乱”出花样

嘿&#xff0c;各位性能测试的小伙伴们&#xff01;今天咱要来唠唠 JMeter 里超级有趣又超实用的 Random Order Controller&#xff08;随机顺序控制器&#xff09;&#xff0c;它就像是性能测试这场大戏里的“魔术棒”&#xff0c;轻轻一挥&#xff0c;就能让测试场景变得千变…...

VTK知识学习(33)-交互问题2

1、前言 主要是针对前面有过实现不了交互的情况进行说明&#xff0c;经过一些尝试和分析调用API&#xff0c;总算实现RenderWindowControl函数回调正常串接&#xff0c;当然这个移动处理事件的效果目前也没有确认。 2、使用 vtkImageReslice reslice vtkImageReslice.New();p…...

Centos9-SSH免密登录配置-修改22端口-关闭密码登录-提高安全性

Centos9-SSH免密登录配置-修改22端口-关闭密码登录 生成秘钥对将公钥信息存进authorized_keys测试登录查询访问记录、比对指纹更换22访问端口关闭账号密码登录生成秘钥对 生成密钥对,指定 备注 和 文件目录命令执行后,默认两次回车,不设置秘钥使用密码ssh-keygen -t rsa -b …...

SqlServer: An expression services limit has been reached异常处理

在工作中遇到一个问题&#xff0c;因为项目很老&#xff0c;代码很不规范&#xff0c;出现一种场景&#xff1a; 查询所有客户(5w条以上)&#xff0c;然后根据客户Id&#xff0c;再去其他表查询&#xff0c;代码中是直接将customerId拼接到sql中去查询&#xff0c;形成的sql如…...

CentOS下安装Docker

Docker 必须要在Linux环境下才能运行&#xff0c;windows下运行也是安装虚拟机后才能下载安装运行&#xff0c;菜鸟教程 下载安装 linux 依次执行下边步骤 更新 yum yum update 卸载旧的Docker yum remove docker docker-client docker-client-latest docker-common doc…...

【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15

缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下&#xff1a; struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...

使用VSCode开发Django指南

使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架&#xff0c;专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用&#xff0c;其中包含三个使用通用基本模板的页面。在此…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望

文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例&#xff1a;使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例&#xff1a;使用OpenAI GPT-3进…...

电脑插入多块移动硬盘后经常出现卡顿和蓝屏

当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时&#xff0c;可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案&#xff1a; 1. 检查电源供电问题 问题原因&#xff1a;多块移动硬盘同时运行可能导致USB接口供电不足&#x…...

【单片机期末】单片机系统设计

主要内容&#xff1a;系统状态机&#xff0c;系统时基&#xff0c;系统需求分析&#xff0c;系统构建&#xff0c;系统状态流图 一、题目要求 二、绘制系统状态流图 题目&#xff1a;根据上述描述绘制系统状态流图&#xff0c;注明状态转移条件及方向。 三、利用定时器产生时…...

C++.OpenGL (14/64)多光源(Multiple Lights)

多光源(Multiple Lights) 多光源渲染技术概览 #mermaid-svg-3L5e5gGn76TNh7Lq {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3L5e5gGn76TNh7Lq .error-icon{fill:#552222;}#mermaid-svg-3L5e5gGn76TNh7Lq .erro…...

【JavaSE】多线程基础学习笔记

多线程基础 -线程相关概念 程序&#xff08;Program&#xff09; 是为完成特定任务、用某种语言编写的一组指令的集合简单的说:就是我们写的代码 进程 进程是指运行中的程序&#xff0c;比如我们使用QQ&#xff0c;就启动了一个进程&#xff0c;操作系统就会为该进程分配内存…...

redis和redission的区别

Redis 和 Redisson 是两个密切相关但又本质不同的技术&#xff0c;它们扮演着完全不同的角色&#xff1a; Redis: 内存数据库/数据结构存储 本质&#xff1a; 它是一个开源的、高性能的、基于内存的 键值存储数据库。它也可以将数据持久化到磁盘。 核心功能&#xff1a; 提供丰…...

Docker拉取MySQL后数据库连接失败的解决方案

在使用Docker部署MySQL时&#xff0c;拉取并启动容器后&#xff0c;有时可能会遇到数据库连接失败的问题。这种问题可能由多种原因导致&#xff0c;包括配置错误、网络设置问题、权限问题等。本文将分析可能的原因&#xff0c;并提供解决方案。 一、确认MySQL容器的运行状态 …...

SpringAI实战:ChatModel智能对话全解

一、引言&#xff1a;Spring AI 与 Chat Model 的核心价值 &#x1f680; 在 Java 生态中集成大模型能力&#xff0c;Spring AI 提供了高效的解决方案 &#x1f916;。其中 Chat Model 作为核心交互组件&#xff0c;通过标准化接口简化了与大语言模型&#xff08;LLM&#xff0…...