磁盘分区和文件系统管理

磁盘分区


两种分区方式: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
下一篇 2016-08-29

相关推荐

  • 第三周:文本处理工具wc,cut,sort,uniq,tr,tee命令练习和用户及组相关命令练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可; [root@app1 tmp]# who | cut -d" " -f1| uniq root dts centos 2、取出最后登录到当前系统的用户的相关信息; [r…

    Linux干货 2016-09-27
  • date命令总结

    在linux中man手册页,对date -d 参数的的说明比较模糊,一下的举例,进一步说明: #-d –date=STRING display time described by STRING not 'now' 命令: date -d nex-day +%Y%m%d    //明天日期 d…

    Linux干货 2016-08-05
  • 8月5号 练习+作业

    1,找出ifconfig 命令结果中本机的所有IPv4 地址 [root@localhost ~]# ifconfig |tr -cs '[:digit:].' '\n' |sort -t. -k3 |tail&nbsp…

    Linux干货 2016-08-07
  • AWK 的用法

    目录: 一、概述 二、awk基本语法格式 三、awk基本操作 四、awk条件及循环语句 五、awk函数 六、awk演示示例(源自于man手册) 一、概述 产品概述:  awk是一种编程语言,用于在linux/unix下对文本和数据进行扫描与处理。数据可以来自标准输入、文件、管道。&nbsp…

    Linux干货 2017-05-30
  • Linux系统分区管理

    管理分区     查看系统中的分区4种方式 [root@localhost ~]# ls /dev/sd* [来自内存] [root@localhost ~]# cat /proc/partitions [root@localhost ~]# lsblk /dev/sda  /dev/sda1  /dev/sda2  /dev/sda3 …

    Linux干货 2017-12-02

评论列表(1条)

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

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