linux磁盘管理操作

linux磁盘管理操作

df命令

df命令参数功能:检查文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

语法:

df [-ahikHTm] [目录或文件名]

选项与参数:

  • -a :列出所有的文件系统,包括系统特有的 /proc 等文件系统;

  • -k :以 KBytes 的容量显示各文件系统;

  • -m :以 MBytes 的容量显示各文件系统;

  • -h :以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;

  • -H :以 M=1000K 取代 M=1024K 的进位方式;

  • -T :显示文件系统类型, 连同该 partition 的 filesystem 名称 (例如 ext3) 也列出;

  • -i :不用硬盘容量,而以 inode 的数量来显示

实例 1

将系统内所有的文件系统列出来!

[root@www ~]# df
Filesystem      1K-blocks      Used Available Use% Mounted on
/dev/hdc2         9920624   3823112   5585444  41% /
/dev/hdc3         4956316    141376   4559108   4% /home
/dev/hdc1          101086     11126     84741  12% /boot
tmpfs              371332         0    371332   0% /dev/shm

在 Linux 底下如果 df 没有加任何选项,那么默认会将系统内所有的 (不含特殊内存内的文件系统与 swap) 都以 1 Kbytes 的容量来列出来!

实例 2

将容量结果以易读的容量格式显示出来

[root@www ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/hdc2             9.5G  3.7G  5.4G  41% /
/dev/hdc3             4.8G  139M  4.4G   4% /home
/dev/hdc1              99M   11M   83M  12% /boot
tmpfs                 363M     0  363M   0% /dev/shm

实例 3

将系统内的所有特殊文件格式及名称都列出来

[root@www ~]# df -aT
Filesystem    Type 1K-blocks    Used Available Use% Mounted on
/dev/hdc2     ext3   9920624 3823112   5585444  41% /
proc          proc         0       0         0   -  /proc
sysfs        sysfs         0       0         0   -  /sys
devpts      devpts         0       0         0   -  /dev/pts
/dev/hdc3     ext3   4956316  141376   4559108   4% /home
/dev/hdc1     ext3    101086   11126     84741  12% /boot
tmpfs        tmpfs    371332       0    371332   0% /dev/shm
none   binfmt_misc         0       0         0   -  /proc/sys/fs/binfmt_misc
sunrpc  rpc_pipefs         0       0         0   -  /var/lib/nfs/rpc_pipefs

实例 4

将 /etc 底下的可用的磁盘容量以易读的容量格式显示

[root@www ~]# df -h /etc
Filesystem            Size  Used Avail Use% Mounted on
/dev/hdc2             9.5G  3.7G  5.4G  41% /

fdisk

fdisk 是 Linux 的磁盘分区表操作工具。

语法:

fdisk(选项)(参数)

选项与参数:

-b 分区⼤⼩ -l 列出指定的外围设备的分区表状况 -s 分区编号,将指定的分区⼤⼩输出到标准输出上,单位为区块 -u 搭配-l 显⽰,会⽤分区数⽬取代柱⾯数⽬,来表⽰每个分区的起始地址 -v 显⽰版本信息

fdisk交互指令说明
命令说 明命令说 明
a设置可引导标记v验证分区表
b编辑bsd磁盘标签w保存退出
c设置DOS操作系统兼容标记x附加功能
d删除一个分区
l显示已知文件系统类型。
m显示帮助菜单
n新建分区
o建立空白DOS分区表
p显示分区列表
q不保存退出
s新建空白SUN磁盘标签
t改变一个分区系统ID
u改变显示记录单位

分区步骤:

n——p主——1分区号——1起始柱面——分区大小 +n(数字)(容量指示(G、MB、KM))

n——e扩展——2分区号——起始柱面(默认直接回车)——柱面(默认直接回车)(所有剩余空间都扩展分区)

n——l逻辑——不用指定分区号——起始柱面(默认直接回车)——分区大小 +n(数字)(容量指示(G、MB、KM))——w(保存退出)

 

注意:Linux系统中硬盘1~4号分区号是保留下来给主分区和扩展分区使用的,逻辑分区不可以占用1~4号分区编号,有时间因为系统分区表正忙,则需要重新启动系统之后才能生效,也可以用partprobe命令强制重读所有分区文件,重新挂载分区内所有分区。

磁盘格式化

磁盘分割完毕后自然就是要进行文件系统的格式化,格式化的命令非常的简单,使用 mkfs(make filesystem) 命令。

语法:

mkfs [-t 文件系统格式] 装置文件名
[root@dfd001 ~]# mkfs
mkfs         mkfs.btrfs   mkfs.cramfs  mkfs.ext2    mkfs.ext3    mkfs.ext4    mkfs.minix   mkfs.xfs  
例如:mkfs  -t  ext4  /dev/sdb1

mount

用于挂载Linux系统外的文件。

mount命令格式: mount [-l]

查询系统已经挂载的设备。

mount命令格式2: mount -a

依据配置文件/etc/fstab的内容,自动挂载。

mount命令格式3: mount [-t 文件系统] [-L 卷标名] [-o 特殊选项] /

选项: -t 文件系统 : 加入文件系统类型来指定挂载的类型,可以ext3、ext4、iso9660等文件系统。

-L 卷标名:挂载指定卷标分区,不是按照设备文件挂载

-o 特殊选项:可以指定挂载的额外选项,不如读写权限、同步异步等,如果不指定则默认值生效。

mount命令格式4: mount -t iso9660 /dev/cdrom /mnt/cdrom

挂载光驱

光驱卸载: umount /dev/sro 和 umount /mnt/cdrom

注意:光驱在关机和使用完毕后一定要卸载,附则可能系统启动不了

mount命令格式5: mount -t vfat /dev/sdb1/mnt/usb/

挂载U盘

注意:如果U盘是乱码需要挂载时候加入中文编码和字体命令如下:

mount -t vfat -o incharset=utf8 /dev/sdb1 / mnt/usb

U盘卸载: umount /mnt/usb

mount**命令格式5: mount -t ntfs-3g 分区设备文件没那个 挂载点**

挂载NTFS分区

注意:Linux系统中需要先安装NTFS-3G插件,安装完成后需要挂载分区文件系统不是ntfs,而是ntfs-3g。

列出块设备信息

命令格式:lsblk

自动挂载分区

修改分区自动挂载文件:vim /etc/fstab

 

解释:第一列:设备文件名 第二列:挂载点 第三列:文件系统 第四列:挂载选项

第五列: 1 是否可以被备份 0 不备份 1 每天备份 2不定期备份

第六列: 2 是否检测磁盘 fsck 0 不检测 1 启动时检测 2 启动后检测

如果/etc/fstab错误,修复步骤:第一步根据提示输入root管理员密码,第二部因为没有写入权限,需要用命令或许写入权限:mount -o remount,rw/,然后重新把分区挂载,就可以修正/etc/fstab/文件错误。

LVMP 逻辑卷管理

  1. 简介LVM是Logical Volume Manager 的简称,中文就是逻辑卷管理。

    物理卷(PV,Physical Volume):就是真正的物理硬盘或分区

    卷组(VG,Volume Group):将多个物理卷合起来就组成了卷组,组成同一个卷组的物理卷可以是同一个硬盘的不同分区,也可以是不同硬盘上的不同分区。我们可以把卷组想象为一个逻辑硬盘。

    逻辑卷(LV,Logical Volume):卷组是一个逻辑硬盘,硬盘必须分区之后才能使用,这个分区我们称作逻辑卷。逻辑卷可以格式化和写入数据。我们可以把逻辑卷想象成为分区。

物理扩展(PE,Physical Extend):PE 是用来保存数据的最小单元,我们的数据实际上都是写入 PE 当中,PE 的大小是可以配置的,默认是 4MB。

     2.建立LVM的步骤

     首先需要把物理硬盘分成分区,当然也可以是整块物理硬盘,然后把物理分区建立成为物理卷(PV),也可以直接把整块硬盘都建立为物理卷,接下来把物理卷整合成为卷组(VG)。卷组就已经可以动态的调整大小了,可以把物理分区加入卷组,也可以把物理分区从卷组中删除,最后就是把卷组再划分成为逻辑卷(LV),当然逻辑卷也是可以直接调整大小的。我们说逻辑卷可以想象成为分区,所以也需要格式化和挂载。

硬盘分区

更改硬盘ID

创建方式就是使用fdisk交互命令,需要主要是的是硬盘ID要改成LVM的ID号8e。

 

建立物理卷

pvcreate

将物理硬盘分区初始化为物理卷

语法

pvcreate(选项)(参数)

  

选项

-f:强制创建物理卷,不需要用户确认;
-u:指定设备的UUID;
-y:所有的问题都回答“yes”;
-Z:是否利用前4个扇区。

参数

物理卷:指定要创建的物理卷对应的设备文件名。

实例

查看磁盘信息:

[root@localhost ~]# fdisk -l
Disk /dev/hda: 41.1 GB, 41174138880 bytes
255 heads, 63 sectors/track, 5005 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
​
   Device Boot      Start         End      Blocks   id  System
/dev/hda1   *           1          13      104391   83  Linux
/dev/hda2              14        1288    10241437+  83  Linux
/dev/hda3            1289        1925     5116702+  83  Linux
/dev/hda4            1926        5005    24740100    5  Extended
/dev/hda5            1926        2052     1020096   82  Linux swap / Solaris
/dev/hda6            2053        2235     1469916   8e  Linux LVM
/dev/hda7            2236        2418     1469916   8e  Linux LVM
/dev/hda8            2419        2601     1469916   8e  Linux LVM
/dev/hda9            2602        2784     1469916   8e  Linux LVM

检查有无 PV 在系统上,然后将/dev/hda6/dev/hda9建立成为PV格式

[root@localhost ~]# pvscan
No matching physical volumes found    #找不到任何的 PV 存在!

将6-9分区转成pv,注意大括号的用途:

[root@localhost ~]# pvcreate /dev/hda{6,7,8,9}
  Physical volume "/dev/hda6" successfully created
  Physical volume "/dev/hda7" successfully created
  Physical volume "/dev/hda8" successfully created
  Physical volume "/dev/hda9" successfully created

这就分別表示每个 PV 的信息与系统所有 PV 的信息:

[root@localhost ~]# pvscan
  PV /dev/hda6         lvm2 [1.40 GB]
  PV /dev/hda7         lvm2 [1.40 GB]
  PV /dev/hda8         lvm2 [1.40 GB]
  PV /dev/hda9         lvm2 [1.40 GB]
  Total: 4 [5.61 GB] / in use: 0 [0   ] / in no VG: 4 [5.61 GB]

更详细的列示出系统上面每个 PV 信息:

[root@localhost ~]# pvdisplay
  "/dev/hda6" is a new physical volume of "1.40 GB"
  --- NEW Physical volume ---
  PV Name               /dev/hda6  #实际的 partition 分区名称
  VG Name                          #因为尚未分配出去,所以空白!
  PV Size               1.40 GB    #就是容量说明
  Allocatable           NO         #是否已被分配,结果是 NO
  PE Size (KByte)       0          #在此 PV 內的 PE 大小
  Total PE              0          #共分割出几个 PE
  free PE               0          #沒被 LV 用掉的 PE
  Allocated PE          0          #尚可分配出去的 PE 数量
  PV UUID               Z13Jk5-RCls-UJ8B-HzDa-Gesn-atku-rf2biN
....(底下省略)....

删除物理卷:

[root@localhost ~]# pvremove /dev/sdb2
Labels on physical volume "/dev/sdb2" successfully wiped

修改物理卷属性:

[root@localhost ~]# pvchange -x n /dev/sdb1    #禁止分配指定物理卷上的PE
Physical volume "/dev/sdb1" changed  
1 physical volume changed / 0 physical volumes not changed 

建立卷组

命令格式:vgcreate [选项] 卷组名 物理卷名

选项:-s PE 大小:指定 PE 的大小,单位可以是 MB,GB,TB 等。如果不写默认 PE 大小事 4MB。

实例

使用vgcreate命令创建卷组 “vg1000”,并且将物理卷/dev/sdb1/dev/sdb2添加到卷组中。在命令行中输入下面的命令:

[root@localhost ~]# vgcreate vg1000 /dev/sdb1 /dev/sdb2  #创建卷组"vg1000"

查看物理卷命令格式: vgscan和 vgdisplay

增加卷组容量: vgextend 卷组名 物理卷名

[root@dfd001 ~]# vgextend centos /dev/sdb1
  Volume group "centos" successfully extended
[root@dfd001 ~]# vgextend centos /dev/sdb2
  Volume group "centos" successfully extended
[root@dfd001 ~]# pvscan 
  PV /dev/sda2   VG centos          lvm2 [<39.00 GiB / 4.00 MiB free]
  PV /dev/sdb1   VG centos          lvm2 [<20.00 GiB / <20.00 GiB free]
  PV /dev/sdb2   VG centos          lvm2 [<40.00 GiB / <40.00 GiB free]
  Total: 3 [<98.99 GiB] / in use: 3 [<98.99 GiB] / in no VG: 0 [0   ]
​

减小卷组容量: vgreduce 卷组名 物理卷名

删除卷组:vgremove 卷组名

建立逻辑卷

命令格式: lvcreate [选项] [-n 逻辑卷名] 卷组名

选项:--L 容量:指定逻辑卷大小,单位 MB,GB,TB 等

-l 个数:按照 PE 个数指定逻辑卷大小,这个参数需要换算容量,太麻烦

-n 逻辑卷名:指定逻辑卷名

查看逻辑卷命令:lvscan 和 lvdisplay

调整逻辑卷大小命令

命令格式:lvresize [选项] 逻辑卷设备文件名

选项:-L 容量:安装容量调整大小,单位为“kKmMgGtT”字节。使用+代表增加空间,-号代表减少空间。如果直接写容量,代表设定逻辑卷大小为指定大小。

-l 个数:按照 PE 个数调整逻辑卷大小

实例

使用lvresize命令调整最大的逻辑卷大小。在命令行中输入下面的命令:

[root@localhost ~]# lvresize -L +200M /dev/vg1000/lvol0     #将逻辑卷空间增加200M

输出信息如下:

Extending logical volume lvol0 to 280.00 MB
Logical volume lvol0 successfully resized

扩容要扩容逻辑卷

lvextend命令用于逻辑卷在线扩容,也就是说lvextend扩容是不需要停机的,应用服务也不需要关闭,其语法格式如下:

lvextend  [参数]  LogicalVolume[Path] [ PhysicalVolumePath... ]

常用参数:

-l +  :指定逻辑卷的LE个数,如 -l +200
-L + :表示增加多少空间,如 -L +15G ,单位有bBsSkKmMgGtTpPeE
-l +100%FREE    :表示增加vg的全部可用空间
123

注意:lvextend 扩展后只是扩展了lv的大小,而此时文件系统并未感知到,所有还需要使用xfs_growfs、resize2fs等命令来扩展文件系统,xfs_growf命令是扩展xfs文件系统,resize2fs是扩展ext4文件系统。

实例:

[root@dfd001 ~]# lvextend -l +100%FREE /dev/centos/root 
  Size of logical volume centos/root changed from 36.99 GiB (9470 extents) to <96.99 GiB (24829 extents).

调整完大小后使用

xfs_growf命令是扩展xfs文件系统,resize2fs是扩展ext4文件系统。

命令格式:xfs_growf [选项] [设备文件名] [调整的大小]

命令格式:resize2fs [选项] [设备文件名] [调整的大小]

选项:-f: 强制调整

-L:指定逻辑卷的大小,单位为“kKmMgGtT”字节

设备文件名:指定调整哪个分区的大小

调整的大小:指定把分区调整到多大,要加 M,G 等单位。如果不加大小,会使用整个分区

xfs_growf`命令是扩展`xfs`文件系统,实例
[root@dfd001 ~]# xfs_growfs /dev/centos/root 
meta-data=/dev/mapper/centos-root isize=512    agcount=4, agsize=2424320 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=9697280, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=4735, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 9697280 to 25424896

删除逻辑卷命令:

命令格式:lvremove 逻辑卷设备文件名

注意:在有数据的情况下,不建议修改、删除逻辑卷等操作,因为很有可能要丢失数据,或报错等情况。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值