运维必备技能之磁盘管理

磁盘分区的三个工具

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 23:54
下一篇 2017-03-14 17:06

相关推荐

  • 计算机的组成和Linux发展史

    计算机的组成及功能   计算机是由CPU,内存,输入装置和输出装置四大部件组成计算机,每一部件分别按要求执行特定的基本功能。  CPU: 控制器和运算器合称中央处理器,也就是CPU,它的功能主要是解释计算机指令以及处理计算机软件中的数据。  内存: 它是与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存中进行的,内存(Me…

    Linux干货 2016-10-30
  • 20本最好的Linux免费书籍

    前些天Neo推荐了一个网站有《超过100本的linux免费书籍》,这里,我也向大家推荐20本最好的Linux免费书籍,当然,也是英文版的。 1. Ubuntu Pocket Guide and Reference 一本介绍关于Ubuntu 8.04和8.10的使用书。 Website www.ubuntupocketguide.com Author Keir…

    Linux干货 2015-04-01
  • 第十二周课堂练习下

    6、在LAMP架构中,请分别以php编译成httpd模块形式和php以fpm工作为独立守护进程的方式来支持httpd,列出详细的过程 1.模块方式安装可见第三节 2.fpm独立守护进程安装 [root@LAMP setup]# tar -xf  php-5.6.23.tar.bz2  ##编译&nb…

    Linux干货 2017-01-03
  • CentOS6.6上编译安装httpd2.4

    简介    现在apache软件基金会正在维护的httpd项目有三个版本,分别为Version 2.4,Version 2.2与Version 2.0。    三个版本的区别暂不一一介绍,有兴趣的可以去httpd.apache.org了解,下面着重介绍httpd 2.4版本。新特性 &nb…

    Linux干货 2015-06-26
  • 用户与组

    一、用户与组的概念 1、Linux多用户,多任务的特性    Linux是多用户多任务操作系统,多用户多任务就是可在系统上建多个用户,多个用户可同一时间同一个系统互不影执行的响各自不同的任务。例如linux服务器上有root、www、ftp,四个用户。同一时间内,root用户在查看系统日志,管理维护系统,www用户在修改自己的网页程序,f…

    Linux干货 2016-10-25
  • 第三周作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可 who |cut -d ' ' -f1 |sort|uniq 2、取出最后登录到当前系统的用户的相关信息 last|head -1 3、取出当前系统上被用户当作其默认shell的最…

    Linux干货 2016-12-26

评论列表(1条)

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

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