Day19 磁盘管理 (二)

今日内容:

分配超过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级别检验)
Day19 磁盘管理 (二)_第1张图片
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模式


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