Linux磁盘管理

磁盘管理

基本分区管理

磁盘划分思路

  • 进入分区表,新建分区
  • 更新分区表
  • 格式化分区表
  • 挂载使用
#lsblk
#df -h 查看设备挂载情况
#fdisk -l  设备分区情况
#fdisk /dev/sdb 

添加一块硬盘,需要将其分两个分区,分别格式化成ext4和vfat格式文件系统使用,最终需要使用2G空间

  • 添加硬盘
  • fdisk进行分区
  • 格式化指定分区
  • 创建空目录作为挂载点
  • 挂载使用
#添加硬盘
[root@workstation ~]# lsblk
NAME                    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                       8:0    0   20G  0 disk
├─sda1                    8:1    0    1G  0 part /boot
└─sda2                    8:2    0   19G  0 part├─centos_servera-root 253:0    0   17G  0 lvm  /└─centos_servera-swap 253:1    0    2G  0 lvm  [SWAP]
sdb                       8:16   0   20G  0 disk
sr0                      11:0    1  918M  0 rom
#fdisk分区[root@workstation ~]# fdisk /dev/sdbCommand (m for help): p #打印分区表信息
Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x46d52402Device Boot      Start         End      Blocks   Id  SystemCommand (m for help): n #新建分区
Partition type:p   primary (0 primary, 0 extended, 4 free)e   extended
Select (default p): p 
Partition number (1-4, default 1): 1 #主分区编号
First sector (2048-41943039, default 2048): #默认
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): +1G #分区大小
Partition 1 of type Linux and of size 1 GiB is set
#再次新建一个分区
Command (m for help): n
Partition type:p   primary (1 primary, 0 extended, 3 free)e   extended
Select (default p):
Using default response p
Partition number (2-4, default 2): 2
First sector (2099200-41943039, default 2099200):
Using default value 2099200
Last sector, +sectors or +size{K,M,G} (2099200-41943039, default 41943039): +1G
Partition 2 of type Linux and of size 1 GiB is set#打印信息
Command (m for help): pDisk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x46d52402Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     2099199     1048576   83  Linux
/dev/sdb2         2099200     4196351     1048576   83  Linux
#保存退出Command (m for help): w
The partition table has been altered!Calling ioctl() to re-read partition table.
Syncing disks.#查看分区情况[root@workstation ~]# lsblk
NAME                    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                       8:0    0   20G  0 disk
├─sda1                    8:1    0    1G  0 part /boot
└─sda2                    8:2    0   19G  0 part├─centos_servera-root 253:0    0   17G  0 lvm  /└─centos_servera-swap 253:1    0    2G  0 lvm  [SWAP]
sdb                       8:16   0   20G  0 disk
├─sdb1                    8:17   0    1G  0 part
└─sdb2                    8:18   0    1G  0 part
sr0                      11:0    1  918M  0 rom
#刷新分区表信息
[root@workstation ~]# partx -d /dev/sdb
[root@workstation ~]# partx -a /dev/sdb
[root@workstation ~]# partx -s /dev/sdb
NR   START     END SECTORS SIZE NAME UUID1    2048 2099199 2097152   1G2 2099200 4196351 2097152   1G#格式化分区[root@workstation ~]# mkfs.ext4 /dev/sdb1
[root@workstation ~]# yum install -y dosfstools[root@workstation ~]# mkfs.vfat /dev/sdb2
mkfs.fat 3.0.20 (12 Jun 2013)
#创建新挂载点[root@workstation ~]# mkdir /u01
[root@workstation ~]# mkdir /u02
#挂载
[root@workstation ~]# mount /dev/sdb1 /u01
[root@workstation ~]# mount /dev/sdb2 /u02

挂载分区设备

手动挂载

  • 设备重启后需要重新挂载
  • 手动卸载后需要手动挂载
#查看块设备信息
[root@workstation ~]# blkid /dev/sdb1
/dev/sdb1: UUID="78d4daac-317c-497e-9eb7-5e782fcfded7" TYPE="ext4"[root@workstation /]# mount -o rw /dev/sdb1 /u01
[root@workstation /]# lsblk
NAME                    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                       8:0    0   20G  0 disk
├─sda1                    8:1    0    1G  0 part /boot
└─sda2                    8:2    0   19G  0 part├─centos_servera-root 253:0    0   17G  0 lvm  /└─centos_servera-swap 253:1    0    2G  0 lvm  [SWAP]
sdb                       8:16   0   20G  0 disk
├─sdb1                    8:17   0    1G  0 part /u01
└─sdb2                    8:18   0    1G  0 part
sr0                      11:0    1  918M  0 rom
#卸载[root@workstation /]# umount /u01
[root@workstation /]# lsblk
NAME                    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                       8:0    0   20G  0 disk
├─sda1                    8:1    0    1G  0 part /boot
└─sda2                    8:2    0   19G  0 part├─centos_servera-root 253:0    0   17G  0 lvm  /└─centos_servera-swap 253:1    0    2G  0 lvm  [SWAP]
sdb                       8:16   0   20G  0 disk
├─sdb1                    8:17   0    1G  0 part
└─sdb2                    8:18   0    1G  0 part
sr0                      11:0    1  918M  0 rom

开机自动挂载

  • 硬件初始化 硬盘,内存…
  • 系统初始化 /sbin/init > /etc/fstab
  • 系统重启后自动挂载
#系统自动挂载/dev/sdb1设备 2分钟没有被使用 自动卸载
yum -y install autofs[root@workstation ~]# rpm -q autofs
autofs-5.0.7-116.el7_9.1.x86_64#修改配置文件
[root@workstation ~]# vi /etc/auto.master
[root@workstation ~]# vi /etc/auto.test
[root@workstation ~]# cat  /etc/auto.master | grep u01
/u01    /etc/auto.test  -t 120
[root@workstation ~]# cat  /etc/auto.test | grep test
test    -fstype=ext4,ro :/dev/sdb1
#重启服务[root@workstation ~]# service autofs restart
#测试验证[root@workstation ~]# ls /u01/test
lost+found
[root@workstation ~]# df -h
Filesystem                       Size  Used Avail Use% Mounted on
/dev/mapper/centos_servera-root   17G  1.2G   16G   7% /
devtmpfs                         475M     0  475M   0% /dev
tmpfs                            487M     0  487M   0% /dev/shm
tmpfs                            487M  7.7M  479M   2% /run
tmpfs                            487M     0  487M   0% /sys/fs/cgroup
/dev/sda1                       1014M  133M  882M  14% /boot
tmpfs                             98M     0   98M   0% /run/user/0
/dev/sdb1                        976M  2.6M  907M   1% /u01/test

逻辑卷管理

简介

LVM:对Linux环境下对磁盘分区进行管理的一种机制,建立在物理存储设备之上的一个抽象层,优点在于灵活管理。

  • 在线扩容
  • 离线裁剪
  • 数据条带化
  • 数据镜像
名称定义
物理设备保存LVM所存储的存储设备。
物理卷(PV)物理卷时LVM所使用的基础物理存储。在LVM系统使用设备之前,必须将设备初始化为物理卷。
卷组(VG)由一或多个物理卷组成。功能上与磁盘相同,一个PV分配一个VG,一个VG包含多个PV
逻辑卷(LV)根据卷组中空闲物理区块创建,提供应用,用户和操作系统所使用的“存储”设备。
  • 物理设备
  • 命令创建
  • 物理卷(PV)
  • 卷组(VG)
  • 逻辑卷(LV)
  • 逻辑卷格式化
  • 挂载使用
    在这里插入图片描述

创建逻辑卷

创建一个1.5G的逻辑卷

[root@workstation ~]# lsblk | grep sdb
sdb                       8:16   0   20G  0 disk
├─sdb1                    8:17   0    1G  0 part
├─sdb2                    8:18   0    1G  0 part
├─sdb3                    8:19   0    1G  0 part
├─sdb4                    8:20   0    1K  0 part
└─sdb5                    8:21   0  100M  0 part
#创建物理卷[root@workstation ~]# pvcreate /dev/sdb1 /dev/sdb2[root@workstation ~]# pvsPV         VG             Fmt  Attr PSize   PFree/dev/sda2  centos_servera lvm2 a--  <19.00g    0/dev/sdb1                 lvm2 ---    1.00g 1.00g/dev/sdb2                 lvm2 ---    1.00g 1.00g
#将创建卷组并将物理卷加入其中[root@workstation ~]# vgcreate vg01 /dev/sdb1 /dev/sdb2Volume group "vg01" successfully created[root@workstation ~]# vgs vg01VG   #PV #LV #SN Attr   VSize VFreevg01   2   0   0 wz--n- 1.99g 1.99g
[root@workstation ~]# vgdisplay vg01--- Volume group ---VG Name               vg01System IDFormat                lvm2Metadata Areas        2Metadata Sequence No  1VG Access             read/writeVG Status             resizableMAX LV                0Cur LV                0Open LV               0Max PV                0Cur PV                2Act PV                2VG Size               1.99 GiBPE Size               4.00 MiBTotal PE              510Alloc PE / Size       0 / 0Free  PE / Size       510 / 1.99 GiBVG UUID               ABTzbY-lO5x-4HA2-9ZtE-hFht-Y3Ng-fgNIYN
#创建逻辑卷
[root@workstation ~]# lvcreate -n lv01 -L 1.5G vg01Logical volume "lv01" created.#被映射到两个地方
[root@workstation ~]# ll /dev/mapper/vg01-lv01
lrwxrwxrwx. 1 root root 7 Aug  3 05:11 /dev/mapper/vg01-lv01 -> ../dm-2
[root@workstation ~]# ll /dev/vg01/lv01
lrwxrwxrwx. 1 root root 7 Aug  3 05:11 /dev/vg01/lv01 -> ../dm-2[root@workstation ~]# lvdisplay /dev/vg01/lv01--- Logical volume ---LV Path                /dev/vg01/lv01LV Name                lv01VG Name                vg01LV UUID                j2lsmi-SYjW-Qpn0-btqf-1fBF-tkQf-4eH5fcLV Write Access        read/writeLV Creation host, time workstation, 2023-08-03 05:11:18 -0400LV Status              available# open                 0LV Size                1.50 GiBCurrent LE             384Segments               2Allocation             inheritRead ahead sectors     auto- currently set to     8192Block device           253:2#创建大小为100M的逻辑卷,每个PE为4M,指定25个PE,大小为100M
[root@workstation ~]# lvcreate -n lv02 -l25 vg01Logical volume "lv02" created.
[root@workstation ~]# vgs vg01VG   #PV #LV #SN Attr   VSize VFreevg01   2   2   0 wz--n- 1.99g 404.00m
[root@workstation ~]# lvs /dev/vg01/lv02LV   VG   Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convertlv02 vg01 -wi-a----- 100.00m#格式化逻辑卷[root@workstation ~]# mkfs.ext4 /dev/vg01/lv01
#挂载
[root@workstation ~]# mkdir /mnt01
[root@workstation ~]# mount /dev/vg01/lv01 /mnt01[root@workstation ~]# lsblk | grep lv├─centos_servera-root 253:0    0   17G  0 lvm  /└─centos_servera-swap 253:1    0    2G  0 lvm  [SWAP]
│ └─vg01-lv01           253:2    0  1.5G  0 lvm  /mnt01
│ ├─vg01-lv01           253:2    0  1.5G  0 lvm  /mnt01
│ └─vg01-lv02           253:3    0  100M  0 lvm

逻辑卷动态扩容

将/mnt01目录动态扩容到2.2G

  • 查看/mnt01目录对应的逻辑卷是哪个
  • 查看当前逻辑卷的卷组剩余空间是否足够
  • 如果卷组空间不够,先扩容卷组,再扩容逻辑卷
  • 如果卷组空间足够,直接扩容逻辑卷
#查看/mnt01属于哪个卷组
[root@workstation ~]# df -h
Filesystem                       Size  Used Avail Use% Mounted on
/dev/mapper/centos_servera-root   17G  1.2G   16G   7% /
devtmpfs                         475M     0  475M   0% /dev
tmpfs                            487M     0  487M   0% /dev/shm
tmpfs                            487M  7.7M  479M   2% /run
tmpfs                            487M     0  487M   0% /sys/fs/cgroup
/dev/sda1                       1014M  133M  882M  14% /boot
tmpfs                             98M     0   98M   0% /run/user/0
/dev/mapper/vg01-lv01            1.5G  4.5M  1.4G   1% /mnt01[root@workstation ~]# lvsLV   VG             Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convertroot centos_servera -wi-ao---- <17.00g                                              swap centos_servera -wi-ao----   2.00g                                              lv01 vg01           -wi-ao----   1.50g                                              lv02 vg01           -wi-a----- 100.00m                        #查看卷组剩余空间[root@workstation ~]# vgsVG             #PV #LV #SN Attr   VSize   VFreecentos_servera   1   2   0 wz--n- <19.00g      0vg01             2   2   0 wz--n-   1.99g 404.00m#当前卷组空间不足
#扩容逻辑卷所在卷组
#首先得有物理设备
[root@workstation ~]# pvcreate /dev/sdb3Physical volume "/dev/sdb3" successfully created.
[root@workstation ~]# pvsPV         VG             Fmt  Attr PSize    PFree/dev/sda2  centos_servera lvm2 a--   <19.00g      0/dev/sdb1  vg01           lvm2 a--  1020.00m      0/dev/sdb2  vg01           lvm2 a--  1020.00m 404.00m/dev/sdb3                 lvm2 ---     1.00g   1.00g
[root@workstation ~]# vgextend vg01 /dev/sdb3Volume group "vg01" successfully extended
[root@workstation ~]# pvsPV         VG             Fmt  Attr PSize    PFree/dev/sda2  centos_servera lvm2 a--   <19.00g       0/dev/sdb1  vg01           lvm2 a--  1020.00m       0/dev/sdb2  vg01           lvm2 a--  1020.00m  404.00m/dev/sdb3  vg01           lvm2 a--  1020.00m 1020.00m#扩容逻辑卷
[root@workstation ~]# lvextend -L 2.2G /dev/vg01/lv01Rounding size to boundary between physical extents: 2.20 GiB.Size of logical volume vg01/lv01 changed from 2.00 GiB (512 extents) to 2.20 GiB (564 extents).Logical volume vg01/lv01 successfully resized.
[root@workstation ~]# lvsLV   VG             Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convertroot centos_servera -wi-ao---- <17.00g                                              swap centos_servera -wi-ao----   2.00g                                              lv01 vg01           -wi-ao----   2.20g                                              lv02 vg01           -wi-a----- 100.00m      [root@workstation ~]# df -h
Filesystem                       Size  Used Avail Use% Mounted on
/dev/mapper/centos_servera-root   17G  1.2G   16G   7% /
devtmpfs                         475M     0  475M   0% /dev
tmpfs                            487M     0  487M   0% /dev/shm
tmpfs                            487M  7.7M  479M   2% /run
tmpfs                            487M     0  487M   0% /sys/fs/cgroup
/dev/sda1                       1014M  133M  882M  14% /boot
tmpfs                             98M     0   98M   0% /run/user/0
/dev/mapper/vg01-lv01            1.5G  4.5M  1.4G   1% /mnt01
#同步文件系统
[root@workstation ~]# resize2fs /dev/vg01/lv01
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/vg01/lv01 is mounted on /mnt01; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
The filesystem on /dev/vg01/lv01 is now 577536 blocks long.[root@workstation ~]# df -h
Filesystem                       Size  Used Avail Use% Mounted on
/dev/mapper/centos_servera-root   17G  1.2G   16G   7% /
devtmpfs                         475M     0  475M   0% /dev
tmpfs                            487M     0  487M   0% /dev/shm
tmpfs                            487M  7.7M  479M   2% /run
tmpfs                            487M     0  487M   0% /sys/fs/cgroup
/dev/sda1                       1014M  133M  882M  14% /boot
tmpfs                             98M     0   98M   0% /run/user/0
/dev/mapper/vg01-lv01            2.2G  4.5M  2.1G   1% /mnt01

扩容Swap空间

增加一个硬盘或分区来扩容swap空间

#查看swap空间
[root@workstation ~]# free -mtotal        used        free      shared  buff/cache   available
Mem:            972         129         705           7         137         683
Swap:          2047           0        2047
[root@workstation ~]# swapon -s
Filename                                Type            Size    Used    Priority
/dev/dm-1                               partition       2097148 0       -2
[root@workstation ~]# mkswap /dev/sdb1
mkswap: /dev/sdb1: warning: wiping old ext4 signature.
Setting up swapspace version 1, size = 2097148 KiB
no label, UUID=cf7f9c58-7078-43fa-9a7e-a2c628cf57a2
[root@workstation ~]# blkid /dev/sdb1
/dev/sdb1: UUID="cf7f9c58-7078-43fa-9a7e-a2c628cf57a2" TYPE="swap"
#激活swap分区 swap分区不能手动挂载
[root@workstation ~]# swapon /dev/sdb1
[root@workstation ~]# swapon -s
Filename                                Type            Size    Used    Priority
/dev/dm-1                               partition       2097148 0       -2
/dev/sdb1                               partition       2097148 0       -3

逻辑卷实现条带化

条带化:把保存到逻辑卷的数据分成N份,分别写到不同的物理卷,可以提高数据的读写效率,但如果任何一个涉及到的物理卷出现问题,数据就会无法恢复。


[root@workstation ~]# lsblk | grep sdc
sdc                       8:32   0   20G  0 disk
├─sdc1                    8:33   0    2G  0 part
└─sdc2                    8:34   0    2G  0 part
#创建物理卷
[root@workstation ~]# pvcreate /dev/sdc[12]Physical volume "/dev/sdc1" successfully created.Physical volume "/dev/sdc2" successfully created.#创建卷组
[root@workstation ~]# vgcreate vg01 /dev/sdc[12]Volume group "vg01" successfully created
[root@workstation ~]# pvs /dev/sdc[12]PV         VG   Fmt  Attr PSize  PFree/dev/sdc1  vg01 lvm2 a--  <2.00g <2.00g/dev/sdc2  vg01 lvm2 a--  <2.00g <2.00g#实现条带化逻辑卷[root@workstation ~]# lvcreate -n lv01 -L 1G vg01 -i 2 /dev/sdc[12]Using default stripesize 64.00 KiB.Logical volume "lv01" created.
[root@workstation ~]# lvs /dev/vg01/lv01LV   VG   Attr       LSize Pool Origin Data%  Meta%  Move Log Cpy%Sync Convertlv01 vg01 -wi-a----- 1.00g
[root@workstation ~]# pvs /dev/sdc[12]PV         VG   Fmt  Attr PSize  PFree/dev/sdc1  vg01 lvm2 a--  <2.00g <1.50g/dev/sdc2  vg01 lvm2 a--  <2.00g <1.50g[root@workstation ~]# mkdir /my-mnt
[root@workstation ~]# mkfs.ext4 /dev/vg01/lv01
[root@workstation ~]# mount /dev/vg01/lv01 /my-mnt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/24172.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

TechTool Pro for mac(硬件监测和系统维护工具)

TechTool Pro 是为 Mac OS X 重新设计的全新工具程序&#xff0c;不但保留旧版原有的硬件侦测功能&#xff0c;还可检查系统上其他重要功能&#xff0c;如&#xff1a;网络连接&#xff0c;区域网络等。 TechTool Pro for mac随时监控和保护您的电脑&#xff0c;并可预设定期检…

最新SecureCRT 中文注册版

SecureCRT是一款由VanDyke Software公司开发的终端仿真软件&#xff0c;它提供了类似于Telnet和SSH等协议的远程访问功能。SecureCRT专门为网络管理员、系统管理员和其他需要保密访问网络设备的用户设计。 软件下载&#xff1a;SecureCRT for ma注册版 远程访问&#xff1a;Sec…

MySQL 与MongoDB区别

一、什么是MongoDB呢 ? MongoDB 是由C语言编写的&#xff0c;是一个基于分布式文件存储的开源数据库系统。在高负载的情况下&#xff0c;添加更多的节点&#xff0c;可以保证服务器性能。 MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB 将数据存储为一…

【PHP代码审计】ctfshow web入门 php特性 93-104

ctfshow web入门 php特性 93-104 web 93web 94web 95web 96web 97web 98web 99web 100web 101web 102web 103web 104 web 93 这段PHP代码是一个简单的源码审计例子&#xff0c;让我们逐步分析它&#xff1a; include("flag.php");: 这行代码将flag.php文件包含进来。…

如何建立含有逻辑删除字段的唯一索引

业务场景 在实际工作当中&#xff0c;遇到一个场景&#xff0c;就是在用户注册时&#xff0c;名字要全局唯一&#xff0c;当然&#xff0c;我们是可以对用户进行删除的&#xff0c;你会怎么去做&#xff1f; 分析 一般来说&#xff0c;我们可以在用户注册请求时&#xff0c…

习题1.27

先写代码 (defn square [x] (* x x)) (defn expmod[base exp m](cond ( exp 0) 1(even? exp) (mod (square (expmod base (/ exp 2) m)) m):else (mod (* base (expmod base (- exp 1) m)) m)))(defn fermat-test[n](defn try-it [a](cond ( a n) (println "test end&qu…

极狐GitLab 全新「价值流仪表盘」使用指南

本文来源&#xff1a;about.gitlab.com 作者&#xff1a;Haim Snir 译者&#xff1a;极狐(GitLab) 市场部内容团队 GitLab / 极狐GitLab 价值流仪表盘的使用相对简单&#xff0c;这种可以定制化的仪表盘能够让决策者识别数字化转型进程中的趋势及机遇。 如果你已经在用 GitLab…

Android学习之路(1) App工程的项目结构

一、App工程的项目结构 1.项目下面有两个分类 一个是app(代表app模块)&#xff0c;另一个是Gradle Scripts。其中app下面又有3个子目录&#xff0c;其功能说明如下&#xff1a; manifests 子目录下面只有一个XML文件&#xff0c;即AndroidManifest.xmljava子目录&#xff0c;…

谈谈量子计算技术

目录 1.什么是量子计算 2.量子计算的应用领域 3.量子计算对现代科学的影响 4.量子计算未来的发展趋势 1.什么是量子计算 量子计算是一种基于量子力学原理的计算方法&#xff0c;利用量子比特&#xff08;Quantum Bit&#xff0c;简称qubit&#xff09;而不是经典计算中的比特…

shell 脚本

一、使用PID过滤该进程的所有信息 #! /bin/bash # Function: 根据用户输入的PID&#xff0c;过滤出该PID所有的信息 read -p "请输入要查询的PID: " P nps -aux| awk $2~/^$P$/{print $11}|wc -l if [ $n -eq 0 ];thenecho "该PID不存在&#xff01;&#xff0…

MobPush Android SDK 厂商推送限制

概述 厂商推送限制 每个厂商通道都有对应的厂商配额和 QPS 限制&#xff0c;当请求超过限制且已配置厂商回执时&#xff0c;MobPush会采取以下措施&#xff1a; 当开发者推送请求超过厂商配额时&#xff0c;MobPush将通过自有通道进行消息下发。当开发者推送请求超过厂商 QP…

【雕爷学编程】Arduino动手做(184)---快餐盒盖,极低成本搭建机器人实验平台

吃完快餐粥&#xff0c;除了粥的味道不错之外&#xff0c;我对个快餐盒的圆盖子产生了兴趣&#xff0c;能否做个极低成本的简易机器人呢&#xff1f;也许只需要二十元左右 知识点&#xff1a;轮子&#xff08;wheel&#xff09; 中国词语。是用不同材料制成的圆形滚动物体。简…

【雕爷学编程】Arduino动手做(186)---WeMos ESP32开发板9

37款传感器与模块的提法&#xff0c;在网络上广泛流传&#xff0c;其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块&#xff0c;依照实践出真知&#xff08;一定要动手做&#xff09;的理念&#xff0c;以学习和交流为目的&#x…

Flutter游戏引擎Flame系列笔记 - 1.Flame引擎概述

Flutter游戏引擎Flame系列笔记 1.Flame引擎概述 - 文章信息 - Author: 李俊才(jcLee95) Visit me at: https://jclee95.blog.csdn.netEmail: 291148484163.com. Shenzhen ChinaAddress of this article:https://blog.csdn.net/qq_28550263/article/details/132119035 【介绍】…

03.利用Redis实现缓存功能---解决缓存穿透版

学习目标&#xff1a; 提示&#xff1a;学习如何利用Redis实现添加缓存功能解决缓存穿透版 学习产出&#xff1a; 缓存穿透讲解图&#xff1a; 解决方案&#xff1a; 采用缓存空对象采用布隆过滤器 解决方案流程图&#xff1a; 1. 准备pom环境 <dependency><gro…

MapReduce基础原理、MR与MPP区别

MapReduce概述 MapReduce&#xff08;MR&#xff09;本质上是一种用于数据处理的编程模型&#xff1b;MapReduce用于海量数据的计算&#xff0c;HDFS用于海量数据的存储&#xff08;Hadoop Distributed File System&#xff0c;Hadoop分布式文件系统&#xff09;。Hadoop MapR…

uniapp:图片验证码检验问题处理

图形验证码功能实现 uniapp&#xff1a;解决图形验证码问题及利用arraybuffer二进制转base64格式图片&#xff08;后端传的图片数据形式&#xff1a;x00\x10JFIF\x00\x01\x02\x00…&#xff09;_❆VE❆的博客-CSDN博客 UI稿&#xff1a; 需求&#xff1a;向后端请求验证码图片&…

arcgis--网络分析(理论篇)

1、定义概念 &#xff08;1&#xff09;网络&#xff1a;由一系列相互联通的点和线组成&#xff0c;用来描述地理要素&#xff08;资源&#xff09;的流动情况。 &#xff08;2&#xff09;网络分析&#xff1a;对地理网络&#xff08;如交通网络、水系网络&#xff09;&…

RTT(RT-Thread)时钟管理

目录 时钟管理 时钟节拍 RTT工程目录结构介绍 配置文件&#xff1a;rtconfig.h 获取系统节拍 获取系统节拍数函数 实例 定时器 RT_Thread定时器介绍 定时器源码分析&#xff08;了解即可&#xff09; rt_system_timer_init (硬件定时器初始化) rt_system_timer_thr…

安全防护,保障企业图文档安全的有效方法

随着企业现在数据量的不断增加和数据泄露事件的频发&#xff0c;图文档的安全性成为了企业必须高度关注的问题。传统的纸质文件存储方式已不适应现代企业的需求&#xff0c;而在线图文档管理成为了更加安全可靠的数字化解决方案。那么在在线图文档管理中&#xff0c;如何采取有…