运维必备技能之磁盘管理

磁盘分区的三个工具

1、fdisk交互式工具

        fdisk /dev/sdb进入交互界面

        交互式界面的几个常用命令

        p:显示现有分区情况

        w:保存分区并退出

        q:不保存分区退出

        n:新建分区

            e:(extend)扩展分区,新建扩展分区

            p:(primary)主分区,每一块磁盘最多只能分四个分区(这个是主要是磁盘引导类型MBR的原因,如果磁盘的类型为GPT类型就可以分更多的主分区)

        t:修改分区的ID号

            L可以查看所有的ID信息

        l:查看磁盘支持的ID信息

2、gdisk的使用方法与fdisk的使用方法相同,但是gdisk主要运用在GPT上

3、parted分区

    parted /dev/sdb mklable {gpt|fsdos|mac|loop…} 更换磁盘的类型为gpt,fsdos,mac….

    parted mkpart part-type [fs-type] start end 创建分区

        parted mkpart primary ext4 1 100       创建一个分区

分区已经创建完成,下一步需要进行格式化了

    格式分工具mkfs,可以加上要格式化的文件系统,如mkfs.xfs,mkfs.btrfs……

    mke2fs专用ext系列文件系统格式化

        -b:磁盘块大小{1024|2048|4096}

        -j(journal):启用日志功能

        -O:启用的文件系统特性

        -t:指定文件系统类型

        -I:指定文件系统中的inode的大小

文件系统已经格式化进行下一步挂载

    挂载:mount

    卸载:umonnt

    mount:

        -a:挂载所有的在/etc/fstab文件已有的挂载标识

        -n:挂载过程中不检查/etc/mtab文件

        -r:只读挂载

        -w:读写挂载

        -L:按卷标挂载

        -U:按UUID挂载

        -t:指定设备文件系统类型,不指定会自动识别

        -o:设置选项

            remount:重新挂载文件系统

            ro:只读挂载

            rw:读写

            noatime:不更新access time

            defaultes:默认挂载,含有:rw, suid, dev, exec, auto, nouser, and async.

            exec:是挂载的文件系统中是否可以执行可执行文件

查看文件系统的查关相信

    tune2fs:可以查看卷标,挂载点,UUID,文件系统特性,挂载选项,Inode数量与大小,block大小与数量等信息

        -j:开启文件系统中的日志功能,文件系统将变为ext3

        -L:修改文件系统的卷标

        -m:修改保留块的数量,百分比值,默认为百分之五

        -o:修改文件系统的挂载选项,^acl为取消acl,如果相加上某一个选项直接去掉前面的^即可

        -O:修改文件系统的特性,用法同-o

        

文件系统的修复:

    e2fsck:检查与修复Linux文件系统

        -f:强制测试

        -y:所有需要回答的问题全部回答yes

磁盘管理之RAID

做一个软RAID10示例

1、新建五个磁盘(所有磁盘存储大小必须相同)并将分区标记编号修改为fd

    echo -e ‘n\np\n1\n\n+5G\nt\nfd\nw\n’ | fdisk /dev/sdc        

    echo -e ‘n\np\n1\n\n+5G\nt\nfd\nw\n’ | fdisk /dev/sdd

    echo -e ‘n\np\n1\n\n+5G\nt\nfd\nw\n’ | fdisk /dev/sde

    echo -e ‘n\np\n1\n\n+5G\nt\nfd\nw\n’ | fdisk /dev/sdf

    echo -e ‘n\np\n1\n\n+5G\nt\nfd\nw\n’ | fdisk /dev/sdg

2、新建RAID

    mdadm -C /dev/md0 -a yes -l 10 -n 4 -x 1 /dev/sd{c1,d1,e1,f1,g1}

    RAID阵列构建结束

3、格式化/dev/md0

    mke2fs -j /dev/md0

4、挂载/dev/md0到/mydata挂载点上

    mount /dev/md0 /mydata

构建完成,下面进行测试

在/mydata目录下存放点文件

1、损坏一块硬盘是个什么情况

    mdadm /dev/md0 -f /dev/sdf1    //损坏磁盘

    mdadm -D /dev/md0              //查看磁盘详细性况

    测试结果为,spare备用分区这为active,而损坏的磁盘变为failure,state运行状态为正常clean,resyncing

    数据完整

2、再损坏一块磁盘

     mdadm /dev/md0 -f /dev/sdc1

    测试结果为,failure盘又加了一块,state运行状态非正常clean, degraded,降级运行

    数据完整,未损坏

3、再损坏一块磁盘

    mdadm /dev/md0 -f /dev/sdd1

    报错了,这就尴尬了,这是什么原因呢?这是因为如果sdd1损坏的话整个阵列就不能用了,所以报警了,那换一块试试

     mdadm /dev/md0 -f /dev/sdg1

    测试结果为,failure盘又加了一块,state运行状态非正常clean, degraded,降级运行

    数据完整,未损坏

以上为磁盘损坏测试,完成

现在我想加两块磁盘到阵列中

    mdadm -G /dev/md0 -n 6 -a /dev/sd{h1,}

现在我想将那些坏的磁盘清理了呢

    mkadm /dev/md0 -r /dev/sd{f1,c1,g1}

我把那些坏的磁盘修好了,可以再用了,怎么加入呢

     mkadm /dev/md0 -a /dev/sd{f1,c1,g1}


磁盘管理之LVM

创建一个VLM示例

1、找两个分区大小不限做PV

    pvcreate /dev/sd{b1,c1}

    提示找不到说明刚才的RAID没有清干静,那就暴力点清,只要是md0相关的文件都删掉,然后重启,这么搞几个来回也可有希望清干静

2、将PV创建为VG

    vgcreate testvg -s 16m /dev/sdb1 /dev/sdc1

    -s:指定PE大小

3、在VG上创建LV

    lvcreate -n testlv -L 3G testvg

    -L是指定大小,而-l是指定多少个PE

4、格式化LV,挂载LV略过

测试LVM的在线增加与离线缩减不损坏数据的特性

在挂载目录上存放一些文件

在线增加数据

    lvextend -L 7G -r /dev/testvg/testlv 

    查看已经将空间大小扩展为7G

    数据完整,无损坏

离线缩减

    1、卸载已经挂载的testlv

    2、fsck -f /dev/testvg/testlv检查校验testlv

    3、resize2fs 3G /dev/testvg/testlv 

    4、lvreduce -L 3G /dev/testvg/testlv 

    查看已经将空间缩减至3G大小

    数据完整,无损坏

LVM的快照技术

    lvcreate -n snap_testlv -L 1G -s -p r /dev/testvg/testlv

    将testlv的数据删除进行测试snap_testlv中是否是原来的testlv中的数据

     

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

(0)
gaomeigaomei
上一篇 2017-03-13
下一篇 2017-03-14

相关推荐

  • proxy_pass转发路径

    一、引言 在nginx中配置proxy_pass时,proxy_pass后面的路径最后面加“/”和不加“/”会有所区别。加“/”时,nginx不会代理location部分,不加“/”时,nginx会同时代理location部分。下面通过实验来证明。 二、实验 实验环境简要说明:     node1为httpd服务器(1…

    Linux干货 2017-01-12
  • 第九周加密及DNS

    1、简述常见加密算法及常见加密算法原理,最好使用图例解说
    2、搭建apache或者nginx并使用自签证书实现https访问,自签名证书的域名自拟
    3、简述DNS服务器原理,并搭建主-辅服务器
    4、搭建并实现智能DNS

    Linux干货 2018-01-29
  • Linux下使用screen协同作业

    1)screen应用场景(拷贝自网络): 来自产品工程的高级维护用户 David 打电话说:“为什么我不能在您部署的这些新机器上编译 supercode.c”。 您会问他:“您运行的是什么机器?” David 答道:“ Posh”。(这个虚够的公司将它的 5 台生产服务器以纪念 Spice Girls 的方式命名)。这下您可以大显身手了,另一台机器由 Dav…

    系统运维 2016-08-15
  • Linux_创建文件系统及挂载文件系统流程详解

    Linux 创建文件系统及挂载文件系统流程详解 摘要:本文对新增硬盘,切割硬盘,创建硬盘分区,为硬盘分区创建文件系统,以及加载文件系统的流程做总结性论述;主要是为初学者弄清楚这一操作过程;本文涉及fdisk、mkfs、mount … … 等工具;对/etc/fstab 进行了解说;还有磁盘扫描工具fsck 等介绍; +++++++++…

    Linux干货 2016-01-18
  • 携程全站瘫痪引发的思考

       为今年5月冠上多事之夏的名头已是无可厚非的一件事,自支付宝光纤被挖断后,携程又暴出全站瘫痪的风波,从5/28 11:00开始,直到晚上11:29分才全面恢复.互联网也是谣言四起,纷纷猜测百度腾讯谁会是下一个灾难的受害者。暂切抛开这些玩笑言论,就携程本次事情引发的思考太多,前车之鉴后事之师,如果携程的事情发生到我们身上,我们该怎么办,…

    Linux干货 2015-06-03
  • N22-第五周作业-冥界之王

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行;    [root@CentOS6 ~]# cat /boot/grub/grub.conf | grep -E  "^[[:space:]]{1,}"…

    Linux干货 2016-09-19

评论列表(1条)

  • 马哥教育
    马哥教育 2017-03-20 09:22

    很好,理论与实践相结合了,能看出很用心