磁盘分区及初步文件系统

磁盘分区

磁盘分区有两种方式:
    MBR, GPT
    
MBR: Master Boot Record,1982年,使用32位表示扇区数 ,分区不超过2T
    
分区时按柱面分区0 磁道0 扇区:512bytes    
          446bytes: boot loader   
          64bytes :分区表        
              16bytes:  标识一个分区
              因此mbr分区只能有四个主分区    
          2bytes: 55aa(若没有此表示,会被系统认为是一个干净的硬盘)
    
分区时的要求:    4 个主分区;3主分区+1扩展(N个逻辑分区)

GPT分区

GPT:GUID patition table  支持128个 个 分区,使用64 位,支持8Z( 512Byte/block  )64Z ( 4096Byte/block)
    
使用128 位UUID 区 表示磁盘和分区 GPT 分区表自动备份在头和尾两份,并有CRC 校验位

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

列出可用的磁盘设备:
    图形化磁盘管理功能工具:点击“应用程序”-> “系统工具”-> “磁盘”或执行命令gnome-disks
    
管理分区:
    列出块设备
        blkid
[root@laodneg777 ~]# blkid
/dev/sr0: UUID="2015-12-09-22-36-30-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos" 
/dev/sda1: UUID="7c25120e-2371-413d-b584-fdd695b96702" TYPE="xfs" 
/dev/sda2: UUID="f4406f6a-e495-45a0-a85e-3b059c0d3130" TYPE="xfs" 
/dev/sda3: UUID="19470291-724c-4f01-b6e1-7109ad22be1b" TYPE="xfs" 
/dev/sda5: UUID="c3460309-9e8c-4037-8684-4c6bdcabbacb" TYPE="swap" 
/dev/sdc: PTTYPE="dos" 
创建分区使用:
    fdisk:创建MBR分区,也支持GPT,对于一块硬盘,最多只能管理15 分区
    gdisk  创建GPT 分区
    GNU parted高级分区操作(创建、复制、调整大小等等)
partprobe:重新设置内存中的内核分区表版本

分区工具

分区工具:
    fdisk   gdisk
    
    fdisk /dev/sdb
    gdisk /dev/sdb  类fdisk的GPT 分区工具
    # fdisk -l [-u] [device...]
    子命令:
    
       a   toggle a bootable flag
       b   edit bsd disklabel
       c   toggle the dos compatibility flag
       d   delete a partition
       g   create a new empty GPT partition table
       G   create an IRIX (SGI) partition table
       l   list known partition types       
       m   print this menu       
       n   add a new partition
       o   create a new empty DOS partition table
       p   print the partition table
       q   quit without saving changes
       s   create a new empty Sun disklabel       
       t   change a partition's system id
       u   change display/entry units
       v   verify the partition table
       w   write table to disk and exit
       x   extra functionality (experts only)
    
    常用选项

        p  显示分区列表
        t  更改分区类型(system id号)
        n  创建新分区
        d  删除分区
        w  保存并退出
        q  不保存并退出
        
同步分区表
    查看内核是否已经识别新的分区:
        cat /proc/partations
    通知内核重新读取硬盘分区表
        新增分区用
        partx -a -n M:N /dev/DEVICE
        kpartx -a /dev/DEVICE -f: force
        删除分区用
        partx -d -n M:N /dev/DEVICE
        centos6: –nr N-M
    CentOS 5 ,7:  使用partprobe
    partprobe [/dev/DEVICE]

parted

parted的操作都是实时生效的,要小心使用
 
 用法:
    parted[选项]...[设备[命令[参数]...]...]  
        parted /dev/sdb mklabel gpt|msdos
        parted /dev/sdb print
        parted /dev/sdb mkpart primary 1 200  (默认M) )
        parted /dev/sdb rm 1
        parted -l

文件系统

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

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

文件系统类型

Linux 文件系统: ext2, ext3, ext4, xfs (SGI ), btrfs(Oracle ), reiserfs, jfs(AIX ), swap光盘:iso9660
Windows :fat32, ntfsUnix: 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

创建文件系统

mkfs命令:
    (1) # mkfs.FS_TYPE /dev/DEVICE
            ext4
            xfs
            btrfs
            vfat
    (2) # mkfs -t FS_TYPE /dev/DEVICE
            -L 'LABEL':  设定卷标            
 创建 ext文件系统
     mke2fs :ext系列文件系统专用管理工具
        -t {ext2|ext3|ext4}        
        -b {1024|2048|4096}        
        -L 'LABEL'        
        -j: 于 相当于 -t ext3            
        mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3
        -i#:为数据空间中每多少个字节创建一个inode ;此大小不应该小于block 的大小        
        -N #:为数据空间创建个多少个个inode        
        -I  :一个inode 记录大小128---4096        
        -m #:  默认5%, 为管理人员预留空间占总空间的百分比        
        -O FEATURE[,...] :启用指定特性        
        -O ^FEATURE:关闭指定特性

文件系统标签

指向设备的另一种方法
与设备无关
blkid :块设备属性信息查看
    blkid [OPTION]... [DEVICE]
        -U UUID:根据指定的UUID来查找对应的设备
        -L LABEL:根据指定的LABEL来查找对应的设备
e2label :管理ext 系列文件系统的LABEL
    # e2label DEVICE [LABEL]
    
findfs  :查找分区
    findfs [options] LABEL=<label>
    findfs [options] UUID=<uuid>

tune2fs

tune2fs :重新设定ext系列文件系统可调整参数的值
    -l :查看指定文件系统超级块信息;super block    
    -L 'LABEL' :修改卷标    
    -m # :修预留给管理员的空间百分比    
    -j:  将ext2 升级为ext3   
    -O:  文件系统属性启用或禁用, 
    –O ^has_journal    
    -o:  调整文件系统的默认挂载选项,–o ^acl    
    -U UUID:  修改UUID号
    dumpe2fs:
        -h :查看超级块信息(分组信息),分区用分组管理

文件系统检测和修复

常发生于死机或者非正常关机之后
挂载为文件系统标记为“dirty” 
fsck: File System Check
    fsck.FS_TYPE
    fsck -t FS_TYPE
    -a:  自动修复错误    
    -r:  交互式修复错误注意: FS_TYPE一定要与分区上已经文件类型相同;
e2fsck :ext 系列文件专用的检测修复工具
    -y :自动回答为yes    
    -f :强制修复    
    此上两种修复方法必须在硬盘没有挂载的情况下!!!!!!!

挂载mount

挂载: 将额外文件系统与根文件系统某现存的目录建立起关联关系,进而使得此目录做为其它文件访问入口的行为
卸载:为解除此关联关系的 过程
把设备关联挂载点:mount Point
    mount
卸载时:可使用设备,也可以使用挂载点
    umount
挂载点下原有文件在挂载完成后会被临时隐藏
挂载点目录一般为空

挂载文件系统

用mount命令挂载文件系统      
挂载方法:mount DEVICE MOUNT_POINT
mount :通过查看/etc/mtab文件显示当前已挂载的所有设备
mount [-fnrsvw][-t vfstype][-o options]device dir    
device :指明要挂载的设备;        
    (1)  设备文件:例如/dev/sda5        
    (2)  卷标:-L 'LABEL', 如 例如 -L 'MYDATA'        
    (3) UUID, -U 'UUID'如 :例如 -U '0c50523c-43f1-45e7-85c0-a126711d406e'        
    (4)  伪文件系统名称:proc, sysfs, devtmpfs, configfs    
dir :挂载点        
    事先存在;建议使用空目录        
    进程正在使用中的设备无法被卸载

mount 常用命令选项

-t vsftype:指定要挂载的设备上的文件系统类型
-r: readonly ,只读挂载
-w: read and write,  读写挂载
-n:  不更新/etc/mtab ,相当于#mount
-a :自动挂载所有支持自动挂载的设备(定义在了/etc/fstab文件中,且挂载选项中有auto 功能)
-L 'LABEL':  以卷标指定挂载设备
-U 'UUID':  以UUID 指定要挂载的设备
-B, --bind:  绑定目录到另一个目录上查看内核追踪到的已挂载的所有设备:
    cat /proc/mounts
    
-o options :( 挂载文件系统的选项) ,多个选项使用逗号分隔    
    async :异步模式
    sync :同步模式, 内存更改时,同时写磁盘
    atime/noatime :包含目录和文件
    diratime/nodiratime :目录的访问时间戳
    auto/noauto :是否支持自动挂载, 是否支持-a 选项
    exec/noexec :是否支持将文件系统上运行应用程序
    dev/nodev :是否支持在此文件系统上使用设备文件
    suid/nosuid :不否支持suid 和sgid 权限
    remount :重新挂载
    ro :只读
    rw: : 读写
    user/nouser :是否允许普通用户挂载此设备,默认管理员才能挂载
    acl :启用此文件系统上的acl 功能
Defaults :相当于rw, suid, dev, exec, auto, nouser, async

卸载命令

查看挂载情况:    
    #findmnt MOUNT_POINT
查看正在访问指定文件系统的进程:    
    #lsof MOUNT_POINT
    #fuser -v MOUNT_POINT
终止所有在正访问指定的文件系统的进程:    
     # fuser -km MOUNT_POINT
卸载:    
    # umount DEVICE
    # umount MOUNT_POINT
挂载点和/etc/fstab
    配置文件系统体系
    被 被mount 、fsck 和其它程序使用
    系统重启时保留文件系统体系
    可以在设备栏使用文件系统卷标
    使用mount -a  命令挂载/etc/fstab中的所有文件系统

文件挂载配置文件

/etc/fstab 每行定义一个要挂载的文件系统;
    要挂载的设备或伪文件系统
    挂载点
    文件系统类型
    挂载选项
    转储频率
    自检次序
要挂载的设备或伪文件系统:
    设备文件、LABEL(LABEL="")、UUID(UUID="") 、伪文件系统名称(proc,sysfs)
挂载选项: defaults
转储频率: 
    0 :不做备份    
    1 :每天转储    
    2 :每隔一天转储
自检次序: 
    0 :不自检    
    1 :首先自检;
    一般只有rootfs才用1

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

(0)
dxkbokedxkboke
上一篇 2016-08-30
下一篇 2016-08-30

相关推荐

  • mount中-o的选项利用

        Mount下—-o 选项的各项用处  mount-o 选项 sync,async 同步模式,异步模式(defaults)         此选项的默认模式为异步模式。在同步模式下,内存的任何修改都会实时的同步到硬盘当中,这种模式的…

    2017-08-19
  • mongodb的复制集实现

    简介:  mongodb有两种类型的复制,第一种是同于MySQL的主从复制模式,第二种是复制集,提供了自动故障转移的主从复制集群。其中复制集没有固定的主节点,当一个主机的故障后从节点会重新“选举”出一个新的主节点,从而提高的系统的可用性 一、实验环境: (1)各节点信息: node1: 172.16.2.12 node2: 172.16.2.13 …

    Linux干货 2015-09-05
  • 第六周小练习

    详细总结vim编辑器的使用并完成一下练习 vim编辑器的基本使用 vim模式: 1、编辑模式(命令模式) 2、输入模式 3、末行模式  一、打开文件 vim /path/to/somefile 打开单个文件 如果文件存在为打开,否则保存退出时为新建 vim /path/to/somefile vim +# : 打开文件…

    Linux干货 2016-12-19
  • 设计模式 ( 二十 ) 访问者模式Visitor(对象行为型)

    特此说明:对访问者模式理解不是特别透彻,若有误,请指正,谢谢! 1.概述 在软件开发过程中,对于系统中的某些对象,它们存储在同一个集合collection中,且具有不同的类型,而且对于该集合中的对象,可以接受一类称为访问者的对象来访问,而且不同的访问者其访问方式有所不同。 例子1:顾客在超市中将选择的商品,如苹果、图书等放在购物车中,然后到收银员处付款。在购…

    Linux干货 2015-04-07
  • 第五周作业

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; ~]# grep  “^[[:space:]]\{1,\}” /boot/grup/grup.conf                     &…

    2017-03-01
  • NoSQL之MongoDB

    分布式系统理论 1、 CAP: 分布式系统只能满足其中两个  Consistency :一致性 Availibility:可用性 Partitions Tolerance :分区容错性 C,A : SQL 传统的数据库。 两段机制。 C,P :悲观枷锁机制,分布式加锁机制。加锁机制与SQL不太一样。 这里的C为最终一致性。 放弃C后的特例,既可以保证可用性,…

    2018-01-09