Deepin基本环境查看(四)【硬盘/分区、文件系统、硬连接/软连接】
Linux操作系统(Deepin、Ubuntu)操作系统中,硬盘分区的管理与Windows操作系统不同;
在Linux系统中维护着一个统一的文件目录体系,而硬盘和分区是以资源的形式由操作系统挂接和调度;此外Linux系统中连接(硬连接/软连接/别名)到处都是,需要对其有一定的理解;
以下对Linux系统的硬盘/分区和文件目录体系以及连接分别进行说明。
- 硬盘/分区和文件目录体系
Linux中的磁盘和Window系统一样,都属于物理存储设备,都需要进行分区之后再使用。但是硬盘【或移动硬盘、U盘等】插入并识别成功后,是不可能点开移动硬盘的盘符来进行访问的。如下图所示,Deepin的“计算机”能看到硬盘但不能到分区盘符;

Linux的文件目录体系就像是一个完整的世界;需要在Linux系统的文件目录体系中开辟挂载点,将硬盘的分区挂接到这个世界的入口【挂载点】,才能通过这个挂载点来访问硬盘分区。所以Linux系统的一个文件夹下面,可以挂接多个硬盘分区,剩余的空间为这几个硬盘分区剩余空间之和。如下图所示:

所有在Linux系统挂接的存储设备,都是在/dev/这个位置下面【这个位置不能像文件夹一样访问】,比如第一块硬盘一般是/dev/sda,第二块硬盘一般是/dev/sdb;【相关文章:Deepin/Ubuntu第二块硬盘配置管理】
- 查看磁盘和分区
lsblk # 列出块设备的信息,如硬盘、分区等
# 执行结果 sda1即为第一块硬盘的第一个分区
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 100G 0 disk
├─sda1 8:1 0 1.5G 0 part /boot
├─sda2 8:2 0 1K 0 part
......sudo fdisk -l # 查看磁盘分区表, 也可以用fdisk来对硬盘进行分区操作
# 执行结果
Disk /dev/sda: 100 GiB, 107374182400 bytes, 209715200 sectors
......
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 3147775 3145728 1.5G 83 Linux
/dev/sda2 3147776 174063615 170915840 81.5G 5 Extended
......
- 查看
Linux文件目录体系
df # 显示已挂载的磁盘的文件系统使用情况
# 执行结果 挂载点即为文件目录体系,其中/dev是不可使用的
文件系统 1K-块 已用 可用 已用% 挂载点
udev 1947292 0 1947292 0% /dev
tmpfs 399020 3216 395804 1% /run
/dev/sda5 30786468 9049016 20148256 31% /
......df -h # 以人类易读的格式显示已挂载的磁盘的文件系统使用情况
# 执行结果 挂载点即为文件目录体系,其中/dev是不可使用的
文件系统 容量 已用 可用 已用% 挂载点
udev 1.9G 0 1.9G 0% /dev
tmpfs 390M 3.2M 387M 1% /run
/dev/sda5 30G 8.7G 20G 31% /
......
- 将硬盘分区挂接到
Linux文件目录体系
# 创建挂载点
sudo mkdir /mnt/sdb # 创建挂载点/mnt/sdb
sudo mount /dev/sdb /mnt/sdb # 将/dev/sdb挂接到挂载点,接下来可以在目录/mnt/sdb中访问了【第二块硬盘只有一个分区】
sudo unmount /mnt/sdb # 将挂载点离线,硬盘分区就不可访问了
# 冷知识:如果在/mnt/sdb/下有文件的情况下,将硬盘分区挂接到/mnt/sdb,则这个目录原始的文件将会“隐身”
# 只有将挂载点/mnt/sdb/离线,才能从文件系统再访问到喔
Linux文件目录体系基本操作
# 创建和删除文件夹
mkdir test # 创建文件夹
rmdir test # 删除空文件夹
rm -r test # 删除文件夹【无论是否空】# 文件复制和移动、改名、删除
cp test.dat testbak.dat # 复制文件test.dat为testbak.dat
mv test.dat test_bak.dat # 将test.dat改名/移动为test_bak.dat
rm test_bak.dat # 删除文件test_bak.dat
- 查看文件/目录占用磁盘空间
sudo du /var --max-depth=1
# 查看目录/var下文件或文件夹占用磁盘空间,展开层级为1
# 执行结果
4 /var/public
539244 /var/log
4 /var/local
......sudo du -h /var --max-depth=1
# 执行结果
4.0K /var/public
527M /var/log
4.0K /var/local
......
- 连接(硬连接/软连接)
在Linux系统中,硬连接和软连接是两种不同的文件连接方式,它们在实现方式和用途上有所区别。
硬连接是指通过索引节点进行的连接,类似于复制多份文件;只有文件才能建立硬连接,而目录则不能。硬连接可以用于防止“误删”的功能,只有当最后一个硬连接被删除后,才能真正删除硬连接相关的文件。
软连接则是一种特殊类型的文件,文件或目录都可以建立软连接文件。软连接文件中包含的是另一文件或目录的位置信息。软连接可以跨越文件系统,即使目标文件或目录已经被删除,软连接仍然存在,但指向的是一个不存在的文件或目录,所以软连接可能是失效的。
下面是硬连接和软连接相关的shell示例【硬连接和软连接都是使用ln命令创建】
- 创建硬连接
ln /path/to/original_file hardlink_name
# 使用ln命令创建一个指向original_file的硬连接,命名为hardlink_name
- 创建软连接
ln -s /path/to/original_file symlink_name
# 使用ln命令创建一个指向original_file的软连接,命名为symlink_name
- 删除硬连接、软连接
rm hardlink_name # 删除硬连接
rm symlink_name # 删除软连接
# 可以看到,删除硬连接、软连接的shell命令和删除文件是一样的
- 查看软连接信息
cat symlink_name # 查看软连接的内容,将显示原始文件或目录的路径
test -e symlink_name && echo "Valid symlink" || echo "Broken symlink"
# 如果软连接有效,显示"Valid symlink",否则显示"Broken symlink"
上一篇:Deepin基本环境查看(三)【网络信息】
may the odds be ever in your favor ~
相关文章:
Deepin基本环境查看(四)【硬盘/分区、文件系统、硬连接/软连接】
Linux操作系统(Deepin、Ubuntu)操作系统中,硬盘分区的管理与Windows操作系统不同; 在Linux系统中维护着一个统一的文件目录体系,而硬盘和分区是以资源的形式由操作系统挂接和调度;此外Linux系统中连接(硬连…...
JS之打地鼠案例
需要素材的同学可以私信我 效果图: 上代码: <!DOCTYPE html> <html> <head><meta charset"utf-8"><title></title><style>* {margin: 0;padding: 0;}.box {position: relative;width: 320px;heigh…...
Kubernetes入门
k8s相关基础知识 文章目录 k8s相关基础知识1、Container2、PodPod 与 Container 的不同Pod 其它命令 3、Deployment扩容升级版本Rolling update(滚动更新)存活探针(livenessProb)就绪探针(readiness) 4、ServiceClusterIPNodePortLoadBalancer 5、Ingres…...
EtherNet/IP开发:C++搭建基础模块,EtherNet/IP源代码
这里是CIP资料的协议层级图,讲解协议构造。 ODVA(www.ODVA.org)成立于1995年,是一个全球性协会,其成员包括世界领先的自动化公司。结合其成员的支持,ODVA的使命是在工业自动化中推进开放、可互操作的信息和…...
Django(九)
1. 用户登录-Cookie和Session 什么是cookie和session? 发送HTTP请求或者HTTPS请求(无状态&短连接) http://127.0.0.1:8000/admin/list/ https://127.0.0.1:8000/admin/list/http无状态短连接:一次请求响应之后断开连接,再发请求重新连…...
解决Android Studio Unexpected tokens (use ; to separate expressions on the same line)
[TOC](Unexpected tokens (use ; to separate expressions on the same line)) 问题描述:Unexpected tokens (use ; to separate expressions on the same line) 原因:Android Studio 更新到最新的版本之后,gradle工程目录结构发生改变 问…...
【云原生】Docker网络模式和Cgroup资源限制
目录 一、Docker 网络实现原理 二、Docker 的网络模式 #网络模式详解: 第一种:host模式 第二种:bridge模式 第三种:container模式 第四种:none模式 第五种:自定义网络 三、Cgroup资源控制 第一种&a…...
实战:加密传输数据解密
前言 下面将分享一些实际的渗透测试经验,帮助你应对在测试中遇到的数据包内容加密的情况。我们将以实战为主,技巧为辅,进入逆向的大门。 技巧 开局先讲一下技巧,掌握好了技巧,方便逆向的时候可以更加快速的找到关键…...
前端开发提高效率的两大工具
一、浏览器中的开发者工具 怎么启动开发者工具? 在浏览器中按下F12或者鼠标右键点击检查 怎么利用(常用的几点)? 1、元素 点击标红的图标可以用于在页面选择元素,同时右侧会找到元素在前端代码中的位置 点击下方红…...
探索设计模式的魅力:深入理解面向对象设计的深层原则与思维
如何同时提高一个软件系统的可维护性 和 可复用性是面向对象对象要解决的核心问题。 通过学习和应用设计模式,可以更加深入地理解面向对象的设计理念,从而帮助设计师改善自己的系统设计。但是,设计模式并不能够提供具有普遍性的设计指导原则。…...
【Py/Java/C++三种语言详解】LeetCode每日一题240122【贪心】LeetCode670、最大交换
文章目录 题目链接题目描述解题思路为什么是贪心一个带图的例子 代码pythonjavacpp时空复杂度 华为OD算法/大厂面试高频题算法练习冲刺训练 题目链接 LeetCode670、最大交换 题目描述 给定一个非负整数数组 nums 和一个整数 k ,你需要将这个数组分成 k 个非空的连…...
Linux/Doctor
Enumeration nmap 已知目标开放了22,80,8089端口,扫描详细情况如下 可以看到对外开放了22,80,8089三个端口 TCP/80 SSTI 访问80端口,有一个infodoctors.htb的电子邮件,点击其他的也没有什么反应,猜测有可能需要域名访问 在/et…...
嵌入式linux学习之系统烧录
1.所需文件 1. 开发板为正点原子stm32mp157,文件可按照linux驱动教程编译,也可在正点原子文档->08、系统镜像\02、出厂系统镜像中找到: 2.烧录 1.拨码开关为000(usb启动),otg接口接入虚拟机,打开stm32cubeProgrammer: 2.页面…...
JVM-初始JVM
什么是JVM JVM 全称是 Java Virtual Machine,中文译名 Java虚拟机。JVM 本质上是一个运行在计算机上的程序,他的职责是运行Java字节码文件。 Java源代码执行流程如下: JVM的功能 1 - 解释和运行 2 - 内存管理 3 - 即时编译 解释和运行 解释…...
EXCEL VBA网抓技巧-复制网页表格,不用遍历单元格
EXCEL VBA网抓技巧-复制网页表格,不用遍历单元格 对应表格复制 Sub tableTest()Set winhttp CreateObject("winhttp.WinHttpRequest.5.1")Set HTML CreateObject("htmlfile")Set oWindow HTML.ParentWindowUrl "https://www.taiwanlo…...
动态规划——炮兵回城【集训笔记】
题目描述 游戏盘面是一个m行n列的方格矩阵,将每个方格用坐标表示,行坐标从下到上依次递增,列坐标从左至右依次递增,左下角方格的坐标为(1,1),则右上角方格的坐标为(m,n)。 游戏结束盘上只剩下一枚炮兵没有回到城池中&a…...
低成本扫码点餐:1000元全包
在数字化时代,扫码点餐已经成为餐饮行业的标配。然而,对于许多小规模或初创的餐饮企业来说,开发一套完整的扫码点餐系统是一项成本高昂的任务。今天,我们将向您介绍一个低成本、高效的方法,让您用1000块钱轻松搞定一套…...
五款焊在电脑上的效率软件
在当今快节奏的商业环境中,提高工作效率成为了每个人都渴望实现的目标。尤其是在面对繁忙的工作日程、庞杂的任务清单和团队合作的压力时,我们需要一些可靠的工具来帮助我们更好地管理时间、组织工作和提高生产力。幸运的是,现在有许多高效的…...
小程序样例3:根据日历创建待办事项
基本功能 1、待办事项查看 选择不同的日期显示不同的待办: 2、选择日期后 新增事项: 3. 点击事项,查看详情 4、删除事项:删除事项3之后,剩余事项2 5、点击日期可以选择更多的月: 实现思路: 1、数据结构&a…...
计算机设计大赛 协同过滤电影推荐系统
文章目录 1 简介1 设计概要2 课题背景和目的3 协同过滤算法原理3.1 基于用户的协同过滤推荐算法实现原理3.1.1 步骤13.1.2 步骤23.1.3 步骤33.1.4 步骤4 4 系统实现4.1 开发环境4.2 系统功能描述4.3 系统数据流程4.3.1 用户端数据流程4.3.2 管理员端数据流程 4.4 系统功能设计 …...
[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?
🧠 智能合约中的数据是如何在区块链中保持一致的? 为什么所有区块链节点都能得出相同结果?合约调用这么复杂,状态真能保持一致吗?本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里…...
Android Wi-Fi 连接失败日志分析
1. Android wifi 关键日志总结 (1) Wi-Fi 断开 (CTRL-EVENT-DISCONNECTED reason3) 日志相关部分: 06-05 10:48:40.987 943 943 I wpa_supplicant: wlan0: CTRL-EVENT-DISCONNECTED bssid44:9b:c1:57:a8:90 reason3 locally_generated1解析: CTR…...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
QMC5883L的驱动
简介 本篇文章的代码已经上传到了github上面,开源代码 作为一个电子罗盘模块,我们可以通过I2C从中获取偏航角yaw,相对于六轴陀螺仪的yaw,qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...
让AI看见世界:MCP协议与服务器的工作原理
让AI看见世界:MCP协议与服务器的工作原理 MCP(Model Context Protocol)是一种创新的通信协议,旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天,MCP正成为连接AI与现实世界的重要桥梁。…...
DeepSeek 技术赋能无人农场协同作业:用 AI 重构农田管理 “神经网”
目录 一、引言二、DeepSeek 技术大揭秘2.1 核心架构解析2.2 关键技术剖析 三、智能农业无人农场协同作业现状3.1 发展现状概述3.2 协同作业模式介绍 四、DeepSeek 的 “农场奇妙游”4.1 数据处理与分析4.2 作物生长监测与预测4.3 病虫害防治4.4 农机协同作业调度 五、实际案例大…...
基于matlab策略迭代和值迭代法的动态规划
经典的基于策略迭代和值迭代法的动态规划matlab代码,实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...
C++:多态机制详解
目录 一. 多态的概念 1.静态多态(编译时多态) 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1).协变 2).析构函数的重写 5.override 和 final关键字 1&#…...
Go语言多线程问题
打印零与奇偶数(leetcode 1116) 方法1:使用互斥锁和条件变量 package mainimport ("fmt""sync" )type ZeroEvenOdd struct {n intzeroMutex sync.MutexevenMutex sync.MutexoddMutex sync.Mutexcurrent int…...
C++_哈希表
本篇文章是对C学习的哈希表部分的学习分享 相信一定会对你有所帮助~ 那咱们废话不多说,直接开始吧! 一、基础概念 1. 哈希核心思想: 哈希函数的作用:通过此函数建立一个Key与存储位置之间的映射关系。理想目标:实现…...
