Linux系统管理_第07章存储管理(2)——存储管理高级课程

目录

 

文件系统详解

 一.EXT4文件系统

简介

二.文件链接

 

   三.RAID

一、不同场景RAID的使用

二、软RAID示例


文件系统详解

 一.EXT4文件系统

简介

名词解释:EXT4是第四代扩展文件系统(英语:Fourth extended filesystem)

类型:索引(index )  文件系统

系统限制:Ext3: 文件系统最大16TB
                  Ext4: 文件系统最大16TB
                   XFS  :  文件系统最大100TB

图示 :

Linux系统管理_第07章存储管理(2)——存储管理高级课程_第1张图片

名词
inode
记录文件的属性(文件的元数据metadata)
元数据
文件的属性,大小,权限,属主,属组,连接数,块数量,块的编号
一个文件占用一个inode,同时记录此文件数据所在的block numbber。
inode大小 为 128 bytes
block
存储文件的实际数据。
实际存储文件的内容,若文件较大,会占用多个block。
block大小 为默认为4K
superblock
1 block 与 inode 的总量;
2未使用与已使用的 inode / block 数量;

示例1:inode(index  node 索引节点)

创造一个文件,观察inode信息。
ll   -i    文件名


示例2:block

问题1:分区中,文件的数量和什么有关系。

1 观察某个分区中的inode节点数

df    -i 
2 创建一个文件
touch  文件名
3 再次观察inode节点数
df    -i 

Linux系统管理_第07章存储管理(2)——存储管理高级课程_第2张图片

可以看到我的磁盘sdb1 的indoe 已用12112 还可用118960

4 创造大量文件。观察inode使用情况
[root@localhost /]# touch /mnt/disk1/fffff{1..30000}

Linux系统管理_第07章存储管理(2)——存储管理高级课程_第3张图片
要给给inode占满,就不能否创建新文件了

结论:inode决定了文件系统中文件的数量。

7.但是,能否向已存在的文件中写入内容呢?答案是可以
结论:block决定了文件存储的空间。

问题2:当分区空间大小消耗完毕,还能否新增文件?

1 向目标分区写入大量数据,填满
 [root@localhost /]# dd if=/dev/zero of=/mnt/disk1/66.txt bs=1M count=2000

2 查看目标分区容量,已满
df -hT

Linux系统管理_第07章存储管理(2)——存储管理高级课程_第4张图片

3 创造新文件
Linux系统管理_第07章存储管理(2)——存储管理高级课程_第5张图片

4 得出结论,磁盘空间的限制根据inode和block两方面
请清理掉填满的分区。避免不必要的报错。

二.文件链接


一、符号链接/软连接

词解释
symbolic link /软链接
示例
1 创建一个文件,并输入内容。

[root@lll ~]# echo 111 > /file1

2 创建一个软连接。

[root@lll ~]# ln -s /file1 /home/file11

3 观察软连接

[root@lll ~]# ll /home/file11
lrwxrwxrwx 1 root root 6 Dec 20 17:58 /home/file11 -> /file1

4 观察软连接文件

[root@lll ~]# ll /file1 /home/file11
-rw-r–r-- 1 root root 4 Dec 20 17:57 /file1
lrwxrwxrwx 1 root root 6 Dec 20 17:58 /home/file11 -> /file1

5 查看两个文件,内容一致。

[root@lll ~]# cat /file1
111
[root@lll ~]# cat /home/file11
111

6 删除源文件,软连接闪烁,不可用。

[root@lll ~]# rm -rf /file1 
[root@lll ~]# ll /home/file11 

    lrwxrwxrwx 1 root root 6 Dec 20 17:58 /home/file11 -> /file1
  

总结
软连接像快捷方式,可以对文件和目录做软连接。
软连接记录的只是源文件的绝对路径。
软连接失去源文件不可用。

二、硬链接

1 创建同分区硬链接成功,创建不同分区硬链接失败。

   [root@lll ~]# echo 222 > /file2
   [root@lll ~]# ln /file2 /file2-h1
   [root@lll ~]# ln /file2 /home/file2-h2 
 

//将文件已硬链接方式,发送到其他分区。结果是?错误
ln: failed to create hard link ‘/home/file2-h2’ => ‘/file2’: Invalid cross-device link
2 硬链接删除源文件,依然可以用

   [root@lll ~]#rm -rf /file2
   [root@lll ~]#cat    /file2-h1
   222
 

 

//将文件已硬链接方式,发送到其他分区。结果是?错误
ln: failed to create hard link ‘/home/file2-h2’ => ‘/file2’: Invalid cross-device link
2 硬链接删除源文件,依然可以用

   [root@lll ~]#rm -rf /file2
   [root@lll ~]#cat    /file2-h1
   222
 

3 不允许将硬链接指向目录
[root@lll home]# ln /home/ /mnt
ln: “/home/”: 不允许将硬链接指向目录

总结
硬链接只能针对文件做。不能对目录做。
硬链接只能在同分区做。

 

   三.RAID

简介:RAID:廉价磁盘冗余阵列(Redundant Array of Independent Disks)

作 用:容错、提升读写速率

类型:
RAID0 条带集 2块磁盘以上, 读写速率快 100%*N,但不容错
RAID1 镜像集 2块磁盘, 容量50% ,读写速率一般,容错
RAID5 带奇偶校验条带集 3块磁盘以上,
利用率 (n-1)/n 读写速率快,容错

一、不同场景RAID的使用

硬RAID: 需要RAID卡,有自己的CPU,处理速度快,有电池和无电池。

软RAID: 通过操作系统实现,比如Windows、Linux

二、软RAID示例

1. 准备4块硬盘

查看:[root@localhost ~]# ll /dev/sd*

Linux系统管理_第07章存储管理(2)——存储管理高级课程_第6张图片

RAID5 :(3块数据盘) + (1块热备硬盘)

2. 创建RAID

[root@localhost ~]# mdadm -C /dev/md0 -l5 -n3 -x1 /dev/sd{f,g,h,i}

3. 格式化,挂载

[root@localhost ~]# mkfs.ext4 /dev/md0  //格式化

Linux系统管理_第07章存储管理(2)——存储管理高级课程_第7张图片

[root@localhost ~]# mkdir /mnt/raid5 //创建挂载点

[root@localhost ~]# mount /dev/md0  /mnt/raid5  //挂载

[root@localhost ~]# cp -rf /etc /mnt/raid5/etc1  //把/etc的内容复制到 挂载点

4. 查看RAID信息

[root@localhost ~]# mdadm -D /dev/md0

/dev/md0:
           Version : 1.2
     Creation Time : Tue Aug  4 18:30:00 2020
        Raid Level : raid5
        Array Size : 10475520 (9.99 GiB 10.73 GB)
     Used Dev Size : 5237760 (5.00 GiB 5.36 GB)
      Raid Devices : 3
     Total Devices : 4
       Persistence : Superblock is persistent

       Update Time : Tue Aug  4 18:40:08 2020
             State : clean 
    Active Devices : 3
   Working Devices : 4
    Failed Devices : 0
     Spare Devices : 1

            Layout : left-symmetric
        Chunk Size : 512K

Consistency Policy : resync

              Name : localhost.localdomain:0  (local to host localhost.localdomain)
              UUID : 29cf5f77:282187d7:fd65420d:69edd106
            Events : 22

    Number   Major   Minor   RaidDevice State
       0       8       80        0      active sync   /dev/sdf
       1       8       96        1      active sync   /dev/sdg
       4       8      112        2      active sync   /dev/sdh

       3       8      128        -      spare   /dev/sdi
 

5. 模拟一块硬盘损坏,并移除

 模拟一块硬盘损坏,并移除

[root@localhost ~]# watch -n 0.5 mdadm -D /dev/md0 | tail  //watch持续查看

 

5. 模拟一块硬盘损坏,并移除

mdadm /dev/md0 -f /dev/sdf -r /dev/sdf
再次使用watch持续查看 发现sdf盘已经被移除

Linux系统管理_第07章存储管理(2)——存储管理高级课程_第8张图片

 

 

 

 

 

 

你可能感兴趣的:(笔记,linux)