Linux无分区表

前言

最近我在研究pve + bcache ,发现了bcache默认创建的分区bcache0默认的分区是MBR

也就是说,这个分区最大只能存2T数据,我硬盘是6T的,浪费了很多空间

解决

root@pve:~# fdisk /dev/bcache0 Welcome to fdisk (util-linux 2.38.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.The device contains 'ext4' signature and it will be removed by a write command. See fdisk(8) man page and --wipe option for more details.Device does not contain a recognized partition table.
The size of this disk is 4.9 TiB (5368709111808 bytes). DOS partition table format cannot be used on drives for volumes larger than 2199023255040 bytes for 512-byte sectors. Use GUID partition table format (GPT).Created a new DOS (MBR) disklabel with disk identifier 0xe2e809b2.Command (m for help): p
Disk /dev/bcache0: 4.88 TiB, 5368709111808 bytes, 10485759984 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xe2e809b2
root@pve:~# lsblk 
NAME               MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sda                  8:0    0   10G  0 disk 
└─bcache0          251:0    0  4.9T  0 disk 
sdb                  8:16   0   30G  0 disk 
├─sdb1               8:17   0 1007K  0 part 
├─sdb2               8:18   0  512M  0 part 
└─sdb3               8:19   0 29.5G  0 part ├─pve-swap       252:0    0  3.6G  0 lvm  [SWAP]├─pve-root       252:1    0 12.9G  0 lvm  /├─pve-data_tmeta 252:2    0    1G  0 lvm  │ └─pve-data     252:4    0 10.9G  0 lvm  └─pve-data_tdata 252:3    0 10.9G  0 lvm  └─pve-data     252:4    0 10.9G  0 lvm  
sdc                  8:32   0  4.9T  0 disk 
└─bcache0          251:0    0  4.9T  0 disk 
sr0                 11:0    1  1.2G  0 rom  

虽然分区什么的都还是可以出来的而且容量显示的是4.88T,但是显示的是dos,也就是MBR分区

显示的是4.88T其实实际只能写进去2T的数据

我的解决思路是先将bcache0分区使用gdisk转成GPT分区,然后再格式化ext4并挂载

下面放 我转成GPT格式之后查看的

root@pve:~# fdisk /dev/bcache0 Welcome to fdisk (util-linux 2.38.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.The primary GPT table is corrupt, but the backup appears OK, so that will be used.
This disk is currently in use - repartitioning is probably a bad idea.
It's recommended to umount all file systems, and swapoff all swap
partitions on this disk.Command (m for help): pDisk /dev/bcache0: 4.88 TiB, 5368709111808 bytes, 10485759984 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 0FE58467-8968-4452-85E5-EBCA7C9A2792

可以看到已经是变成GPT分区了

但是在格式化之后出现了点问题

root@pve:~# mkfs.ext4 /dev/bcache0
mke2fs 1.47.0 (5-Feb-2023)
Found a gpt partition table in /dev/bcache0
Proceed anyway? (y,N) y
Discarding device blocks: done                            
Creating filesystem with 1310719998 4k blocks and 163840000 inodes
Filesystem UUID: 30e5fe27-2d0c-4f46-ae61-23bfe2998d3b
Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 102400000, 214990848, 512000000, 550731776, 644972544Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (262144 blocks): done
Writing superblocks and filesystem accounting information: done    
root@pve:~# fdisk /dev/bcache0 Welcome to fdisk (util-linux 2.38.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.The device contains 'ext4' signature and it will be removed by a write command. See fdisk(8) man page and --wipe option for more details.Device does not contain a recognized partition table.
The size of this disk is 4.9 TiB (5368709111808 bytes). DOS partition table format cannot be used on drives for volumes larger than 2199023255040 bytes for 512-byte sectors. Use GUID partition table format (GPT).Created a new DOS (MBR) disklabel with disk identifier 0x929b70dc.Command (m for help): p
Disk /dev/bcache0: 4.88 TiB, 5368709111808 bytes, 10485759984 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x929b70dcCommand (m for help): 

再次查看发现又变成MBR分区了,我纳闷了,这是什么情况???

我询问了下技术群里的大佬后,发现这个应该是变成无分区表了

root@pve:~# fdisk -l /dev/bcache0 
Disk /dev/bcache0: 4.88 TiB, 5368709111808 bytes, 10485759984 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
root@pve:~# parted /dev/bcache0 print
Model: Unknown (unknown)
Disk /dev/bcache0: 5369GB
Sector size (logical/physical): 512B/512B
Partition Table: loop
Disk Flags: Number  Start  End     Size    File system  Flags1      0.00B  5369GB  5369GB  ext4

fdisk -l /dev/bcache0 命令并没有显示出任何的分区表格式,而且parted /dev/bcache0 print 显示了loop

至于为什么 /dev/bcache0 格式化ext4会显示出dos也就是MBR,可能是因为linux错把ext4识别成MBR了

无分区表没有任何的容量限制

下面是无分区表的概念

  1. 无分区表指的是存储设备上没有分区表或者没有对应的分区信息。在这种情况下,整个存储设备被视为一个单一的分区,也就是说整个设备被当作一个大的逻辑存储单元来处理。
  2. 在 Linux 系统中,可以通过直接在一个设备上创建文件系统来实现无分区表的存储设备,这通常用于一些特殊的应用场景,比如直接使用一个磁盘作为整个文件系统的存储介质,而不对其进行分区划分。
  3. 无分区表的优点是简化了存储管理,减少了对分区表的管理和维护。但缺点是如果需要对存储设备进行多重分区、引导操作系统等操作时,会变得更加复杂。
  4. 大多数情况下,为了更好地管理存储空间、提高系统的灵活性和可维护性,我们会选择使用分区表来划分存储设备,但无分区表的方式在某些特定的场景下仍然具有一定的实用性。

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

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

相关文章

C++Qt学习——不用UI文件编程

在创建文件的时候不要选中Generate form这块 创建的文件如下图所示,比起之前的没有了form这一快 1、在mainwindow.h里面声明按钮对象 2、在mainwindow.cpp里实例化按钮 2.1、方法一 pushButton new QPushButton();pushButton->show(); 但是发现显示是分离的 2…

【spring】-多模块构建二-问题整理

1、bean注入问题 The injection point has the following annotations: - org.springframework.beans.factory.annotation.Autowired(requiredtrue) 解决1: 由于引入的bean类 不属于启动类的子模块下,需要在启动类手动声明扫描的类 也适用于公共子模…

【图文详解】Maven Helper插件解决Maven冲突

文章目录 插件问题解决过程 在面试中解决问题的能力和思路是考察的重点,面试官问会问我们有没有解决过maven冲突。以下造了一个maven冲突,手把手教学如何解决Maven冲突。 插件 插件在idea插件中搜索Maven Helper 问题 解决过程 根据上面日志知道是log…

触发器

触发器的用途1 利用触发器检查输入数据的合理性 利用触发器维护冗余数据查看触发器 一、为什么使用触发器 触发器(TRIGGER)是MySQL的与表的insert,delete,update语句相关的数据库对象之一,当表上出现特定事件时&#…

2024 遗传编程实战(一)基因实战

2024 遗传编程实战(一)基因实战 文章目录 2024 遗传编程实战(一)基因实战一、遗传编程实战介绍1、遗传编程简介2、遗传编程和进化论的关系3、遗传编程过程解释 二、基于遗传编程的例子1、实战题目介绍2、遗传算法的伪代码3、遗传实…

Vue中吸顶导航的实现

目录 1 前言 2 具体步骤 2.1 安装VueUse 2.2 吸顶导航组件中导入useScroll 2.3 在style中定义吸顶导航的两种状态 2.4 template中设置吸顶导航出现的时机 1 前言 本处使用VueUse更便捷的实现吸顶导航,具体内容及更多操作请看官网文档,如下&#x…

从键盘输入两个数,求它们的和并输出 从键盘输入三个数到a,b,c中,按公式值输出

别急别急,先看完 (从初学者出发,大佬勿喷,I am 小小蒟蒻) 从键盘输入两个数,求它们的和并输出 作者 陈春晖 单位 浙江大学 本题目要求读入2个整数A和B,然后输出它们的和。 输入格式: 在一行中给出一…

微信小程序开发系列(三十)·小程序本地存储API·同步和异步的区别

目录 1. 同步API 1.1 getStorageSync存储API 1.2 removeStorageSync获取数据API 1.3 removeStorageSync删除 1.4 clearStorageSync清空 2. 异步API 2.1 setStorage存储API 2.2 getStorage获取数据API 2.3 removeStorage删除API 2.4 clearStorage清空 3. …

每天学习一个Linux命令之ifconfig

每天学习一个Linux命令之ifconfig 在Linux操作系统中,ifconfig命令是一个用来配置和显示网络接口的工具。它可以用来查看和修改网络接口的状态、IP地址、网关、子网掩码等信息。在本文中,我们将详细介绍ifconfig命令的使用方法和常用选项。 1. 命令语法…

Zookeeper搭建

目录 前言 初了解Zookeeper 搭建 准备 配置Zookeeper 前言 今天来介绍Zookeeper的搭建,其实Zookeeper的搭建很简单,但是为什么还要单独整一节呢,这就不得不先了解Zookeeper有什么功能了!而且现在很火的框架也离不开Zookeepe…

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的夜间车辆检测系统(深度学习代码+UI界面+训练数据集)

摘要:开发夜间车辆检测系统对于自动驾驶技术具有关键作用。本篇博客详细介绍了如何运用深度学习构建一个夜间车辆检测系统,并提供了完整的实现代码。该系统基于强大的YOLOv8算法,并对比了YOLOv7、YOLOv6、YOLOv5,展示了不同模型间…

C语言入门学习 --- 6.指针

文章目录 第六章指针1.指针是什么?这里我们总结一下:问题:省流版: 2.指针和指针类型2.1指针-整数2.2指针的解引用 3.野指针3.1野指针成因3.2如何规避野指针 4.指针运算4.1指针-整数4.2指针-指针4.3指针的关系运算标准规定&#xf…

剑指offer面试题34 丑数

考察点 空间换时间提效知识点 题目 分析 这里面其实用到了一点点的数学知识,丑数的定义是只包含2,3,5因子的数。现在要求第1500个丑数,最简单的办法就是从数字1开始遍历,依次判断每个数字是不是丑数,如果…

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的木材表面缺陷检测系统(深度学习+Python代码+UI界面+训练数据集)

摘要:开发高效的木材表面缺陷检测系统对于提升木材加工行业的质量控制和生产效率至关重要。本篇博客详细介绍了如何运用深度学习技术构建一个木材表面缺陷检测系统,并提供了完整的实现代码。该系统采用了强大的YOLOv8算法,并对YOLOv7、YOLOv6…

升级Windows 11 专业版升级密钥永久使用

Windows 11 专业版是 Windows 11 的商业版本,专为中小型企业和组织设计。它提供了一些家庭版和专业版所没有的功能,例如: 安全性: 设备加密:使用 BitLocker 或 BitLocker 设备加密保护您的设备和数据。身份验证:使用…

VUE_nuxt启动只能通过localhost访问,ip访问不到:问题解决

修改项目根目录下的 package.json "config": {"nuxt": {"host": "0.0.0.0","port": "3000"} } 这样项目启动后就可以通过ip进行访问了

保研复习数据结构记(7)--散列查找(哈希表)

哈希表有什么特点?数据元素的关键字与其存储地址直接相关(通过哈希函数相关),典型的用空间换时间的算法处理冲突的方法?拉链法(链地址法),开放定址法,再散列法什么是查找…

mac idea快捷键记录

1.查看接口有多少的实现类,选中下面的这个类,然后commandoptionB 即可。

【JavaEE Spring 项目】消息队列的设计

消息队列的设计 一、消息队列的背景知识二、需求分析核心概念⼀个⽣产者, ⼀个消费者N 个⽣产者, N 个消费者Broker Server 中的相关概念核⼼ API交换机类型 (Exchange Type)持久化⽹络通信消息应答 三、 模块划分四、 项⽬创建五、创建核心类创建 Exchange创建 MSGQUeue创建 B…

【位运算】【脑筋急转弯】2749. 得到整数零需要执行的最少操作数

作者推荐 视频算法专题 本文涉及知识点 2749. 得到整数零需要执行的最少操作数 给你两个整数:num1 和 num2 。 在一步操作中,你需要从范围 [0, 60] 中选出一个整数 i ,并从 num1 减去 2i num2 。 请你计算,要想使 num1 等于 …