附加:lvm
这是一个新系统,依然debian 6.0.6,走起

我在装系统的时候手动进行了分区(之前都是自动分区并配置lvm,感觉不怎么合适),三个主分区:/boot,/,/swap

预留了30G的空间,其实是我以一个20G的debian系统原版为backingfile(qemu)创建的一个50G的磁盘,所以会有30G空余

通过fdisk创建一个扩展分区,在创建一个逻辑分区,然后通过t命令将其id设置为8e(标准lvm分区)

必须要说明一下的是本文只是介绍一下lvm的基本操作,也是自己的备忘。并不涉及与raid的配合,因为本人木有环境,大神莫怪,权当学习。并且本文并不涉及fdisk等命令,若您想对此进行了解,小弟还有一篇文章http://www.cnblogs.com/fangfangmian/archive/2013/01/10/2855373.html
感兴趣的可以去瞧瞧看看,呵呵

p命令查看如下:

Command (m for help): pDisk /dev/sda: 53.7 GB, 53687091200 bytes
255 heads, 63 sectors/track, 6527 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0005982dDevice Boot Start End Blocks Id System
/dev/sda1 * 1 31 242688 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 31 2341 18554880 83 Linux
/dev/sda3 2341 2611 2171904 82 Linux swap / Solaris
/dev/sda4 2611 6527 31457631+ 5 Extended
/dev/sda5 2611 6527 31457600 8e Linux LVM

总感觉把extend分区留给后面新创建磁盘时用来折腾很正确,不然总感觉有点奇葩

好,w保存退出
提示can't什么东西,大概意思就是你这样修改后,磁盘中的管理分区的一个地方(暂时先这样理解,其实是super block/boot之类的)不能更新,需要重起或者运行partprobe命令,这个命令在另一个强大的磁盘管理工具parted中。
好,安装个parted先,安装完毕后运行partprobe,没有任何提示,嘛,我认为他正常工作了。

反正fdisk -l可以看到已经有了刚才的分区。

下面开始lvm操作

我们要处理的是那30G的磁盘空间,首先,我们将它初始化以下,先是物理卷,然后是逻辑卷,然后就可以对其操作了

初始化物理卷:

$ sudo pvcreate /dev/sda5
Physical volume "/dev/sda5" successfully created

貌似工作很正常

创建卷组:(嘛,卷组是为了创建逻辑卷准备的,感觉跟扩展分区的地位比较像)

$ sudo vgcreate jcklvm /dev/sda5
Volume group "jcklvm" successfully created

起了个名字,叫jcklvm,貌似工作的也很正常,很顺利么...

然后可以通过vgdisplay查看一下,可以看到比较详细的信息,关于卷组的

然后就可以在卷组上创建逻辑卷了:

$ sudo lvcreate -L 20G -n jckhome jcklvm
Logical volume "jckhome" created

我创建了一个大小为20G,名字叫jckhome,并且在jcklvm这个卷组上的逻辑卷,成功与否你懂得

接着我们应该在逻辑卷上创建文件系统:
mkfs啦

然后将它挂载到某个目录/mnt/jckhome上,df查看一下

$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 18G 3.3G 14G 20% /
tmpfs 2.0G 0 2.0G 0% /lib/init/rw
udev 2.0G 128K 2.0G 1% /dev
tmpfs 2.0G 0 2.0G 0% /dev/shm
/dev/sda1 230M 22M 197M 10% /boot
/dev/mapper/jcklvm-jckhome
20G 172M 19G 1% /mnt/jckhome

似乎已经成功了撒,至少现在已经可以使用这块空间了

然后你可以做得就是将你想要的东西复制到这里,我是准备将我的家目录放到这个地方的,不然20G空间实在不够用,复制过来,别忘了-r

$ sudo cp /home/jck/* /mnt/jckhome/ -r -a

再将原来的家目录删掉,换个名字吧先,免得悲剧了

$ sudo mv jck/ jck.old

重新挂载一下

$ sudo umount /mnt/jckhome/
$ sudo mkdir /home/jck
$ sudo mount -t ext4 /dev/jcklvm/jckhome /home/jck

这时就应该能够正常使用了,如果你的权限没问题的话,但是还没完,因为重启以后这些就都没有了...

还需要配置一下。
这步就像前一篇文章一样操作就可以了,修改/etc/fstab文件

/dev/jcklvm/jckhome /home/jck ext4 defaults 1 1

修改好后,重启,查看结果

我的结果是系统可以正常使用,使用df 查看结果与之前的结果一样。
这样基本就结束了,但可能有人会有疑问,因为这些工作fdisk完全能做的,比如搞个分区挂载到/home,为啥要用lvm

lvm的强大并不在这,而在于你可以动态分配磁盘空间的大小,刚才我只分配了20G的空间吧,但实际上空余的空间有30G哦,好,现在我的家目录空间不够了,怎么办?

两条命令解决全家老小的吃穿问题:

$ sudo lvextend -L+10G /dev/jcklvm/jckhome
[sudo] password for jck:
Extending logical volume jckhome to 30.00 GiB
Logical volume jckhome successfully resized

$ df -hFilesystem Size Used Avail Use% Mounted on
/dev/sda2 18G 3.3G 14G 20% /
tmpfs 2.0G 0 2.0G 0% /lib/init/rw
udev 2.0G 128K 2.0G 1% /dev
tmpfs 2.0G 0 2.0G 0% /dev/shm
/dev/sda1 230M 22M 197M 10% /boot
/dev/mapper/jcklvm-jckhome
20G 175M 19G 1% /home/jck

$ sudo resize2fs /dev/jcklvm/jckhome resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/jcklvm/jckhome is mounted on /home; on-line resizing required
old desc_blocks = 2, new_desc_blocks = 2
Performing an on-line resize of /dev/jcklvm/jckhome to 7864320 (4k) blocks.
The filesystem on /dev/jcklvm/jckhome is now 7864320 blocks long.

$ df -hFilesystem Size Used Avail Use% Mounted on
/dev/sda2 18G 3.3G 14G 20% /
tmpfs 2.0G 0 2.0G 0% /lib/init/rw
udev 2.0G 128K 2.0G 1% /dev
tmpfs 2.0G 0 2.0G 0% /dev/shm
/dev/sda1 230M 22M 197M 10% /boot
/dev/mapper/jcklvm-jckhome
30G 175M 28G 1% /home

是不是很轻松撒,如果是传统分区手段可能就要悲剧一段时间了,呵呵

再一个圣经一样的东西:
http://www.ibm.com/developerworks/cn/linux/filesystem/lvm/lvm-1/index.html
http://www.ibm.com/developerworks/cn/linux/filesystem/lvm/lvm-2/

谢谢

转载于:https://www.cnblogs.com/sarshes/archive/2013/01/10/2855374.html

linux lvm 磁盘管理相关推荐

  1. linux磁盘管理不用LVM,[linux] LVM磁盘管理(针对xfs和ext4不同文件系统)

    简单来说就是: PV:是物理的磁盘分区 VG:LVM中的物理的磁盘分区,也就是PV,必须加入VG,可以将VG理解为一个仓库或者是几个大的硬盘 LV:也就是从VG中划分的逻辑分区 如下图所示PV.VG. ...

  2. Linux LVM磁盘管理

    实验要求:lvm磁盘分区.并挂载 pvcreate 将物理硬盘分区初始化为物理卷 语法 pvcreate(选项)(参数) 选项 -f:强制创建物理卷,不需要用户确认: -u:指定设备的UUID: -y ...

  3. Raid管理、madam、Linux LVM的管理与使用

    一.RaidRAID(独立冗余磁盘阵列) 概念:RAID技术通过把多个硬盘设备组合成一个容量更大.安全性更好的磁盘阵列,并把数据切割成多个区段后分别存放在各个不同的物理硬盘设备上,然后利用分散读写技术 ...

  4. Linux系统磁盘管理总结

    1. Linux系统磁盘管理体系 (1) Linux的磁盘管理主要分为5个步骤: ① 在Linux服务器上添加相应的硬盘(如/dev/sda.sdb.sdc-): ② 对全新的服务器(没有操作系统)做 ...

  5. Linux命令-磁盘管理(二)

    Linux命令-磁盘管理(二) Linux mmount命令 Linux mmount命令用于挂入MS-DOS文件系统. mmount为mtools工具指令,可根据[mount参数]中的设置,将磁盘内 ...

  6. LINUX下磁盘管理的基本流程与相关操作命令

    LINUX下磁盘管理的基本流程与相关操作命令 磁盘的管理 添加磁盘 格式化分区 磁盘挂载 磁盘的管理 在Linux中我们可以通过以下几种方式来查看我们所用的磁盘 (1)df命令: 还可以添加后缀命令( ...

  7. RAID磁盘阵列和LVM磁盘管理

    RAID是英文Redundant Array of Independent Disks的缩写,中文简称为独立冗余磁盘阵列.简单的说,RAID是一种把多块独立的硬盘(物理硬盘)按不同的方式组合起来形成一 ...

  8. Linux系统命令——磁盘管理命令

    目录 查看使用量 df du 磁盘分区 fdisk lsblk查看磁盘 查看分区文件 磁盘格式化 mount/umount挂载/卸载 mount挂载 开机自动挂载 umount卸载 Linux磁盘管理 ...

  9. linux实验磁盘管理,从0到1学习网络安全 【Linux实验篇-LVM 磁盘管理】

    简介 Logical Volume Manager 是一种将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中. LVM 调整管理 ...

最新文章

  1. Elasticsearch内存分配设置详解
  2. 利用 socket 获取 tcp 包并解析的问题。
  3. php页面调用时间戳,php--------获取当前时间、时间戳
  4. Phpcms之核心目录phpcms
  5. [BZOJ3214][ZJOI2013]丽洁体(Hash+DP)
  6. 视频图像处理平台对比_情绪管理考勤机人脸识别原理与指纹识别性能对比-微幼科技...
  7. Python mat与array的区别
  8. (十三)linux中断底半部分处理机制
  9. phpcmsV9 添加内容:如何“增加复选框、下拉菜单”(含案例、截图)- 教程篇
  10. 【codevs4632】【BZOJ4326】运输计划,链剖+二分+差分
  11. java获取系统时间并自定义格式
  12. c语言编译为机器语言过程,C语言编译全过程
  13. bzoj 1654: [Usaco2006 Jan]The Cow Prom 奶牛舞会(Trajan)
  14. [Flex] Flex 控件类 的自定义事件添加
  15. android 解析XML方式(二)
  16. 集合竞价如何买入_教你几招!什么是集合竞价?散户如何参与集合竞价?
  17. [ 数据库原理 ] 函数依赖关系
  18. 网络隧道Tunnel技术
  19. linux 如何重命名
  20. mac远程登录虚拟机

热门文章

  1. android 事务管理软件,安卓 Android基于安卓移动终端的个人事务管理系统
  2. opc服务器消息通知代码,OPCClient浏览OPCServer的简单实例程序源代码.doc
  3. linux系统运行pbs出现ntf,Linux系统启动故障修复
  4. java我现在不懂看不懂,看都看不懂,难道我与Java无缘吗
  5. nokia 计算机手机,NOKIA手机与电脑的数据线连接
  6. java计算距离_java实现计算地理坐标之间的距离
  7. iec61131 3 html5,IEC61131-3{ed3.0}标准资料.doc
  8. 关于计算机网络的描述错误的是,【单选题】以下关于计算机网络定义的描述中,错误的是...
  9. Java商品信息查询
  10. php调用restful接口_分享一个PHP调用RestFul接口的函数