df、du、fdisk:Linux磁盘管理
磁盘是Linux系统中一项非常重要的资源,如何对其进行有效的管理直接关系到整个系统的性能问题。对Linux磁盘管理稍微有一些学习和经验的朋 友们应该都知道df、du和fdisk这三个常用命令:df用于检查文件系统磁盘占用情况,du检查磁盘空间占用情况,而fdisk用于磁盘分区。
1.df
df命令可以获取硬盘被占用了多少空间,目前还剩下多少空间等信息,它也可以显示所有文件系统对i节点和磁盘块的使用情况。
df命令各个选项的含义如下:
-a:显示所有文件系统的磁盘使用情况,包括0块(block)的文件系统,如/proc文件系统。
-k:以k字节为单位显示。
-i:显示i节点信息,而不是磁盘块。
-t:显示各指定类型的文件系统的磁盘空间使用情况。
-x:列出不是某一指定类型文件系统的磁盘空间使用情况(与t选项相反)。
-T:显示文件系统类型。
我们先看看使用df命令的例子:
//列出各文件系统的磁盘空间使用情况
#df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda5 381139 332921 28540 93% /
/dev/hda1 46636 6871 37357 16% /boot
/dev/hda3 10041144 6632528 2898556 70% /home
none 127372 0 127372 0% /dev/shm
/dev/hda2 27474876 24130460 1948772 93% /usr
/dev/hda6 256667 232729 10686 96% /var
第1列是代表文件系统对应的设备文件的路径名(一般是硬盘上的分区);第2列给出分区包含的数据块(1024字节)的数目;第3,4列分别表示已用的和可用的数据块数目。
◆用户也许会感到奇怪,第3,4列块数之和不等于第2列中的块数。这是因为默认的每个分区都留了少量空间供系统管理员使用的缘故。即使遇到普通用户 空间已满的情况,管理员仍能登录和留有解决问题所需的工作空间。清单中Use%列表示普通用户空间使用的百分比,若这一数字达到100%,分区仍然留有系 统管理员使用的空间。
最后,Mounted on列表示文件系统的安装点。
//列出各文件系统的i节点使用情况。
#df -ia
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/hda5 98392 23919 74473 25% /
none 0 0 0 - /proc
/dev/hda1 12048 38 12010 1% /boot
none 0 0 0 - /dev/pts
/dev/hda3 1275456 355008 920448 28% /home
none 31843 1 31842 1% /dev/shm
/dev/hda2 3489792 133637 3356155 4% /usr
/dev/hda6 66264 9876 56388 15% /var //列出文件系统的类型。
#df -T
Filesystem Type 1k-blocks Used Available Use% Mounted on
/dev/hda5 ext3 381139 332921 28540 93% /
/dev/hda1 ext3 46636 6871 37357 16% /boot
/dev/hda3 ext3 10041144 6632528 2898556 70% /home
none tmpfs 127372 0 127372 0% /dev/shm
/dev/hda2 ext3 27474876 24130460 1948772 93% /usr
/dev/hda6 ext3 256667 232729 10686 96% /var2
2. du
du的英文原义为“disk usage”,含义为显示磁盘空间的使用情况,统计目录(或文件)所占磁盘空间的大小。该命令的功能是逐级进入指定目录的每一个子目录并显示该目录占用文件系统数据块(1024字节)的情况。若没有给出指定目录,则对当前目录进行统计。
df命令的各个选项含义如下:
-s:对每个Names参数只给出占用的数据块总数。
-a:递归地显示指定目录中各文件及子目录中各文件占用的数据块数。若既不指定-s,也不指定-a,则只显示Names中的每一个目录及其中的各子目录所占的磁盘块数。
-b:以字节为单位列出磁盘空间使用情况(系统默认以k字节为单位)。
-k:以1024字节为单位列出磁盘空间使用情况。
-c:最后再加上一个总计(系统默认设置)。
-l:计算所有的文件大小,对硬链接文件,则计算多次。
-x:跳过在不同文件系统上的目录不予统计。
下面举例说明du命令的使用:
//查看/mnt目录占用磁盘空间的情况
#du –abk /mnt
1 /mnt/cdrom
1 /mnt/floppy
3 /mnt //列出各目录所占的磁盘空间,但不详细列出每个文件所占的空间
#du
3684 ./log
84 ./libnids-1.17/doc
720 ./libnids-1.17/src
32 ./libnids-1.17/samples
1064 ./libnids-1.17
4944 .
输出清单中的第1列是以块为单位计的磁盘空间容量,第2列列出目录中使用这些空间的目录名称。
◆这可能是一个很长的清单,有时只需要一个总数。这时可在du命令中加-s选项来取得总数:
#du –s /mnt
3 /mnt //列出所有文件和目录所占的空间(使用a选项),并以字节为单位(使用b选项)来计算大小
#du –ab /root/mail
6144 mail/sent-mail
1024 mail/saved-messages
8192 mail
3、fdisk
fdisk可以划分磁盘分区。下面给出使用Fdisk命令进行磁盘分区的操作步骤:
#fdisk /dev/had //使用/dev/had作为默认的分区设备
Command (m for help): m //选择命令选项
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
用户通过提示键入“m”,可以显示Fdisk命令各个参数的说明。
Fdisk有很多参数,可是经常使用的只有几个。
◆在Linux分区过程,一般是先通过p参数来显示硬盘分区表信息,然后根据信息确定将来的分区。如下所示:
Disk /dev/sda: 4294 MB, 4294967296 bytes
255 heads, 63 sectors/track, 522 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 41 522 3871665 83 Linux
/dev/hda2 1 40 321268+ 82 Linux swap Partition table entries are not in disk order
Command (m for help):
◆如果想完全改变硬盘的分区格式,就可以通过d参数一个一个地删除存在的硬盘分区。删除完毕,就可以通过n参数来增加新的分区。当按下“n”后,可以看到如下所示:
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partiton number(1-4):1
First cylinder(1-1023):1
Last cylinder or + size or +sizeK or + sizeM(1-1023):+258M
这里要选择新建的分区类型,是主分区还是扩展分区;并选择p或是e。然后就是设置分区的大小。
◆要提醒注意的是,如果硬盘上有扩展分区,就只能增加逻辑分区,不能增加扩展分区。
◆在增加分区的时候,其类型都是默认的Linux Native,如果要把其中的某些分区改变为其他类型,例如Linux Swap或FAT32等,可以通过命令t来改变,当按下“t”改变分区类型的时候,系统会提示要改变哪个分区、以及改变为什么类型(如果想知道系统所支持 的分区类型,键入l),如下所示:
Command (m for help): t
Partition number (1-4): 1
Hex code (type L to list codes): 82
Changed system type of partition 1 to 82 (Linux swap)
改变完了分区类型,就可以按下“w”,保存并退出。如果不想保存,那么可以选择“q”直接退出,如下所示:
Command (m for help):w
通过如上的操作,就可以按照需要成功地划分磁盘分区了。
df、du、fdisk:Linux磁盘管理的更多相关文章
- df、du、fdisk:Linux磁盘管理三板斧的使用心得(转载)
From:http://os.51cto.com/art/201012/240726_all.htm 作者介绍:李洋(博客),博士毕业于中科院计算所.10多年来一直从事计算机网络信息安全研发工作,曾主 ...
- centos Linux下磁盘管理 parted,df ,du,fdisk,partprobe,mkfs.ext4,mount,/etc/fstab,fsck,e2fsck,mk2efs,tmpfs ,nr_inodes, LVM,传统方式扩容文件系统 第七节课
centos Linux下磁盘管理 parted,df ,du,fdisk,partprobe,mkfs.ext4,mount,/etc/fstab,fsck,e2fsck,mk2efs,tmpf ...
- Linux 磁盘管理(df fu fdisk mkfs mount)
Linux 磁盘管理 Linux磁盘管理好坏直接关系到整个系统的性能问题. Linux磁盘管理常用三个命令为df.du和fdisk. df : 列出文件系统的整体磁盘使用量 du : 检查磁盘空间使用 ...
- Linux 磁盘管理
Linux磁盘管理好坏管理直接关系到整个系统的性能问题. Linux磁盘管理常用三个命令为df.du和fdisk. df:列出文件系统的整体磁盘使用量 du:检查磁盘空间使用量 fdisk:用于磁盘分 ...
- linux 磁盘管理学习笔记
磁盘管理命令:fdisk df du fdisk #查看硬盘分区表 df #查看分区使用情况 du #查看文件占用空间情况lvdisplay #逻辑分区 [1] 李洋.df.du.fdisk:Linu ...
- linux磁盘管理系列-LVM的使用
LVM是什么 LVM是Linux操作系统的逻辑卷管理器. 现在有两个Linux版本的LVM,分别是 LVM1,LVM2.LVM1是一种已经被认为稳定了几年的成熟产品,LVM2 是最新最好的LVM版本. ...
- linux磁盘管理系列三:LVM的使用
磁盘管理系列 linux磁盘管理系列一:磁盘配额管理 http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html l ...
- linux磁盘管理系列一:磁盘配额管理
磁盘管理系列 linux磁盘管理系列一:磁盘配额管理 http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html l ...
- Linux磁盘管理,vi编辑器以及包管理器
一.Linux磁盘管理 Linux磁盘管理常用的三个命令为df,du,fdisk df:列出文件系统的整体磁盘使用量,利用这个命令来获取磁盘被占用了多少空间,,目前还剩下多少空间用法:df [-ahi ...
随机推荐
- Python+Selenium基础篇之4-XPath的使用
开始写自动化脚本之前,我们先学习几个概念,在完全掌握了这几个概念之后,有助于我们快速上手,如何去编写自动化测试脚本. 元素,在这个教程系列,我们说的元素之网页元素(web element).在网页上面 ...
- 聊聊、Spring 数据源
平时开发中我们每天都会跟数据库打交道,页面上显示的数字,图片,语音,等等都存在某个地方,而我们就是要从那个地方拿到我们想要的.现在存储数据的方式越来越多,多种多样,但用的最多的还是关系数据库.Spri ...
- Mysql 死锁
http://www.cnblogs.com/benshan/archive/2013/05/09/3068886.html 声明:以下讨论只是针对InnoDB存储引擎. 何为死锁? 死锁是对资源 ...
- 现代互联网的TCP拥塞控制(CC)算法评谈
动机 写这篇文章本质上的动机是因为前天发了一个朋友圈,见最后的写在最后,但实际上,我早就想总结总结TCP拥塞控制算法点点滴滴了,上周总结了一张图,这周接着那些,写点文字. 前些天,Linux中国微信公 ...
- python(5)-- 函数
python 函数 定义:函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 使用好处:函数能提高应用的模块性,和代码的重复利用率. 分类:(1)python 内建函数:pytho ...
- The type or namespace name 'Html' does not exist in the namespace 'System.Web.Mvc' (are you missing an assembly reference?)
The type or namespace name 'Html' does not exist in the namespace 'System.Web.Mvc' (are you missing ...
- 完美CSS文档的8个最佳实践
在css的世界,文档没有被得到充分的利用.由于文档对终端用户不可见,因此它的价值常常被忽视.另外,如果你第一次为css编写文档,可能很难确定哪些内容值得记录,以及如何能够高效完成编写. 然而,为C ...
- [论文]Clustering-Based Ensembles as an Alternative to Stacking
Clustering-Based Ensembles as an Alternative to Stacking 作者:Anna Jurek, Yaxin Bi, Shengli Wu, and Ch ...
- python之wxPython菜单使用详解
import wx APP_EXIT=1 #定义一个控件ID class Example(wx.Frame): def __init__(self, parent, id, title): super ...
- [Oracle] 临时将Physical Standby激活
Oracle 10g/11g下如何将物理Standby库临时激活用于测试 在实际运营环境中, 我们经常碰到类似这样的需求: 譬如想不影响现网业务评估DB补丁在现网环境中运行的时间, 或者是想在做DB切 ...