磁盘分区及初步文件系统

磁盘分区

磁盘分区有两种方式:
    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

相关推荐

  • ☞SELinux

    ☞SELinux 概述 SELinux(Secure Enhanced Linux)是美国国家安全局(NSA)和SCC开发的Linux的一个强制访问控制的安全模块。2000年以GNU GPL发布,Linux内核2.6版本后集成在内核中。它能够限制权限,进程只能访问那些在他的任务中所需要文件。 Selinux是根据最小权限模型去限制进程在对象(如文件,目录,端…

    Linux干货 2016-09-18
  • 第10天:程序包,脚本,sed

    http://note.youdao.com/yws/public/redirect/share?id=b9432a76ff1180b42e01f6eb7c9fc90e&type=false

    Linux干货 2016-08-18
  • GRUB管理

    对于运维人员来说,想要熟练掌握linux,那么久要对linux的启动流程有一个详细的了解,而今天我们就一起来学习一下linux启动中最重要的一个阶段——GRUB引导阶段。 Linux启动流程 grup: GRand Unified Bootloader  由上图可知,grub属于系统启动过程中一个必须的阶段。而这个阶段又分为了三个小的阶段,分别是s…

    2017-09-02
  • CentOS 6开机启动流程理论篇

    CentOS 6开机启动流程理论篇 centos 系统的启动流程 grub 破坏Linux的核心文件再修复体验系统启动流程 概述 任 何系统启动的第一步必然是加电,然后计算机硬件会主动地读取BIOS来加载硬件设备信息并检测,之后系统会主动地读取第一个有引导程序的设备,该引导程序 (grub)可以指定使用哪个内核来启动,并将其加载至内存当中运行,同时内核还要加…

    Linux干货 2016-09-19
  • 集中练习7-bash脚本

    集中练习7-bash脚本

    Linux干货 2017-12-05