分类: LINUX
2011-11-10 19:07:10
相信大家都遇到过这么一个情况,随着系统的持续使用,会导致某个分区的容量日渐紧张。这时要是有个无损的分区工具,那该有多好呀。在Windows下有自带的磁盘管理工具,虽然功能有很多限制,但好歹也能对付一下。那在Linux下,该用什么工具呢?
实用的parted命令,可以帮助你解决这类烦恼。不过,parted命令只负责修改分区信息,原有的数据是否安全,得靠你自己保障。操用得当,完成可以实现无损分区的。
parted /dev/sda,即可进行交互式环境,注意需要管理员权限。
[jack@localhost ~]$ sudo parted /dev/sda
GNU Parted 2.3
使用 /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) help
输入help命令,会列出所有可用的命令。常用的是cp,rm,resize,resure,set,mkparfs,print。
1)print用于显示当前的分区情况
2)set可以设置分区的标志:set 1 boot on
3)mkpartfs创建分区:mkpartfs primary linux-swap 1KB 2MB
4)rm删除分区,可用resure恢复
5)cp将拷贝分区内容到新的分区
6)resize可以改变分区的大小,例如:resize 1 6 7326
实际的应用场景:无损压缩大分区
用resize可以修改分区的大小,但是要做到无损,只能减小该分区的结束位置,因为分区表的信息在起始的位置。但是如何知道,该分区已经占用了多少空间。可以用df命令来查看:有一项是available,注意不能用总容量-used部分计算,原因就不说了吧。这样resize可以保证无损压缩。
注意使用前,要先unmount该分区。交换分区要swapoff,才能修改。修改完后用swapon打开,swapon -s可以显示交换分区使用情况。更多的例子参见参考资料1。
还需要注意,修改完分区之后,要更新/etc/fstab
参考资料:
1.http://hi.baidu.com/3444542/blog/item/9d7d4e00a4136116738b653f.html