linux下查看磁盘分区,文件系统,磁盘文件系统的命令

2023-10-26

http://www.linuxsir.org/bbs/thread214738.html

一、df 命令; 


df 是来自于coreutils 软件包,系统安装时,就自带的;我们通过这个命令可以查看磁盘的使用情况以及文件系统被挂载的位置; 

举例: 
Shell代码 
  1. [root@localhost beinan]# df -lh  
  2. Filesystem            容量  已用 可用 已用% 挂载点  
  3. /dev/hda8              11G  6.0G  4.4G  58% /  
  4. /dev/shm              236M     0  236M   0% /dev/shm  
  5. /dev/sda1              56G   22G   35G  39% /mnt/sda1  


我们从中可以看到,系统安装在/dev/hda8 ;还有一个56G的磁盘分区/dev/sda1挂载在 /mnt/sda1中; 

其它的参数请参考 #man df 


二、fdsik 

fdisk 是一款强大的磁盘操作工具,来自util-linux软件包,我们在这里只说他如何查看磁盘分区表及分区结构;参数 -l ,通过-l 参数,能获得机器中所有的硬盘的分区情况; 
Shell代码 
  1. [root@localhost beinan]# fdisk -l  
  2.   
  3. Disk /dev/hda: 80.0 GB, 80026361856 bytes  
  4. 255 heads, 63 sectors/track, 9729 cylinders  
  5. Units = cylinders of 16065 * 512 = 8225280 bytes  
  6.   
  7.    Device Boot      Start         End      Blocks   Id  System  
  8. /dev/hda1   *           1         765     6144831    7  HPFS/NTFS  
  9. /dev/hda2             766        2805    16386300    c  W95 FAT32 (LBA)  
  10. /dev/hda3            2806        7751    39728745    5  Extended  
  11. /dev/hda5            2806        3825     8193118+  83  Linux  
  12. /dev/hda6            3826        5100    10241406   83  Linux  
  13. /dev/hda7            5101        5198      787153+  82  Linux swap / Solaris  
  14. /dev/hda8            5199        6657    11719386   83  Linux  
  15. /dev/hda9            6658        7751     8787523+  83  Linux  


在上面Blocks中,表示的是分区的大小,Blocks的单位是byte ,我们可以换算成M,比如第一个分区/dev/hda1的大小如果换算成M,应该是6144831/1024=6000M,也就是6G左右,其实没有这么麻烦,粗略的看一下把小数点向前移动三位,就知道大约的体积有多大了; 
System 表示的文件系统,比如/dev/hda1 是NTFS格式的;/dev/hda2 表示是fat32格式的文件系统;. 

在此例中,我们要特别注意的是/dev/hda3分区,这是扩展分区;他下面包含着逻辑分区,其实这个分区相当于一个容器;从属于她的有 hda5,hda6,hda7,hda8,hda9 ; 

我们还注意到一点,怎么没有hda4呢?为什么hda4没有包含在扩展分区?一个磁盘最多有四个主分区; hda1-4算都是主分区;hda4不可能包含在扩展分区里,另外扩展分区也算主分区;在本例中,没有hda4这个分区,当然我们可以把其中的一个分区设置为主分区,只是我当时分区的时候没有这么做而已; 

再仔细统计一下,我们看一看这个磁盘是不是还有空间?hda1+hda2+hda3=实际已经分区的体积,所以我们可以这样算 hda1+hda2+hda3=6144831+16386300+39728745 = 62259876 (b),换算成M单位,小数点向前移三位,所以目前已经划分好的分区大约占用体积是62259.876(M),其实最精确的计算62259876/1024=60800.67(M);而这个磁盘大小是80.0 GB (80026361856byte),其实实际大小也就是78150.744(M);通过我们一系列的计算,我们可以得出这个硬盘目前还有使用的空间;大约还有18G未分区的空间; 

fdisk -l 能列出机器中所有磁盘的个数,也能列出所有磁盘分区情况;比如: 

Shell代码 
  1. [root@localhost beinan]# fdisk -l  
  2.   
  3. Disk /dev/hda: 80.0 GB, 80026361856 bytes  
  4. 255 heads, 63 sectors/track, 9729 cylinders  
  5. Units = cylinders of 16065 * 512 = 8225280 bytes  
  6.   
  7.    Device Boot      Start         End      Blocks   Id  System  
  8. /dev/hda1   *           1         765     6144831    7  HPFS/NTFS  
  9. /dev/hda2             766        2805    16386300    c  W95 FAT32 (LBA)  
  10. /dev/hda3            2806        7751    39728745    5  Extended  
  11. /dev/hda5            2806        3825     8193118+  83  Linux  
  12. /dev/hda6            3826        5100    10241406   83  Linux  
  13. /dev/hda7            5101        5198      787153+  82  Linux swap / Solaris  
  14. /dev/hda8            5199        6657    11719386   83  Linux  
  15. /dev/hda9            6658        7751     8787523+  83  Linux  
  16.   
  17. Disk /dev/sda: 60.0 GB, 60011642880 bytes  
  18. 64 heads, 32 sectors/track, 57231 cylinders  
  19. Units = cylinders of 2048 * 512 = 1048576 bytes  
  20.   
  21.    Device Boot      Start         End      Blocks   Id  System  
  22. /dev/sda1               1       57231    58604528   83  Linux  



通过上面我们可以知道此机器有两块硬盘,我们也可以指定fdisk -l 来查看其中一个硬盘的分区情况; 

Shell代码 
  1. [root@localhost beinan]# fdisk -l /dev/sda  
  2.   
  3. Disk /dev/sda: 60.0 GB, 60011642880 bytes  
  4. 64 heads, 32 sectors/track, 57231 cylinders  
  5. Units = cylinders of 2048 * 512 = 1048576 bytes  
  6.   
  7.    Device Boot      Start         End      Blocks   Id  System  
  8. /dev/sda1               1       57231    58604528   83  Linux  

通过上面情况可以知道,在/dev/sda 这个磁盘中,只有一个分区;使用量差不多是百分百了; 

我们还可以来查看 /dev/hda的 
Shell代码 
  1. [root@localhost beinan]# fdisk -l /dev/hda  


自己试试看? 

三、cfdisk 来自于util-linux的软件包; 

cfdisk 也是一款不错的分区工具;在有些发行版中,此工具已经从util-linux包中剔除;cfdisk 简单易用是他的特点;和DOS中的fdisk 相似;在本标题中,我们只来解说如何查看机器的中的磁盘分区状况及所用的文件系统等; 


查看磁盘分区的用法 cfdisk -Ps 磁盘设备名; 
比如 
Shell代码 
  1. [root@localhost beinan]cfdisk -Ps    
  2. [root@localhost beinan]cfdisk -Ps   /dev/hda   
  3.   
  4. [root@localhost beinan]cfdisk -Ps   
  5. Partition Table for /dev/hda  
  6.   
  7.                First       Last  
  8.  # Type       Sector      Sector   Offset    Length   Filesystem Type (ID) Flag  
  9. -- ------- ----------- ----------- ------ ----------- -------------------- ----  
  10.  1 Primary           0    23438834     63    23438835 Linux (83)           Boot  
  11.  2 Primary    23438835   156296384      0   132857550 Extended (05)        None  
  12.  5 Logical    23438835   155268224     63   131829390 Linux (83)           None  
  13.  6 Logical   155268225   156296384     63     1028160 Linux swap (82)      None  


我们只用的参数 -Ps,就列出了磁盘的分区情况;目前在Slackware Debian Mandrake 等主流发行版中存在cfdisk ,而fedora 4.0把这个小工具剔除了;有点可惜;这是我在Slackware中操作的; 

如果您这样操作,就更直观了; 
Shell代码 
  1. [root@localhost beinan]cfdisk  磁盘设备名     

举例: 
Shell代码 
  1. [root@localhost beinan]cfdisk  /dev/hda    


您所看到的是如下的模式: 


Shell代码 
  1.                                     cfdisk 2.12a  
  2.   
  3.                                 Disk Drive: /dev/hda  
  4.                           Size: 80026361856 bytes, 80.0 GB  
  5.                 Heads: 255   Sectors per Track: 63   Cylinders: 9729  
  6.   
  7. Name          Flags        Part Type    FS Type            [Label]           Size (MB)  
  8. ----------------------------------------------------------------------------------------  
  9. hda1          Boot          Primary     Linux ReiserFS                        12000.69  
  10. hda5                        Logical     Linux ReiserFS                        67496.65  
  11. hda6                        Logical     Linux swap                              526.42  
  12.   
  13.   
  14.   
  15.  [Bootable]  [ Delete ]  [  Help  ]  [Maximize]  [ Print  ]  [  Quit  ]  
  16.  [  Type  ]  [ Units  ]  [ Write  ]  
  17.   
  18.                     Toggle bootable flag of the current partition  


您进入了cfdisk 的操作界面;用键盘移动指针到[Quit]就可以退出; 


四、parted 功能不错的分区工具;在Fedora 4.0中有带,可以自己安装上;在此主题中,我们只说如何查看磁盘的分区情况; 

调用方法简单,parted 默认是打开的设备是/dev/hda ,也可以自己指定;比如 parted /dev/hda 或/dev/sda 等;退出的方法是 quit 
Shell代码 
  1. [root@localhost beinan]# df -lh  
  2. Filesystem            容量  已用 可用 已用% 挂载点  
  3. /dev/hda8              11G  6.0G  4.4G  58% /  
  4. /dev/shm              236M     0  236M   0% /dev/shm  
  5. /dev/sda1              56G   22G   35G  39% /mnt/sda1  


我们在partd 的操作面上,用p就可以列出当前磁盘的分区情况,如果想要查看其它磁盘,可以用 select 功能,比如 select /dev/sda ; 

五、qtparted ,与parted 相关的软件还有qtparted ,也能查看到磁盘的结构和所用的文件系统,是图形化的; 

[beinan@localhost ~]# qtparted 

图形化的查看,一目了然; 



六、sfdisk 也是一个分区工具,功能也多多;我们在这里只说他的列磁盘分区情况的功能; 

Shell代码 
  1. [root@localhost beinan]# df -lh  
  2. Filesystem            容量  已用 可用 已用% 挂载点  
  3. /dev/hda8              11G  6.0G  4.4G  58% /  
  4. /dev/shm              236M     0  236M   0% /dev/shm  
  5. /dev/sda1              56G   22G   35G  39% /mnt/sda1  

自己看看吧; 

sfdisk 有几个很有用的功能;有兴趣的弟兄不妨看看; 


七、partx 也简要的说一说,有些系统自带了这个工具,功能也简单,和fdisk 、parted、cfdisk 来说不值一提;不用也罢;

用法: partx 设备名 

Shell代码 
  1. [root@localhost beinan]# df -lh  
  2. Filesystem            容量  已用 可用 已用% 挂载点  
  3. /dev/hda8              11G  6.0G  4.4G  58% /  
  4. /dev/shm              236M     0  236M   0% /dev/shm  
  5. /dev/sda1              56G   22G   35G  39% /mnt/sda1  


八、查看目前机器中的所有磁盘及分区情况: 

Shell代码 
  1. [root@localhost beinan]# df -lh  
  2. Filesystem            容量  已用 可用 已用% 挂载点  
  3. /dev/hda8              11G  6.0G  4.4G  58% /  
  4. /dev/shm              236M     0  236M   0% /dev/shm  
  5. /dev/sda1              56G   22G   35G  39% /mnt/sda1  


九、mac-fdisk 这个工具主要是用在Powerpc版本的Linux中,咱们常用X86版本中没有这个工具;这个只是介绍一下; 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

linux下查看磁盘分区,文件系统,磁盘文件系统的命令 的相关文章

  • 如何不断刷新屏幕并实时更新[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想在linux上写一个C程序 不断刷新屏幕并实时更新 例如类似于top终端中的命令 谁能指出我正确的方向 为了保持它跨终端类型的可移
  • 在Linux中断上下文中运行用户线程

    我正在编写一些定制的应用程序 并允许更改 Linux 内核中的中断处理程序代码 我有一个用户线程正在等待中断发生 如果发生中断 那么我要做的第一件事就是执行该用户线程 有什么办法让它发挥作用吗 Thanks 创建一个字符设备 这就是内核所做
  • 如何让“grep”从文件中读取模式?

    假设有一个很大的文本文件 我只想打印与某些模式不匹配的行 显然 我可以使用egrep v patter1 pattern2 pattern3 现在 如果所有这些模式都在一个文本文件中怎么办 最好的制作方法是什么egrep从文件中读取模式 g
  • 如何在特定 systemd 服务重新启动时触发自定义脚本运行

    我想知道如何安排自定义脚本在重新启动服务时运行 我的用例是 每当重新启动 Tomcat 服务时 我都必须运行多个命令 我想知道是否有一种方法可以编写脚本并安排它在重新启动 Tomcat 服务时运行 我已将 tomcat 脚本设置为 syst
  • 设置 Apache POI 的路径

    我想创建 Excel 文件并使用 java 程序在该文件中写入数据 That is here http www techbrainwave com p 554我在 java 文件所在的位置提取了 Apache POI 并将该路径包含在路径变
  • 没有可用的符号表信息

    我正在测试第三方的库 它崩溃了 当我想查看崩溃的原因时 我的 gdb 告诉我没有可用的调试符号 Program received signal SIGSEGV Segmentation fault Switching to Thread 0
  • SONAR - 使用 Cobertura 测量代码覆盖率

    我正在使用声纳来测量代码质量 我不知道的一件事是使用 Cobertura 测量代码覆盖率的步骤 我按照以下步骤操作http cobertura sourceforge net anttaskreference html http cober
  • diff 文件仅比较每行的前 n 个字符

    我有2个文件 我们将它们称为 md5s1 txt 和 md5s2 txt 两者都包含a的输出 find type f print0 xargs 0 md5sum sort gt md5s txt 不同目录下的命令 许多文件被重命名 但内容保
  • 如何制作和应用SVN补丁?

    我想制作一个SVN类型的补丁文件httpd conf这样我就可以轻松地将其应用到其他主机上 If I do cd root diff Naur etc httpd conf httpd conf original etc httpd con
  • 并行运行 make 时出错

    考虑以下制作 all a b a echo a exit 1 b echo b start sleep 1 echo b end 当运行它时make j2我收到以下输出 echo a echo b start a exit 1 b star
  • 在Linux上编译C# + WPF以便在Windows上运行

    我有一个 C 应用程序 其中某些部分是使用 WPF 编写的 Mono 不支持 可以在 Linux 上编译这个应用程序吗 最终 该应用程序将在 Windows 上运行 但它是更大框架的一部分 并且我们的整个构建过程在 Linux 上运行 因此
  • Locale.getDefault() 始终返回 en

    unix 机器上的服务器始终使用 en 作为默认区域设置 以下是区域设置输出 LANG en US LC CTYPE C LC NUMERIC C LC TIME C LC COLLATE C LC MONETARY C LC MESSAG
  • 在 Mac OS X 上构建 Linux 内核

    我正在做一个修改Linux内核的项目 我有一台桌面 Linux 机器 在上面构建内核没有问题 不过 我要去旅行 我想在途中工作 我只有一台 MacBook 当我尝试构建 Linux 内核时 它抱怨说elf h was not found 我
  • bluetoothctl 到 hcitool 等效命令

    在 Linux 中 我曾经使用 hidd connect mmac 来连接 BT 设备 但自 Bluez5 以来 这种情况已经消失了 我可以使用 bluetoothctl 手动建立连接 但我需要从我的应用程序使用这些命令 并且使用 blue
  • 强制卸载 NFS 安装目录 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 Locked 这个问题及其答案是locked help locked posts因为这个问题是题外话 但却具有历史意义 目前不接受新的答案
  • 通过特定分隔符删除字符串

    我的文件中有几列 其中第二列有 分隔符 我想删除第二列中的第一个 第三个和第四个字符串 并将第二个字符串留在该列中 但我有正常的分隔符空间 所以我不知道 input 22 16050075 A G 16050075 A G 22 16050
  • 如何使用 bash 锁定文件

    我有一个任务从远程服务器同步目录 rsync av email protected cdn cgi l email protection srv data srv data 为了使其定期运行并避免脚本 reEnter 问题 我使用 rsyn
  • Jenkins中找不到环境变量

    我想在詹金斯中设置很多变量 我试过把它们放进去 bashrc bash profile and profile of the jenkins用户 但 Jenkins 在构建发生时找不到它们 唯一有效的方法是将所有环境变量放入Jenkinsf
  • Linux TUN/TAP:无法从 TAP 设备读回数据

    问题是关于如何正确配置想要使用 Tun Tap 模块的 Linux 主机 My Goal 利用现有的路由软件 以下为APP1和APP2 但拦截并修改其发送和接收的所有消息 由Mediator完成 我的场景 Ubuntu 10 04 Mach
  • 如何在 shell 脚本中并行运行多个实例以提高时间效率[重复]

    这个问题在这里已经有答案了 我正在使用 shell 脚本 它读取 16000 行的输入文件 运行该脚本需要8个多小时 我需要减少它 所以我将其划分为 8 个实例并读取数据 其中我使用 for 循环迭代 8 个文件 并在其中使用 while

随机推荐

  • c#自定义消息事件

    自定义消息 public class CustomEventArgs EventArgs public readonly string msg public CustomEventArgs string msg this msg msg 自
  • 设计模式之桥接模式(Bridge模式)

    一 模式动机 设想如果要绘制矩形 圆形 椭圆 正方形 我们至少需要4个形状类 但是如果绘制的图形需要具有不同的颜色 如红色 绿色 蓝色等 此时至少有如下两种设计方案 第一种设计方案是为每一种形状都提供一套各种颜色的版本 第二种设计方案是根据
  • 云服务器搭建神器JupyterLab(多图)

    云服务器搭建神器JupyterLab 多图 JupyterLab是一个交互式的开发环境 其用于应对包含着notebook 代码以及数据的工作场景 1 前言 如果说vim是编辑器之神 那么JupyterLab就是笔记本之神 从2017年开始我
  • 极端天气下的目标检测与测距算法

    更多视觉额自动驾驶项目请见 小白学视觉 自动驾驶项目 本文主要工作 科技的发展与进步促使自动驾驶车辆逐渐成为全球汽车产业发展的重要战略 方向 但自动驾驶车辆面对如 大雨 大雾 大雪等极端环境时 智能汽车图像 采集与处理系统将面临巨大挑战 并
  • 基于Python的socket库实现通信功能

    目录 1 前言 2 技术介绍 1 socket 2 Python的socket库 3 系统实现 1 服务端 server py 2 客户端1 client1 py 3 客户端2 client2 py 4 系统功能演示 1 启动服务端和客户端
  • idea配置maven教程

    1 下载maven 下载地址 官网地址点击进入 2 配置环境变量 解压到自己想要放置的路径后 配置系统用户的环境变量 新增系统变量 MAVEN HOME C Program Files JetBrains apache maven 3 8
  • 二维码 ThoughtWorks.QRCode 之 index was outside bounds of the array

    最近在使用ThoughtWorks QRCode过程中 单独生成一个二维码没有出现过问题 在重复利用QRCodeEncoder生成二维码的过程中 会出现index was outside bounds of the array错误 经过调试
  • JS 作用域

    var和let的比较 var是老版JavaScript中定义变量的标识符 let是新版JavaScript中定义变量的标识符 let的出现是为了解决var定义变量的一些遗留问题而推出的 在同一个作用域下 var允许重复声明 let不允许重复
  • SpringBoot整合Minio

    1 引入依赖 POM文件如下
  • 【Linux虚拟机】VirtualBox搭建linux虚拟机

    Linux从虚拟机创建到程序运行 ubuntu版 实际工作中 总是需要开发环境 测试环境和生产环境 但是很多小伙伴是没有这么多可供使用的服务器的 尤其是学习使用阶段 可能因为不熟悉服务器的配置 重复的重启 安装 卸载等 我们需要有自己可以随
  • 聊天相关表结构及业务逻辑

    表结构 CREATE TABLE t chat record id bigint 20 NOT NULL send user id bigint 20 DEFAULT NULL COMMENT 发送人 receive user id big
  • mysql视图的应用场景_MySQL视图适用于哪些场景?

    MySQL视图适用于哪些场景 答 1 视图能简化用户操作 视图机制使用户可以将注意力集中在所关心的数据上 如果这些数据不是直接来自基本表 则可以通过定义视图 使数据库看起来结构简单 清晰 并且可以简化用户的数据查询操作 例如 那些定义了若干
  • 服务器virsh不显示虚机,KVM之virsh常用命令

    沙发 1121644742 Post 2016 04 19 下午5 40 help 打印帮助 attach device 从一个XML文件附加装置 attach disk 附加磁盘设备 attach interface 获得网络界面 aut
  • Java创建student类

    目录 创建包 包名可以自拟 在包中创建student类 创建Penpal类继承student类 在HelloWorld中实现测试 创建一个叫做Student的类 对象属性 姓名 年龄 性别 身高 对象方法 说话 计算加法 年龄长一岁 类属性
  • 数据库应用:Mycat+HAProxy+Keepalived实现高可用

    目录 一 理论 1 高可用 2 部署高可用 二 实验 1 Mycat HAProxy Keepalived实现高可用 三 问题 1 开启HA Proxy失败 2 VMware 克隆linux 网卡UUID重复问题 3 keepalived状
  • 从零开始搭建Kafka集群遇到的问题

    文章目录 安装kafka 下载kafka 2 12 3 1 0 tgz 使用Xshell将文件传入虚拟机 解压 启动kafka 使用kakfa自带的zookeeper 修改kafka配置 启动kafka 使用kafka 创建主题 查看主题
  • 考试系统服务器考试机,网络考试系统——服务器考试管理系统

    内容介绍 原文档由会员 快乐浪子 发布 网络考试系统 服务器考试管理系统 内容丰富 建议下载阅览 页数 32 字数 12157 摘要 在网络技术逐渐渗入社会生活各个层面的今天 传统的考试方式也面临着变革 而网络考试则是一个很重要的方向 基于
  • 对称加密算法之RC4介绍及OpenSSL中RC4常用函数使用举例

    RC4是一种对称密码算法 它属于对称密码算法中的序列密码 streamcipher 也称为流密码 它是可变密钥长度 面向字节操作的流密码 RC4是流密码streamcipher中的一种 为序列密码 RC4加密算法是Ron Rivest在19
  • 开发要点-Vue3.0通用知识学习

    开发要点 Vue3 0通用知识学习 2020 09 18 发布的Vue3 0正式版 建议先学ts 因为Vue3 0框架多数都是用ts重写的 API文档仔细阅读 Vue3亮点 Performance 性能更快 Tree shaking sup
  • linux下查看磁盘分区,文件系统,磁盘文件系统的命令

    http www linuxsir org bbs thread214738 html 一 df 命令 df 是来自于coreutils 软件包 系统安装时 就自带的 我们通过这个命令可以查看磁盘的使用情况以及文件系统被挂载的位置 举例 S