在Linux中查看分区表的4种方法
作为Linux管理员,我们需要一次又一次地查看硬盘的分区表。这有助于我们通过为进一步分区腾出空间来重新组织旧驱动器,并在必要时为新驱动器创建空间。您可以在硬盘上创建不超过四个主分区,但可以在多个逻辑分区或扩展分区上创建,具体取决于系统上安装的硬盘大小。
分区表包含有关所有逻辑磁盘或分区的信息,位于硬盘的0扇区中。您的设备在分区表中列为/dev/sda,/dev/sdb等。 sd *设备是指系统上的SCSI或SATA磁盘。例如,/dev/sda将是第一个SATA/SCSI硬盘,/dev/sdb将是第二个SATA/SCSI硬盘。
本文列出并说明了使用各种Linux命令查看设备的分区表。我们将使用CLI来运行这些命令。您可以通过系统Dash或Ctrl + Alt + T快捷方式打开Ubuntu命令行终端。
我们在Ubuntu 18.04 LTS系统上运行了本文中提到的命令和过程。
通过lsblk命令查看分区表
lsblk命令列出系统的所有块设备及其逻辑分区。在终端中输入以下命令以列出分区表:
lsblk

- NAME - 设备名称
- MAJ:MIN -Major和Min Device number
- RM-设备是否可拆卸(1)或不可拆卸(0)
- SIZE - 设备大小
- RO -设备是只读的(1)还是不是(0)
- TYPE - 设备类型,即,如果它是磁盘或分区等。
- MOUNTPOINT - 设备的安装点(如果适用)。
在上面的输出中,您可以看到我的sda设备从sda1到sda5的所有逻辑分区。以下是七列所示:
使用fdisk命令获取分区列表
代表格式化磁盘或固定磁盘的fdisk命令主要用于创建或删除硬盘分区。 它也用于格式化磁盘,但是,在这里我们将使用它来列出分区表,方法是使用特定的标志。
-l标志与fdisk一起使用以列出指定设备的分区表,然后退出。 如果未提及任何设备名称,fdisk将使用/proc/partitions文件中提到的设备。
-l选项显示指定设备的分区表,然后退出。 如果没有给出设备,则使用/proc/partitions中提到的那些设备(如果存在)。 输入以下命令:
linuxidc@linuxidc:~/www.linuxidc.com$ sudo fdisk -l
向下滚动时,输出显示分区表,如下所示:

Disk /dev/loop0:34.7 MiB,36323328 字节,70944 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
......省略......
linuxidc@linuxidc:~/www.linuxidc.com$ fdisk -l /dev/sda
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/sda1 * 2048 41940991 41938944 20G 8e Linux LVM

这是各栏目所示的内容:
- 设备 - 设备/逻辑分区的名称
- 启动 -This列中的*符号表示相应的分区包含用于引导系统的引导加载程序信息
- 起点 - 分配给此分区的起始扇区。
- 末尾 - 分配给此分区的结束扇区。
- 扇区 - 为此分区分配的扇区数。
- 大小 - 分区的大小。
- ID-系统用于此分区的ID
- 类型 - 此分区使用的文件类型或系统。
使用sfdisk命令查看分区
虽然sfdisk命令主要用于操作Linux上的分区表,但它也可以用于通过使用以下语法列出设备的分区表:
sudo sfdisk -l/dev/devicename
例如:
sudo sfdisk -l /dev/sda

如您所见,此命令提供与fdisk命令相同的分区表信息。 您只能以授权的sudo用户身份查看fdisk和sfdisk命令的结果。
使用parted命令获取硬盘分区
列出设备分区表的另一种方法是通过parted命令。 parted命令在前面提到的fdisk和sfdisk命令上有优势,因为前者没有列出大小超过2 TB的分区。
使用以下语法查看设备的分区表:
sudo parted /dev/devicename
例子:
linuxidc@linuxidc:~/www.linuxidc.com$ sudo parted /dev/sda
GNU Parted 3.2
使用 /dev/sda
欢迎使用 GNU Parted! 输入 'help'可获得命令列表.
(parted)
该命令将进入“(parted)”提示模式。 您可以在此处输入以下值,以帮助您查看设备的分区表。
- Unit GB:通过此输入,您可以选择以GB显示的输出。
- Unit TB:通过此输入,您可以选择要在TB中显示的输出。
输入您的选择,之后系统将显示相应的分区表。
输入help命令,会列出所有可用的命令。常用的是cp,rm,resize,resure,set,mkparfs,print。
1)print用于显示当前的分区情况
2)set可以设置分区的标志:set 1 boot on
3)mkpartfs创建分区:mkpartfs primary linux-swap 1KB 2MB
4)rm删除分区,可用resure恢复
5)cp将拷贝分区内容到新的分区
6)resize可以改变分区的大小

实际的应用场景:无损压缩大分区
用resize可以修改分区的大小,但是要做到无损,只能减小该分区的结束位置,因为分区表的信息在起始的位置。但是如何知道,该分区已经占用了多少空间。可以用df命令来查看:有一项是available,注意不能用总容量-used部分计算,原因就不说了吧。这样resize可以保证无损压缩。
注意使用前,要先unmount该分区。交换分区要swapoff,才能修改。修改完后用swapon打开,swapon -s可以显示交换分区使用情况。
要退出parted命令模式,只需键入quit,然后单击Enter。
或者,您可以使用以下命令列出系统所有块设备上的所有分区布局:
linuxidc@linuxidc:~/www.linuxidc.com$ sudo parted -l

由于sda是我唯一的块设备,因此该命令仅显示该分区。
注意:主要用于列出SCSI设备及其属性的lsscsi命令还列出了某些系统上的分区表。 您可以通过以下命令安装它:$ sudo apt-get install lsscsi
通过我们在本文中介绍的各种Linux命令,您现在可以查看硬盘设备的分区表。 一些命令有许多其他基本功能,但由于它们也列出了分区表,我们已将它们包含在我们的文章中。 您现在可以更好地管理存储设备的空间和分区。
在Linux中查看分区表的4种方法的更多相关文章
- Linux中Kill进程的N种方法
常规篇: 首先,用ps查看进程,方法如下: $ ps -ef …… smx 1822 1 0 11:38 ? 00:00:49 gnome-terminal smx ...
- Kali linux中安装字体的一种方法
有人说,lucida sans typewriter字体是一种非常适合的编程字体,所以想试试.经过一番折腾,终于在Clion中用上了.步骤如下: 第一步:先下载这个字体. http://www.dow ...
- linux系列之: 你知道查看文件空间的两种方法吗?
目录 简介 du命令 df命令 总结 简介 linux系统中查看文件空间大小应该是一个非常常见的命令了,今天给大家介绍linux系统中查看文件空间的两种方法和在使用中可能会遇到的奇怪问题. 为什么会有 ...
- Linux中查看文件编码
在Linux中查看文件编码可以通过以下几种方式:1.在Vim中可以直接查看文件编码:set fileencoding即可显示文件编码格式.如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱 ...
- 在Linux中查看文件的编码及对文件进行编码转换
如果你需要在Linux中操作windows下的文件,那么你可能会经常遇到文件编码转换的问题.Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8.下面介绍一下,在Li ...
- Linux中查看进程的多线程pstree, ps -L
Linux中查看进程的多线程 在SMP系统中,我们的应用程序经常使用多线程的技术,那么在Linux中如何查看某个进程的多个线程呢? 本文介绍3种命令来查看Linux系统中的线程(LWP)的情况:在我的 ...
- 如何在 Linux 中查看进程占用的端口号【转】
对于 Linux 系统管理员来说,清楚某个服务是否正确地绑定或监听某个端口,是至关重要的.如果你需要处理端口相关的问题,这篇文章可能会对你有用. 端口是 Linux 系统上特定进程之间逻辑连接的标识, ...
- Linux中查看日志文件的正确姿势,求你别tail走天下了!
作为一个后端开发工程师,在Linux中查看查看文件内容是基本操作了.尤其是通常要分析日志文件排查问题,那么我们应该如何正确打开日志文件呢?对于笔者这种小菜鸡来说,第一反应就是 cat,tail,vi( ...
- 如何在Linux中查看所有正在运行的进程
如何在Linux中查看所有正在运行的进程 FROM:http://os.51cto.com/art/201101/244090.htm 进程是一个其中运行着一个或多个线程的地址空间和这些线程所需要的系 ...
- Linux 中查看网口流量的利器 -- sar
Linux 中查看网口流量的利器 -- sar 有这么一个小工具,通过它能够查看各个网口的IP报文流量统计. 利用sar命令,加上-n DEV参数,即可统计出所有网卡上的流量,在显示的第五和第六列 ...
随机推荐
- [转]CMake菜谱(CMake Cookbook中文版)
CMake菜谱(CMake Cookbook中文版) 翻译 搜索 复制
- 前后端分离模式下Java Web开发中的技术栈概图
参考链接1:前后端的分离模式 参考链接2:浅谈前后端分离开发模式 参考链接3:前后端分离开发模式介绍
- [转]java中带图片按钮的大小设置
在java部分需要用到图形界面编程的项目中,经常会使用图片设置对按钮进行美化,但是使用时会出现一个很麻烦的问题,那就是按钮的大小默认按照图片的大小来显示,这大大降低了界面的美观程度: 按照方法: JB ...
- [转]在WorldWind中加入*.x格式的三维模型
Nasa支持的WorldWind项目最近推出了1.4RC5版,可以加入三维模型,效果如下图所示: 点击查看大图 WW1.4对XML配置文件增加了许多新的元素,其中ModelFeature就是用来增加三 ...
- Bolt.new 30秒做了一个网站,还能自动部署,难道要吊打 Cursor?
大家好,我是汤师爷~ 这篇聊聊 Bolt.new 和 Cursor 的对比. Bolt.new 是一款基于 SaaS 的 AI 编码平台.它由 LLM 驱动的智能体作为底层,并结合 WebContai ...
- 最新AI智能体开发案例:辅助写作神器!教你用Coze平台搭建「文匠智创 1.0」智能体!
各位小伙伴们,大家好呀!我是疯狂老包.我精心打造的<疯狂AI智能体开发:100个实战案例, 从 入门到精通 >正在开发中!要是你对 AI 应用搭建满怀热忱,渴望深入学习其中的奥秘与技巧,那 ...
- Nginx的HTTP模块与Stream模块:区别与应用场景
本文分享自天翼云开发者社区<Nginx的HTTP模块与Stream模块:区别与应用场景>,作者:云海 Nginx是一个多功能的开源Web服务器,它支持多个模块,其中两个重要的模块是HTTP ...
- CMW500 Bluetooth信令测试
一.简介 R&SCMW500宽带无线通信测试仪是适用于射频集成和协议开发的通用测试平台,其内部集成RF功率计和带List模式的CW发生器,可以完成无线设备的快速校准:同时还集成了矢量信号分析仪 ...
- [FJOI2016] 建筑师 题解
显然有一个 \(dp\) 思路.设 \(f_{i,j}\) 表示现在修了 \(i\) 栋楼,从第一栋楼外侧能看到 \(j\) 栋楼的方案数,显然有: \[f_{i,j}=\begin{cases}[i ...
- [SDOI2008] 洞穴勘测 题解
似乎所有的线段树分治题都能被 \(LCT\) 平替掉? 一眼动态树,直接 \(LCT\). Connect x y 操作用 \(link(x,y)\) 实现,Destroy x y 操作用 \(cut ...