浅析Linux下磁盘管理工具
发布时间:2022-10-12 12:55:52 所属栏目:Linux 来源:
导读: 前段时间周围的同学都在装Linux系统,遇到最多的问题之一就是磁盘分区问题,为此我专门花时间简要研究了下Linux下各种磁盘管理工具,总结出了一些我认为比较简单实用的用法,在这里分享出来。
mkfs
mkfs
|
前段时间周围的同学都在装Linux系统,遇到最多的问题之一就是磁盘分区问题,为此我专门花时间简要研究了下Linux下各种磁盘管理工具,总结出了一些我认为比较简单实用的用法,在这里分享出来。 mkfs mkfs,即make file system,显然是分区格式化工具,可以把已有分区格式化成指定的文件系统。典型的用法如 # mkfs -t ext4 /dev/sda3 # 把/dev/sda3格式化成ext4 # mkfs.ntfs /dev/sdc1 # 把/dev/sdc1格式化成ntfs 在这里mkfs.FS_TYPE和mkfs -t FS_TYPE是一样的,因为每个文件系统的格式化工具不一样,mkfs只是一个统一的前端,根据-t指定的FS_TYPE在特定的路径里面寻找并调用mkfs.FS_TYPE来进行具体的格式化工作。-t FS_TYPE后面可以接一些每个mkfs.FS_TYPE专有的参数,一般情况下可忽略,使用默认值即可。显然,mkfs应该用在已经有了合适的分区,要把分区格式化成需要的文件系统的情况。如果需要改变分区,则需要用下面的一些工具。 fdisk, cfdisk, sfdisk fdisk是一个基于菜单的分区表管理工具,可以查看分区信息,进行大多数分区操作,比如最常用的新建删除,man page上提示这个程序有一些bug,尽量不要使用。cfdisk功能和fdisk相似,用户界面基于curses库,相对fdisk的菜单命令式比较友好,推荐使用。sfdisk则是的非交互版本,一切操作都在命令行参数中给出,比较适合在脚本中使用,但是man page里面也说了,for hackers only,不推荐新手尝试。在这里主要介绍cfdisk,典型用法如 # cfdisk /dev/sda # 操作/dev/sda的分区表,注意参数应该是一个磁盘,而不是一个分区 如果省略磁盘参数,则默认是/dev/sda。进去后是一个非常直观的界面,列出了所有分区的信息,底部是可对当前选择项进行的操作,新建或删除分区都非常简单。cfdisk还可以选择分区的类型,不过在这里给出没有非常具体的文件系统,而且选择以后似乎也不会实际格式化分区建立文件系统,只是更改一下分区头部的信息,所以建议只用cfdisk进行分区操作,分好区后用mkfs格式化。 gdisk, cgdisk, sgdisk 这三个命令与*fdisk系列命令相对应,区别是*disk只能识别传统的mbr分区表,而*gdisk这三个命令只能识别新的guid分区表。guid分区表是一种为替代传统的mbr分区表而发明的新的磁盘分区机制,克服了很多mbr的历史局限性。但是由于固件支持以及软件兼容性的原因,guid分区表在实际安装使用中会出现很多几乎是不可克服问题。比如,你应该要把整块硬盘格式化,才能在磁盘上建立guid分区表;然后,你的windows也必须用uefi方式而非传统的bios方式启动,这又涉及到固件硬件的支持问题……前段时间帮同学装fedora的时候就遇到了类似的问题,安装程序假定磁盘使用guid分区表,但实际上是mbr,于是每到把分区挂载信息写入磁盘那一步都会出错,提示说磁盘缺少gpt标签。Google了好久,最后把安装u盘里的efi文件夹删除才解决问题。所以,一般情况下,还是不要接触guid分区表的好。 parted parted是所有磁盘工具中最强大的一个,提供的是与fdisk相似的基于菜单命令的界面,能识别mbr和guid分区表,提供新建删除修复分区对齐检查以及改变分区和磁盘配置的功能。用法和上面相似 # parted /dev/sda 其中新建分区的操作比较精细,需要提供起始扇区和终止扇区,如果输错的话很可能破坏现有的扇区,所以不建议在这里新建分区。我觉得parted真正强大之处在于它可以在磁盘分区表损坏的时候正常工作,并提供新建分区表的功能,而cfdisk和cgdisk在分区表损坏的时候无法正常工作。mktable菜单命令可以擦除所有磁盘分区数据并新建分区表,输入msdos来新建传统的mbr分区表,或者输入gpt新建guid分区表。 gparted gparted是parted的图形界面版本,提供了与parted同样强大的功能,但易用性上要好得多。在这里可以完成parted,cfdisklinux分区工具,mkfs能完成的几乎所有操作,并且在界面的上半部分有一个磁盘分区布局的图,可以非常清楚的显示分区大小及相对位置,下半部分是分区的列表,可以分别对每个分区进行丰富的操作。用法也很简单 # gparted /dev/sda 可能gparted唯一的缺点就是需要图形界面,而在某些情况下是没有图形界面可用的,并且在一定程度上图形界面是不符合黑客的审美的:-) 进一步了解 上面我只是给出了我个人研究出来的一些用法,虽然简单却能应付大多数情况。如果想要知道每个命令的具体用法以及一些注意事项,可以参考每个命令的man page,上面有你需要的一切信息。如果想进一步了解mbr分区表以及guid分区表,可以参看维基百科相关条目。 另外一个对新手非常重要的是,磁盘分区是相当危险的操作,稍有不慎就可能丢失几十甚至上百G对你非常重要的信息。所以,平常要养成常备份的好习惯(可悲的是我目前还没有这个习惯:-(),进行磁盘操作时一定要头脑清醒,知道自己正在输入的命令可能造成什么后果,按回车键之前反复确认屏幕上的命令和你头脑中想的一样。 这是第一篇技术文章,虽然讲得很浅,希望对大家有帮助,也希望能给自己开个好头:-) (编辑:我爱制作网_沈阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐


浙公网安备 33038102330576号