磁盘分区和文件系统管理

磁盘分区


两种分区方式:MBR,GPT 


MBR: Master Boot Record,1982年,使用32位表示扇区 数,分区不超过2T 


如何分区:按柱面 

    0磁道0扇区:512bytes 

    446bytes: boot loader 

    64bytes:分区表 

        16bytes: 标识一个分区 

    2bytes: 55AA 

4个主分区;3主分区+1扩展(N个逻辑分区)


GPT:GUID(Globals Unique Identifiers) partition table 支持128个分区,使用64位,支持8Z( 512Byte/block )64Z ( 4096Byte/block)

使用128位UUID 表示磁盘和分区 GPT分区表自动备份在头 和尾两份,并有CRC校验位

UEFI (统一扩展固件接口)硬件支持GPT,使操作系统启动




分区管理

列出设备

    lsblk

blob.png




创建分区


fdisk:创建MBR分区,也支持GPT,对于一块硬盘,最多只能管理15个分区


fdisk /dev/sdb 


gfisk /dev/sdb 类fdisk 的GPT分区工具

#]fdisk -l [-u] [device…] 

    子命令: 

    p 分区列表 

    t 更改分区类型 

    n 创建新分区 

    d 删除分区

    w 保存并退出 

    q 不保存并退出 



内核把已识别新的分区保存在文件 /proc/partation中


新增分区到内核中额度命令

    partx 

        -a  添加指定的分区

        -n  指定分区的范围


删除分区

    kpartx

        -a

        -n


或使用partprobe (不适用于CentOS6)

    partprobe [/dev/sd*]


fdisk与gdisk都是交互式的命令parted可以实时创建分区,需谨慎使用:




文件系统


        文件系统是操作系统用于明确存储设备或分区上的文件的方 法和数据结构;即在存储设备上组织文件的方法。操作系统 中负责管理和存储文件信息的软件结构称为文件管理系统, 简称文件系统。 

    

        从系统角度来看,文件系统是对文件存储设备的空间进行组 织和分配,负责文件存储并对存入的文件进行保护和检索的 系统。具体地说,它负责为用户建立文件,存入、读出、修 改、转储文件,控制文件的存取,安全控制,日志,压缩, 加密等。


文件系统类型


    Linux文件系统: :ext2(Extended file system), ext3, ext4, xfs(SGI), btrfs(Oracle), reiserfs, jfs( AIX), swap 

    光盘:iso9660 

    Windows:fat32, ntfs 

    Unix: FFS(fast), UFS(unix), JFS2 

    网络文件系统:NFS, CIFS

    集群文件系统:GFS2, OCFS2(oracle) 

    分布式文件系统:ceph, moosefs, mogilefs, glusterfs, Lustre 

    RAW:未经处理或者未经格式化产生的文件系统



根据其是否支持"journal"功能:

    日志型文件系统: ext3, ext4, xfs, … 

    非日志型文件系统: ext2, vfat

文件系统的组成部分: 

    内核中的模块:ext4, xfs, vfat 

    用户空间的管理工具:mkfs.ext4, mkfs.xfs,mkfs.vfat

Linux的虚拟文件系统:VFS 

查前支持的文件系统:cat /proc/filesystems



在linux中创建文件系统:重新创建文件系统会损坏原有文件

mkfs: make file system

    -t FSTYPE 

    mkfs -t ext2 = mkfs.ext2

    mkfs -t ext3 = mkfs.ext3

专门管理ext系列文件:

mke2fs

    -j: 创建ext3类型文件系统

    -b BLOCK_SIZE: 指定块大小,默认为4096;可用取值为1024、2048或4096;

    -L LABEL:指定分区卷标;

    -m #: 指定预留给超级用户的块数百分比

    -i #: 用于指定为多少字节的空间创建一个inode,默认为8192;这里给出的数值应该为块大小的2^n倍;

    -N #: 指定inode个数;

    -F: 强制创建文件系统;

    -E: 用户指定额外文件系统属性; 


blkid: 查询或查看磁盘设备的相关属性

    UUID

    TYPE

    LABEL

    e2label: 用于查看或定义卷标

    e2label 设备文件 卷标: 设定卷标

    tune2fs: 调整文件系统的相关属性

        -j: 不损害原有数据,将ext2升级为ext3;

        -L LABEL: 设定或修改卷标; 

        -m #: 调整预留百分比;

        -r #: 指定预留块数;

        -o: 设定默认挂载选项;

    acl

        -c #:指定挂载次数达到#次之后进行自检,0或-1表关闭此功能;

        -i #: 每挂载使用多少天后进行自检;0或-1表示关闭此功能;

        -l: 显示超级块中的信息;

dumpe2fs: 显示文件属性信息

    -h: 只显示超级块中的信息

fsck: 检查并修复Linux文件系统

    -t FSTYPE: 指定文件系统类型

    -a: 自动修复

e2fsck: 专用于修复ext2/ext3文件系统

    -f: 强制检查;

    -p: 自动修复;

挂载:将新的文件系统关联至当前根文件系统

卸载:将某文件系统与当前根文件系统的关联关系预以移除;

mount:挂载

mount 设备 挂载点


设备:

设备文件:/dev/sda5

卷标:LABEL=“”

UUID: UUID=“”

挂载点:目录

    要求:

    1、此目录没有被其它进程使用;

    2、目录得事先存在;

    3、目录中的原有的文件将会暂时隐藏;

mount: 显示当前系统已经挂载的设备及挂载点


mount [options] [-o options] DEVICE MOUNT_POINT

    -a: 表示挂载/etc/fstab文件中定义的所有文件系统

    -n: 默认情况下,mount命令每挂载一个设备,都会把挂载的设备信息保存至/etc/mtab文件;使用—n选项意味着挂载设备时,不把信息写入此文件;

    -t FSTYPE: 指定正在挂载设备上的文件系统的类型;不使用此选项时,mount会调用blkid命令获取对应文件系统的类型;

    -r: 只读挂载,挂载光盘时常用此选项

    -w: 读写挂载

    -o: 指定额外的挂载选项,也即指定文件系统启用的属性;

        remount: 重新挂载当前文件系统

        ro: 挂载为只读

        rw: 读写挂载



挂载完成后,要通过挂载点访问对应文件系统上的文件;

    umount: 卸载某文件系统

     umount 设备

    umount 挂载点

卸载注意事项:

挂载的设备没有进程使用;







原创文章,作者:zhanghuanyu,如若转载,请注明出处:http://www.178linux.com/40773

(0)
zhanghuanyuzhanghuanyu
上一篇 2016-08-29 08:49
下一篇 2016-08-29 08:49

相关推荐

  • 计算机的组成部分

    运算器:负责数据的运算和逻辑运算。 存储器:实现记忆功能的部件用来存放计算程序及参与运算的各种数据。 控制器:负责对程序规定的控制信息进行分析,控制并协调输入,输出操作或内存访问。 输入设备:实现计算程序和原始数据的输入。 输出设备:实现计算结果输出。

    Linux干货 2017-08-19
  • linux文本编辑利器-vim

    概述 Vim是从vi发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用,和Emacs并列成为类Unix系统用户最喜欢的文本编辑器。Vim强大的编辑能力中很大部分是来自于其普通模式命令。vim的设计理念是命令的组合。例如普通模式命令"dd"删除当前行,"dj"代表删除到下一行…

    Linux干货 2016-08-11
  • Tomcat性能优化-2

    修改Connector运行模式 启用NIO 或 APR bio介绍 bio(blocking I/O,阻塞式I/O操作),表示Tomcat使用的是传统的Java I/O操作 默认模式,性能最差,没有经过任何优化处理和支持 nio模式 nio(non-blocking I/O),Java SE 1.4…

    Linux干货 2016-09-19
  • Linux基础知识(六)-vim编辑器,crontab计划任务,bash脚本循环

    1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; [root@localhost ~]# cp /etc/rc.d/rc.sysinit /tmp [root@localhost ~]# vim&nbs…

    Linux干货 2016-10-31
  • 信息论的熵

    1.  前言    熵的概念最早起源于物理学,用于度量一个热力学系统的无序程度。    在信息论里则叫信息量,即熵是对不确定性的度量。从控制论的角度来看,应叫不确定性。信息论的创始人香农在其著作《通信的数学理论》中提出了建立在概率统计模型上的信息度量。他把信息定义为“用来消除不确定性的东西”。在信息世界,熵越…

    Linux干货 2016-03-27
  • MBR、GPT的结构和区别

    本章学习内容         ——–介绍MBR、GPT         ——–不同的启动流程         ——–分区结构 &nb…

    Linux干货 2016-08-29

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-29 11:20

    文章内容完整,磁盘管理相关命令和用总结的很详细,这是作者很用心的地方,但是对于硬盘基础部分,最好不要罗列一写名词,希望作者能通过查询资料来进行解释,这本身也是巩固和深入的过程。如果能自己画图来描述一下。