美文网首页
Day19 磁盘管理 (二)

Day19 磁盘管理 (二)

作者: 梦幻新阳 | 来源:发表于2019-08-20 16:52 被阅读0次

    今日内容:

    分配超过2TB的磁盘 fdisk gdisk
    mount挂载:
    swap交换分区 (磁盘充当内存)
    磁盘阵列RAID
    
    1.分配超过2TB的磁盘 fdisk gdisk
    fdisk 分配大于4个T的磁盘,会提示修改主引导为GPT (使用fdisk继续分配)
    WARNING: The size of this disk is 4.4 TB (4398046511104 bytes).
    DOS partition table format can not be used on drives for volumes
    larger than (2199023255040 bytes) for 512-byte sectors. Use parted(1) and GUID
    partition table format (GPT)
    
    gdisk分配大于2TB以上的文件

    1.查看gdisk命令属于哪个软件包

    yum provides gdisk
    yum install gdisk -y
    

    2.使用gdisk对大于2TB的硬盘进行分区

     [root@oldboy ~]# gdisk /dev/sd
    Command (? for help): n
    Partition number (1-128, default 1): 
    First sector (34-8589934558, default = 2048) or {+-}size{KMGTP}: 
    Last sector (2048-8589934558, default = 8589934558) or {+-}size{KMGTP}: 
    Current type is 'Linux filesystem'
    Hex code or GUID (L to show codes, Enter = 8300): 
    Changed type of partition to 'Linux filesystem'
    Command (? for help): p
    Number  Start (sector)    End (sector)  Size       Code  Name
       1            2048      8589934558   4.0 TiB     8300  Linux filesystem
    Command (? for help): w
    Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
    PARTITIONS!!
    Do you want to proceed? (Y/N): y
    OK; writing new GUID partition table (GPT) to /dev/sdc.
    The operation has completed successfully.
    

    3.对磁盘分区进行格式化

    [root@oldboy ~]# mkfs.xfs -f /dev/sdc1
    meta-data=/dev/sdc1              isize=512    agcount=4, agsize=268435391 blks
             =                       sectsz=512   attr=2, projid32bit=1
             =                       crc=1        finobt=0, sparse=0
    data     =                       bsize=4096   blocks=1073741563, imaxpct=5
             =                       sunit=0      swidth=0 blks
    naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
    log      =internal log           bsize=4096   blocks=521728, version=2
             =                       sectsz=512   sunit=0 blks, lazy-count=1
    realtime =none                   extsz=4096   blocks=0, rtextents=0
    

    4.创建挂载点

    [root@oldboy ~]# mkdir /sdc2
    

    5.挂载分区

    [root@oldboy ~]# mount /dev/sdc1 /sdc2/
    

    6.检查挂载详情

    [root@oldboy ~]# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/sda3        38G  6.6G   32G  18% /
    devtmpfs        980M     0  980M   0% /dev
    tmpfs           991M     0  991M   0% /dev/shm
    tmpfs           991M  9.5M  981M   1% /run
    tmpfs           991M     0  991M   0% /sys/fs/cgroup
    /dev/sda1      1014M  155M  860M  16% /boot
    tmpfs           199M     0  199M   0% /run/user/0
    /dev/sdc1       4.0T   33M  4.0T   1% /sdc2
    
    2.mount 挂载 实际上就是为设备提供一个入口

    挂载

     -t 指定挂载的设备类型
     -o 指定挂载的参数 rw,ro
    [root@oldboy ~]# mkdir /sdc_back
    [root@oldboy ~]# mount -t xfs /dev/sdc1 /sdc_back/
    

    将/dev/sdc1挂载至/sdc_back1目录,但只允许读,不允许写

    [root@oldboy ~]# mkdir /sdc_back1
    [root@oldboy ~]# mount -o ro -t xfs /dev/sdc1 /sdc_back1/
    [root@oldboy ~]# cd /sdc_back1
    [root@oldboy sdc_back1]# touch file1
    touch: cannot touch ‘file1’: Read-only file system
    

    通过设备的UUID进行挂载(UUID==身份证)

    [root@oldboy ~]# blkid
    [root@oldboy ~]# mount UUID="3f1daaa8-1862-466c-a631-a12862ada696" /sdc_back1
    [root@oldboy ~]# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/sda3        38G  6.6G   32G  18% /
    devtmpfs        980M     0  980M   0% /dev
    tmpfs           991M     0  991M   0% /dev/shm
    tmpfs           991M  9.6M  981M   1% /run
    tmpfs           991M     0  991M   0% /sys/fs/cgroup
    /dev/sda1      1014M  155M  860M  16% /boot
    tmpfs           199M     0  199M   0% /run/user/0
    /dev/sdc1       4.0T   33M  4.0T   1% /sdc_back1
    
    卸载

    1.通过卸载挂载的目录

    [root@oldboy ~]# umount /sdc_back1/
    

    2.通过卸载挂载的设备

    [root@oldboy ~]# umount /dev/sde1
    

    3.如果在挂载点目录下,是无法进行卸载,但可强制. 当退出该目录时,目录回归原始属性

    [root@oldboy ~]# cd /data/test1/
    [root@oldboy test1]# umount /data/test1/
    umount: /data/test1: target is busy.
    (In some cases useful info about processes that use the device is found by lsof(8) 
    or fuser(1))
    
    永久挂载

    1.使用blkid命令获取各设备的UUID

    [root@xuliangwei ~]# blkid |grep "sdb1" /dev/sdb1: UUID="e271b5b2-b1ba-4b18-bde5-66e
    394fb02d9" TYPE="xfs"
    

    2.使用UUID挂载磁盘sdb1分区至于db1, 测试挂载

    [root@xuliangwei ~]# mount UUID="e271b5b2-b1ba-4b18-bde5-66e394fb02d9" /db1
    

    3.写入/etc/fstab中,实现开机自动挂载要挂载的设备 挂载点 设备类型 挂载参数 是否备份 是否检查

    /dev/sdc1 /sdc1 xfs defaults 0 0
    UUID="29ae40fb-93f4-4d87-b1e7-83cdd5946fc6" /sdc2  xfs defaults 0
    

    4.加载fstab配置文件, 同时检测语法是否有错误

    [root@xuliangwei ~]# mount –a
    
    3./etc/fstab配置文件编写格式
    要挂载的设备挂载点(入口)文件系统类型挂载参数是否备份是否检查
    /dev/sdb1   /db1   xfs   defaults   0   0
    第四列:挂载参数。挂载参数有很多,在这块我们了解即可。
    参数 含义
    async/sync    是否为同步方式运行。默认async
    user/nouser   是否允许普通用户使用mount命令挂载。默认nouser
    exec/noexe    是否允许可执行文件执行。默认exec
    suid/nosuid   是否允许存在suid属性的文件。默认suidauto/noauto
    执行mount -a 命令时,此文件系统是否被主动挂载。默认auto
    rw/ro         是否以只读或者读写模式进行挂载。默认rw
    defaults      具有rw,suid,dev,exec,auto,nouser,async等默认参数的设定
    
    第五列:是否进行备份。通常这个参数的值为0或者1
    选项       含义
    0    代表不做备份
    1    代表要每天进行备份操作
    2    代表不定日期的进行备份操作
    
    第六列:是否检验扇区:开机的过程中,系统默认会以fsck检验我们系统是否完整
    选项         含义
    0    不要检验磁盘是否有坏道
    1    检验
    2    校验 (当1级别检验完成之后进行2级别检验)
    
    8.20.PNG
    挂载设备有问题,导致无法进入系统, 输入root密码, 然后注释/etc/fstab最后重启
    3.swap交换分区 (磁盘充当内存)

    1.内存不够,也没有配置swap会出现什么情况?

    系统会出现oom机制, out of memroy 
    Aug 20 11:13:43 oldboy kernel: Out of memory: Kill process 7910 (dd) score 785 or 
    sacrifice child Aug 20 11:13:43 oldboy kernel: Killed process 7910 (dd) total-vm:
    1746408kB, anon-rss:1638504kB, filerss:0kB,shmem-rss:0kB
    

    内存不够,有配置swap又会出现什么情况?

    1.会使用swap充当内容使用,防止系统出现oom故障
    2.如果使用了swap,系统会变得特别的卡
    

    1.创建分区,并格式化为swap分区。

    [root@oldboy ~]# fdisk /dev/sdb                 分为1个G
    [root@oldboy ~]# mkswap /dev/sdb4            格式化为swap
    

    2.查看当前swap分区大小,然后进行扩展和缩小

    [root@oldboy ~]# free -m
                  total        used        free      shared  buff/cache   available
    Mem:           1980         136        1695           9         147        1674
    Swap:          1023           0        1023
    

    1.扩展swap分区大小

    [root@oldboy ~]# swapon /dev/sdb4
    [root@oldboy ~]# free -m
                  total        used        free      shared  buff/cache   available
    Mem:           1980         137        1694           9         148        1673
    Swap:          2047           0        2047
    [root@oldboy ~]# swapon -a    代表激活所有的swap
    

    2.缩小swap分区大小

    [root@oldboy ~]# swapoff /dev/sdb4
    [root@oldboy ~]# free -m
                  total        used        free      shared  buff/cache   available
    Mem:           1980         138        1693           9         148        1672
    Swap:          1023           0        1023
    [root@oldboy ~]# swapoff -a  代表关闭所有的swap
    

    3.检查当前swap分区有哪些设备

    [root@oldboy ~]# swapon -s
    Filename                Type        Size    Used    Priority
    /dev/sda2                               partition   1048572 0   -2
    
    1.什么是磁盘阵列

    提高磁盘的整体读写能力,和冗余能力,通常我们将其称为磁盘阵列。
    2.RAID

        提高性能
        保证安全
    

    3.RAID模式


    8.201.PNG
    RAID0条带卷,最少两块盘,读写性能好,但没有容错机制,坏一块磁盘数据全丢。
    读写性能  所有盘之和
    没有冗余  坏一块盘  都坏
    应用在    web服务器
    
    8.202.PNG
    RAID1镜像卷,写入性能一般,读取性能快,有容错机制,但磁盘有50%浪费
     容量只有50%
     写性能一般
     读性能好
    
    8.203.PNG
    RAID5校验卷,至少三块相同大小的盘,并且只允许坏一块盘,有效空间1/3,读写速度快,坏掉一块,读
    会慢。
     RAID5无论多少块盘组成,最多只允许坏一块盘
     容量  (n-1)* 单位容量
     读性能 快
     写性能 快
     具备raid0差不多的性能,同时也具备raid1的稳定
    
    8.204.PNG
    RAID10,先做raid1,在做raid0  
      容量 1/2
      写性能  4块盘-->2块盘之和
      读性能  多块盘之和
      冗余    可以最多坏两块盘
    

    今日总结

    1.分大于2TB的磁盘
    2.挂载 卸载 永久挂载 /etc/fstab文件
    1.挂载的设备名|UUID 2.挂载点 3.系统文件类型 4挂载参数 5.备份 6.检查
    3.swap交换分区
        1.内存不够.没有swap会造成什么故障?
        2.内存不够,有swap会造成什么故障?
    4.磁盘阵列? 提高多块盘的性能 以及安全
       RAID0 性能高,没有冗余,容量100%
       RAID1 读性能高,写性能一般,有冗余,允许坏一块盘. 容量50%
       RAID5 读写性能都高,有冗余,允许坏一块盘. 容量 n-1 * 单盘容量
       RAID10 先做RAID1 在做RAID0 既有冗余又有性能 容量2/1 贵.
    PS: 无论raid1还是raid5 都需要在准备一个热备盘(全新的盘)
    

    相关文章

      网友评论

          本文标题:Day19 磁盘管理 (二)

          本文链接:https://www.haomeiwen.com/subject/ouspsctx.html