Linux磁盘管理

4.1 查看磁盘或目录的容量


df命令

df命令(disk filesystem)用于查看已挂载磁盘的总容量、使用容量、剩余容量等(默认以KB为单位显示)。

  • 参数:
-i	表示查看inode的使用状况(如果已使用100%,即使磁盘空间有富余,也会提示磁盘空间已满)

-h	表示使用合适的单位显示  

-k	表示以KB为单位显示  

-m	表示以MB为单位显示

df命令不加任何参数时,第1列为分区的名字;第2列为该分区的总容量;第3列为已使用容量;第4列为剩余容量;第5列为使用容量的百分比;最后一列为挂载点。

补充:磁盘分区名带tmpfs字样的为临时文件系统(重启消失),free命令可以查看swap分区的使用情况。


du命令

du命令(disk useage)用来查看某个目录或文件所占空间的大小(如果不指定单位,默认显示单位为KB)

语法:du [- abckmsh] [文件或目录名]

  • 参数:
-a	表示全部文件和目录的大小都列出来(后面如果不加参数,则只会列出目录(包含子目录)的大小)

-b	表示列出的值以B为单位输出

-k	表示以KB为单位输出

-m	表示以MB为单位输出

-h	表示系统自动调节单位

-c	表示最后加总

-s	表示只列出总和

通常使用du -sh filename


4.2 磁盘的分区和格式化


磁盘分区

fdisk命令用于Linux下硬盘的分区,但fdisk只能划分小于2TB的分区。

  • 语法:fdisk [-l] [设备名称],其选项只有 -l
    选项 -l 后面如果不加设备名称,会直接列出系统中所有的磁盘设备以及分区表;加上设备名称,则会列出该设备的分区表。

另外,fdisk 命令后面如果不加 -l 选项,则会进入另一个模式,在该模式下,可以对磁盘进行分区操作。

  • 参数:
p	表示打印当前磁盘的分区情况

n	表示建立一个新的分区

w	表示保存

q	表示退出

d	表示删除一个分区

使用 n 参数后,会提示选择 p(主分区)还是 e(扩展分区)

在Linux系统中,最多只能创建4个主分区,分区时只能存在1个扩展分区,前4个分区只能是主分区扩展分区。使用p查看,主分区的id为83,最后一列显示为Linux;而扩展分区的id为5,最后一列显示为Extended。

扩展分区无法被格式化,扩展分区的子分区称为逻辑分区(用l表示和创建),逻辑分区的id是从5开始的,因为前4个id为主分区或者扩展分区,并且逻辑分区必须是连续的分区。


4.3 格式化磁盘分区


命令mke2fs、mkfs.ext2、mkfs.ext3、mkfs.ext4和mkfs.xfs

前4个命令的作用一样(同一个man文档)。

  • 参数:
-b	表示分区时设定每个数据区块占用的空间大小(每个数据块支持1024B、2048B以及4096B)
 
-i	表示设定inode的大小

-N	表示设定inode的数量

-c	表示在格式化前先检测一下磁盘是否有问题

-L	表示预设该分区的标签(label)

-j	表示建立ext3格式的分区(如果使用 mkfs.ext3 命令,就不需要加这个选项)

-t	用来指定文件系统的类型,可以是ext2、ext3或ext4

mke2fs 并不支持把分区格式化成XFS类型,而只能使用 mkfs.xfs

ext4文件系统的默认块大小是4096(4KB),在格式化时,可以指定块大小,但超过4096KB无法正常挂载

命令 blkid 可以查看未挂载的分区类型

命令 e2label 用于查看或修改分区的标签,它只支持ext格式的文件系统,而不支持XFS文件系统


4.4 挂载/卸载磁盘


mount命令

命令mount用于查看当前系统已经挂载的所有分区、分区文件系统的类型、挂载点及一些选项等信息(查看某个已挂载分区的文件系统类型)。

  • 参数:
-a			挂载 /etc/fstab 中出现的所有需要挂载的磁盘分区

-o			用来指定挂载的分区有哪些特性,即 /etc/fstab 文件中的第四列内容

-o remount	重新挂载磁盘分区

-t			用来指定挂载的分区类型,默认不指定,自动识别

命令 umount 卸载磁盘分区,umount -l 命令可在不退出卸载分区的当前目录的同时卸载磁盘分区


/etc/fstab 配置文件

/etc/fstab文件中显示了系统启动时需要挂载的各个分区。

/etc/fstab 文件含义如下:
第一列:分区的标识,可以写分区的label、UUID和分区名
第二列:挂载点
第三列:分区格式
第四列:mount 的一些参数,一般为defaults(默认包含:rw、suid、dev、exec、auto、nouser、async)
第五列:表示是否被dump备份(1表示备份,0表示不备份)
第六列:表示开机时是否自检磁盘(1和2都表示检测,0表示不检测,自检时,1比2优先级高)

通过 blkid 命令获取各分区的UUID;

umount 命令后面可以跟挂载点和分区名,但不可以跟label和UUID。


手动增加swap空间

swap空间类似于Windows的虚拟内存,分区时一般指定虚拟内存大小为实际内存的2倍。

基本思路:建立swapfile → 格式化为swap格式 → 启用该虚拟磁盘

  • 首先,建立swapfile:
# dd if=/dev/zero of=/tmp/newdisk bs=1M count=100

dd 命令:if指定源;of指定目标文件;bs定义块的大小;count定义块的数量

  • mkswap命令,格式化为swap格式:
# mkswap -f /swap/newdisk
  • 启用swap分区磁盘:
# swapon /tmp/newdisk

swapoff 可以卸载swap分区磁盘;

free 用于查看内存的使用情况(-m 表示以MB为单位显示)。


parted工具

当在命令行输入parted 后,进入parted 命令的交互模式。输入help会显示帮助信息。

  • 常用功能:
1. check 	简单检查文件系统(建议用fsck检查文件系统)
2. mklabel 	创建分区表,不管是msdos(MBR)还是gpt,或是其它方式分区表
3. mkfs		创建文件系统(不支持ext3格式,最好使用parted分区,然后退出parted交互模式
4. mkpart	创建新分区
5. mkpartfs 建立分区及其文件系统
6. print	输出分区信息(free、number、all)
7. resize	调整指定的分区大小
8. rm		删除分区(rm number)

详见:使用parted磁盘分区及挂载


LVM

LVM 可以在使用很多硬盘的系统中,方便对硬盘管理,增加系统的扩展性。

  • 准备磁盘分区,先把硬盘umount:
  1. fdisk
  2. 创建新分区,分别是1G,n
  3. -t 改变分区类型为 8e(LVM),只有这样才可以做物理卷
  • 接下来准备物理卷:
  1. 安装命令pvcreate(创建物理卷、列出当前物理卷、删除物理卷)
  2. 创建完分区后,如果目录中还没有这个路径,使用partprobe添加进去
  3. 创建卷组vgcreate
  4. 查看卷组的信息vgdisplay(vgremove删除卷组)
  5. 创建逻辑卷(lvcreate -L 指定大小 -n 逻辑卷)
  6. 格式化磁盘(ext4适合做扩容缩容,XFS不支持缩容)
  7. 挂载逻辑卷

详见:LVM讲解


更多参考资料:

存储常识:http://forum.huawei.com/enterprise/zh/thread-274145-1-1.html

磁盘修复:https://www.2cto.com/os/201204/126370.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值