Linux分区、挂载、配额、逻辑卷、RAID、系统综合状态查看
分区与挂载
fdisk
- fdisk 命令是一个用于磁盘分区管理的命令行工具,可以用来创建、删除、调整分区等操作。常用的 fdisk 命令选项包括:
fdisk -l:列出系统中的所有磁盘分区信息。
fdisk /dev/sdX:打开指定磁盘进行分区操作。
n:创建新分区。
d:删除分区。
p:显示分区表。
w:保存并退出。
mount
- mount 命令用于将文件系统挂载到指定的挂载点上,使得文件系统中的内容可以被访问。常用的 mount 命令选项包括:
mount /dev/sdX /mnt:将设备 /dev/sdX 挂载到挂载点 /mnt。
mount -t ext4 /dev/sdX /mnt:指定文件系统类型为 ext4 进行挂载。
mount -o remount,rw /mnt:重新挂载为可读写模式。
umount /mnt:卸载挂载点 /mnt。
临时挂载和配置文件挂载
临时挂载
临时挂载是指在当前系统会话中手动挂载文件系统,挂载的效果仅在当前系统重启前有效。临时挂载通常用于临时需要访问某个文件系统或临时调试的情况。以下是临时挂载的步骤:
-
创建挂载点:在系统中选择一个目录作为挂载点,例如
/mnt。sudo mkdir /mnt/mydrive -
挂载文件系统:使用
mount命令将文件系统挂载到指定的挂载点上。sudo mount /dev/sdX1 /mnt/mydrive -
访问文件系统:挂载完成后,您可以通过挂载点
/mnt/mydrive访问文件系统中的内容。
配置文件挂载
配置文件挂载是指在系统启动时自动挂载文件系统,通过编辑配置文件实现。配置文件挂载可以确保文件系统在系统启动时自动挂载,提高系统的稳定性和可靠性。以下是配置文件挂载的步骤:
-
编辑 /etc/fstab 文件:打开
/etc/fstab文件,添加需要挂载的文件系统信息。sudo nano /etc/fstab -
添加挂载信息:在
/etc/fstab文件中添加需要挂载的文件系统信息,包括设备、挂载点、文件系统类型和挂载选项。/dev/sdX1 /mnt/mydrive ext4 defaults 0 0 -
重新挂载文件系统:可以手动重新挂载所有在
/etc/fstab中定义的文件系统,或者重启系统使配置生效。sudo mount -a
通过配置文件挂载,可以实现系统启动时自动挂载文件系统,避免手动操作,提高系统的自动化程度。
总结
- 临时挂载:手动挂载文件系统,在当前系统会话中有效。
- 配置文件挂载:通过编辑
/etc/fstab文件实现系统启动时自动挂载文件系统。
希望这些信息对您详细介绍了临时挂载和配置文件挂载的过程。如果您有任何其他问题或需要进一步了解,请随时提出。
mkfs 命令 用于格式化分区并创建文件系统。
mkfs 命令用于创建文件系统。它可以将指定的分区格式化为特定类型的文件系统。常用的 mkfs 命令选项包括:
-
创建 ext4 文件系统:
mkfs.ext4 /dev/sdX1 -
创建 xfs 文件系统:
mkfs.xfs /dev/sdX1 -
创建 FAT32 文件系统:
mkfs.vfat /dev/sdX1 -
创建其他类型的文件系统:可以使用
mkfs命令的其他变体(如mkfs.btrfs、mkfs.ntfs等)来创建不同类型的文件系统。
parted 命令 用于管理磁盘分区,包括创建、删除和调整分区。
parted 命令是一个用于管理磁盘分区的工具,支持更复杂的分区操作。常用的 parted 命令选项包括:
-
启动 parted:
parted /dev/sdX -
显示分区表:
(parted) print -
创建新分区:
(parted) mkpart primary ext4 1MiB 100MiB -
删除分区:
(parted) rm 1 -
调整分区大小:
(parted) resizepart 1 200MiB -
设置分区标志:
(parted) set 1 boot on
分区和挂载磁盘配额
磁盘配额(Disk Quota)是用于限制用户或用户组在文件系统中使用的磁盘空间的机制。通过设置磁盘配额,可以有效管理磁盘资源,防止某个用户或用户组占用过多的磁盘空间。以下是设置和管理磁盘配额的步骤:
1. 启用配额支持
在挂载文件系统时,需要启用配额支持。可以通过编辑 /etc/fstab 文件来实现。
-
打开
/etc/fstab文件:sudo nano /etc/fstab -
在需要启用配额的文件系统挂载选项中添加
usrquota和/或grpquota,例如:/dev/sdX1 /mnt/mydrive ext4 defaults,usrquota,grpquota 0 0
2. 重新挂载文件系统
修改完 /etc/fstab 后,需要重新挂载文件系统以使配额设置生效:
sudo mount -o remount /mnt/mydrive
3. 创建配额数据库
使用 quotacheck 命令创建配额数据库文件:
sudo quotacheck -cug /mnt/mydrive
-c:创建配额文件。-u:检查用户配额。-g:检查组配额。
4. 启用配额
使用 quotaon 命令启用配额:
sudo quotaon /mnt/mydrive
5. 设置配额
使用 edquota 命令为特定用户设置配额:
sudo edquota username
这将打开一个编辑器,您可以在其中设置软限制和硬限制:
- 软限制:用户可以超过此限制,但会收到警告。
- 硬限制:用户不能超过此限制。
6. 查看配额
使用 quota 命令查看用户的配额使用情况:
quota -u username
7. 取消配额
如果需要取消配额,可以使用 quotaoff 命令:
sudo quotaoff /mnt/mydrive
例子
xfs_quota -x -c 'report --ugibh' /mnt/disk1
这条命令用于生成指定路径 /mnt/disk1 下的磁盘配额报告。
-x 选项表示以扩展格式显示报告。
-c ‘report --ugibh’ 表示执行 report 命令,并使用 --ugibh 选项指定显示用户(u)、组(g)、inode(i)、块(b)和文件硬链接(h)的配额信息。
xfs_quota -x -c 'limit -u isoft=5 ihard=10 user1' /mnt/disk1
这条命令用于为用户 user1 设置磁盘配额限制。
-x 选项表示以扩展格式显示报告。
-c ‘limit -u isoft=5 ihard=10 user1’ 表示执行 limit 命令,设置用户 user1 的软限制(isoft=5)和硬限制(ihard=10)。
isoft=5 表示软限制为 5 个文件或目录。
ihard=10 表示硬限制为 10 个文件或目录。
扩充swap空间
使用一个分区扩充 Swap 分区:
-
创建一个文件用于扩充 Swap 分区:
sudo fallocate -l 1G /path/to/new_swapfile -
将文件设置为 Swap 文件:
sudo mkswap /path/to/new_swapfile -
启用新的 Swap 文件:
sudo swapon /path/to/new_swapfile -
永久配置新的 Swap 文件:
- 在
/etc/fstab文件中添加以下行:/path/to/new_swapfile none swap sw 0 0
- 在
-
重新加载 Swap 配置:
sudo swapon -a
使用一个分区扩充 Swap 分区:
-
创建一个分区,例如
/dev/sdX2。 -
将分区设置为 Swap 分区:
sudo mkswap /dev/sdX2 -
启用新的 Swap 分区:
sudo swapon /dev/sdX2 -
永久配置新的 Swap 分区:
- 在
/etc/fstab文件中添加以下行:/dev/sdX2 none swap sw 0 0
- 在
-
重新加载 Swap 配置:
sudo swapon -a
配置文件中设置 Swap 分区:
-
编辑
/etc/fstab文件:- 打开
/etc/fstab文件:sudo nano /etc/fstab - 添加 Swap 分区或文件的配置信息,例如:
/path/to/new_swapfile none swap sw 0 0 或 /dev/sdX2 none swap sw 0 0
- 打开
-
重新加载 Swap 配置:
sudo swapon -a
fstab的含义
/etc/fstab 是 Linux 系统中的一个配置文件,用于定义文件系统的挂载信息。在 /etc/fstab 文件中,每一行都描述了一个文件系统的挂载信息,包括设备、挂载点、文件系统类型、挂载选项、备份频率和其他信息。以下是 /etc/fstab 文件中常见字段的含义:
-
设备(Device):指定要挂载的设备或分区的路径,可以是设备文件(如
/dev/sda1)或 UUID。 -
挂载点(Mount Point):指定文件系统挂载的目标目录,即文件系统将被挂载到哪个位置。
-
文件系统类型(File System Type):指定文件系统的类型,如 ext4、xfs、ntfs 等。
-
挂载选项(Mount Options):指定文件系统的挂载选项,如读写权限、自动挂载、不允许执行等。
-
备份频率(Dump):用于指定文件系统备份工具
dump的备份频率,通常设置为 0 表示不备份。 -
文件系统检查顺序(Fsck Order):用于指定文件系统检查工具
fsck的检查顺序,通常设置为 0 表示不检查。
一个典型的 /etc/fstab 文件示例可能如下所示:
/dev/sda1 / ext4 defaults 0 1
/dev/sdb1 /data xfs defaults 0 2
UUID=1234-5678 /mnt/external vfat defaults 0 0
在这个示例中:
/dev/sda1是设备路径,挂载到根目录/,文件系统类型为 ext4,使用默认挂载选项。/dev/sdb1是设备路径,挂载到/data目录,文件系统类型为 xfs,使用默认挂载选项,备份频率为 2。UUID=1234-5678是设备的 UUID,挂载到/mnt/external目录,文件系统类型为 vfat,使用默认挂载选项,不进行备份。
RAID
RAID(Redundant Array of Independent Disks)是一种通过将多个磁盘组合在一起来提高数据存储性能、容量和冗余度的技术。RAID 可以提供数据冗余、提高读写性能或同时实现两者的优势。以下是常见的 RAID 级别和其特点:
-
RAID 0:
- 条带化(Striping):数据被分割成块并分布在多个磁盘上,提高读写性能。
- 无冗余:没有数据冗余备份,一块磁盘损坏会导致数据丢失。
- 适用性:适合需要高性能而不需要数据冗余的场景。
-
RAID 1:
- 镜像(Mirroring):数据被同时写入两个磁盘,提供数据冗余备份。
- 读性能:读性能较好,写性能略低。
- 适用性:适合需要数据冗余备份的场景。
-
RAID 5:
- 条带化和分布式奇偶校验:数据和奇偶校验信息分布在多个磁盘上,提供数据冗余和读写性能。
- 容错性:可以容忍一块磁盘损坏,数据可恢复。
- 适用性:适合中等性能要求和数据冗余备份的场景。
-
RAID 6:
- 双分布式奇偶校验:比 RAID 5 多一个奇偶校验盘,可以容忍两块磁盘损坏。
- 更高容错性:可以容忍多块磁盘损坏,数据可恢复。
- 适用性:适合对数据安全性要求较高的场景。
-
RAID 10(也称为 RAID 1+0):
- 镜像和条带化:将多组磁盘进行镜像,然后对镜像组进行条带化。
- 性能和容错性:提供较高的读写性能和数据冗余备份。
- 适用性:适合对性能和数据冗余都有要求的场景。
使用mdadm命令用软件实现RAID
mdadm 是 Linux 系统中用于管理软件 RAID 的工具。以下是使用 mdadm 命令创建和管理软件 RAID 的基本步骤:
1. 安装 mdadm
在大多数 Linux 发行版中,可以通过包管理器安装 mdadm:
# 对于 Debian/Ubuntu
sudo apt-get install mdadm# 对于 CentOS/RHEL
sudo yum install mdadm
2. 创建 RAID
以下是创建不同类型 RAID 的示例命令:
创建 RAID 0
sudo mdadm --create --verbose /dev/md0 --level=0 --raid-devices=2 /dev/sda1 /dev/sdb1
创建 RAID 1
sudo mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1
创建 RAID 5
sudo mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sda1 /dev/sdb1 /dev/sdc1
mdadm -D md0 # 可以查看raid磁盘信息
创建 RAID 6
sudo mdadm --create --verbose /dev/md0 --level=6 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
3. 查看 RAID 状态
cat /proc/mdstat
4. 停止 RAID
sudo mdadm --stop /dev/md0
5. 删除 RAID
sudo mdadm --remove /dev/md0
6. 保存 RAID 配置
为了在系统重启时自动加载 RAID,可以将 RAID 配置保存到 /etc/mdadm/mdadm.conf:
sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf
然后更新 initramfs:
sudo update-initramfs -u
7. 创建文件系统
在 RAID 设备上创建文件系统:
sudo mkfs.ext4 /dev/md0
8. 挂载 RAID
创建挂载点并挂载 RAID 设备:
sudo mkdir /mnt/raid
sudo mount /dev/md0 /mnt/raid
9. 在 /etc/fstab 中添加挂载信息
为了在启动时自动挂载 RAID,可以在 /etc/fstab 中添加以下行:
/dev/md0 /mnt/raid ext4 defaults 0 0
例子
sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc1
这条命令的含义是创建一个 RAID 等级为 1(镜像)的软件 RAID 设备 /dev/md0,由两个磁盘组成,分别是 /dev/sdb 和 /dev/sdc1。 RAID 1 提供数据镜像,即数据会同时写入两个磁盘,提供数据冗余备份。
- 添加到配置文件

这组命令的作用是创建一个 XFS 文件系统的软件 RAID 设备,并将其配置保存到/etc/mdadm.conf文件中。以下是每条命令的解释:
-
dd if=/dev/zero of=/dev/sdc bs=4M count=1:- 该命令的作用是向
/dev/sdc磁盘写入一个大小为 4MB 的零填充数据。 - 这个步骤通常用于清除磁盘上的数据或元数据,以便后续创建 RAID。
- 该命令的作用是向
-
echo DEVICE /dev/sd[b,c]1:- 这条命令输出了
/dev/sdb1和/dev/sdc1,指示这两个分区将被用于创建 RAID。
- 这条命令输出了
-
echo DEVICE /dev/sd[b,c]1 >> /etc/mdadm.conf:- 将上述输出追加到
/etc/mdadm.conf文件中,用于指定 RAID 设备的配置。
- 将上述输出追加到
-
mdadm -Evs >> /etc/mdadm.conf:- 该命令用于将当前系统中的 RAID 设备信息追加到
/etc/mdadm.conf文件中,以便在系统重启后重新加载 RAID。
- 该命令用于将当前系统中的 RAID 设备信息追加到
-
mkfs.xfs /dev/md0:- 这条命令用于在
/dev/md0上创建 XFS 文件系统,准备将其用作软件 RAID 设备的文件系统。
- 这条命令用于在
逻辑卷LVM
物理卷和逻辑卷
物理卷(Physical Volume):
- 物理卷是 LVM 中的基本存储单元,通常对应于一个磁盘分区或整个硬盘。
- 物理卷是通过 LVM 标记和管理的磁盘空间,可以将一个或多个物理卷组合成一个卷组(Volume Group)。
- 物理卷上的数据是以物理块(Physical Extents)的形式存储的,这些物理块组成了卷组的基本存储单元。
逻辑卷(Logical Volume):
- 逻辑卷是由卷组中的物理卷分配的虚拟磁盘空间,类似于传统的磁盘分区,但更加灵活和可调整。
- 逻辑卷可以动态调整大小,而无需重新分区或重新格式化磁盘。
- 逻辑卷上的数据是以逻辑块(Logical Extents)的形式存储的,逻辑块可以映射到物理卷上的物理块。
简单的介绍
当您使用 LVM 管理存储时,通常会从物理卷开始构建分区、创建文件系统,最后挂载到系统中。以下是一步步的详细说明:
步骤一:创建物理卷(Physical Volume)
- 使用
pvcreate命令将一个磁盘分区或整个硬盘标记为 LVM 可管理的物理卷。sudo pvcreate /dev/sdb
步骤二:创建卷组(Volume Group)
- 使用
vgcreate命令创建一个新的卷组,并将物理卷添加到该卷组中。sudo vgcreate myvg /dev/sdb
步骤三:创建逻辑卷(Logical Volume)
- 使用
lvcreate命令在卷组中创建一个逻辑卷,并指定逻辑卷的大小。sudo lvcreate -L 10G -n mylv myvg
步骤四:创建文件系统
- 使用适当的工具(如
mkfs.ext4或mkfs.xfs)在逻辑卷上创建文件系统。sudo mkfs.ext4 /dev/myvg/mylv
步骤五:挂载文件系统
- 创建一个目录作为挂载点,然后将文件系统挂载到该目录。
sudo mkdir /mnt/mydata sudo mount /dev/myvg/mylv /mnt/mydata
步骤六:自动挂载
- 如果需要在系统启动时自动挂载文件系统,可以将其添加到
/etc/fstab文件中。echo "/dev/myvg/mylv /mnt/mydata ext4 defaults 0 0" | sudo tee -a /etc/fstab
命令介绍
以下是对在上述例子中使用的 LVM 命令的详细解释:
-
pvcreate /dev/sdb:pvcreate命令用于创建物理卷,将指定的磁盘分区或整个硬盘标记为 LVM 可管理的物理卷。- 在这个例子中,我们将硬盘
/dev/sdb标记为物理卷,以便将其用于后续的卷组创建。
-
pvs:pvs命令用于显示系统中所有物理卷的信息,包括物理卷的名称、大小、空闲空间等。- 运行此命令后,您将看到有关系统中所有物理卷的详细信息,以便了解它们的状态和使用情况。
-
vgcreate myvg /dev/sdb:vgcreate命令用于创建一个新的卷组,并将一个或多个物理卷添加到该卷组中。- 在这个例子中,我们创建了一个名为
myvg的卷组,并将物理卷/dev/sdb添加到该卷组中。
-
vgs:vgs命令用于显示系统中所有卷组的信息,包括卷组的名称、物理卷数量、逻辑卷数量等。
扩充逻辑分区
扩展逻辑卷:
-
扩展逻辑卷大小:
- 使用
lvextend命令来扩展逻辑卷的大小。例如,将逻辑卷mylv扩展 5GB:sudo lvextend -L +5G /dev/myvg/mylv
- 使用
-
扩展文件系统:
- 如果您使用的是 ext4 或 xfs 文件系统,需要使用相应的工具来扩展文件系统。例如,对 ext4 文件系统:
sudo resize2fs /dev/myvg/mylv
- 如果您使用的是 ext4 或 xfs 文件系统,需要使用相应的工具来扩展文件系统。例如,对 ext4 文件系统:
缩减逻辑卷:
-
缩减文件系统:
- 首先,缩减文件系统以释放空间。对于 ext4 文件系统,可以使用以下命令:
sudo resize2fs /dev/myvg/mylv 10G
- 首先,缩减文件系统以释放空间。对于 ext4 文件系统,可以使用以下命令:
-
缩减逻辑卷大小:
- 使用
lvreduce命令来缩减逻辑卷的大小。例如,将逻辑卷mylv缩减至 10GB:sudo lvreduce -L 10G /dev/myvg/mylv
- 使用
文件系统扩大
对逻辑卷进行扩展时,相应的文件系统也需要进行扩展以利用新增的空间。否则df -h命令不会显示分区扩大。
对 ext4 文件系统扩展:
- 扩展 ext4 文件系统:
- 使用
resize2fs命令来扩展 ext4 文件系统。确保在扩展逻辑卷后执行此步骤。sudo resize2fs /dev/myvg/mylv
- 使用
对 xfs 文件系统扩展:
- 扩展 xfs 文件系统:
- 使用
xfs_growfs命令来扩展 xfs 文件系统。确保在扩展逻辑卷后执行此步骤。sudo xfs_growfs /mnt/mydata
- 使用
系统综合状态查看命令
sar
sar 命令是 System Activity Reporter 的缩写,用于收集、报告和存储系统的性能数据。通过 sar 命令,您可以查看系统的 CPU 使用率、内存使用情况、磁盘活动、网络流量等信息。
基本用法:
-
查看系统整体性能:
- 使用
sar命令可以查看系统的整体性能数据,默认情况下显示当前日期的系统活动摘要。 - 例如,运行
sar命令会显示系统的平均负载、CPU 使用率、内存使用情况等信息。
- 使用
-
指定时间间隔和次数:
- 您可以使用
-n参数指定输出数据的时间间隔(秒)和次数。 - 例如,
sar -n ALL 1 5表示每秒输出一次系统性能数据,共输出 5 次。
- 您可以使用
常用选项:
-
CPU 相关:
-u:显示 CPU 使用率。-P ALL:显示每个 CPU 的使用率。
-
内存相关:
-r:显示内存使用情况。
-
磁盘相关:
-b:显示磁盘 I/O 统计信息。
-
网络相关:
-n DEV:显示网络接口的统计信息。
高级选项:
-
输出到文件:
- 使用
-o参数将sar输出保存到文件中,以便后续分析。
- 使用
-
指定时间范围:
- 使用
-s和-e参数指定开始时间和结束时间,以查看特定时间范围内的系统性能数据。
- 使用
-
查看历史数据:
- 使用
-f参数指定历史数据文件,可以查看以前收集的sar数据。
- 使用
常用命令
要查询系统的综合状态,您可以使用一系列命令来获取有关系统资源、进程、网络连接等方面的信息。
-
查看系统负载:
- 使用
uptime命令可以查看系统的平均负载以及系统运行时间。 - 使用
top或htop命令可以实时查看系统的负载情况、进程信息等。
- 使用
-
查看内存使用情况:
- 使用
free -h命令可以查看系统的内存使用情况。 - 使用
top或htop命令也可以查看内存使用情况。
- 使用
-
查看磁盘空间:
- 使用
df -h命令可以查看系统的磁盘空间使用情况。 - 使用
du -h命令可以查看指定目录的磁盘使用情况。
- 使用
-
查看网络连接:
- 使用
netstat命令可以查看系统的网络连接情况。 - 使用
ss命令也可以查看网络连接信息。
- 使用
-
查看进程信息:
- 使用
ps aux命令可以查看系统的进程信息。 - 使用
top或htop命令可以实时查看系统的进程信息。
- 使用
-
查看日志信息:
- 使用
journalctl命令可以查看系统日志信息。 - 使用
dmesg命令可以查看内核日志信息。
- 使用
相关文章:
Linux分区、挂载、配额、逻辑卷、RAID、系统综合状态查看
分区与挂载 fdisk fdisk 命令是一个用于磁盘分区管理的命令行工具,可以用来创建、删除、调整分区等操作。常用的 fdisk 命令选项包括: fdisk -l:列出系统中的所有磁盘分区信息。 fdisk /dev/sdX:打开指定磁盘进行分区操作。 n&…...
3D Gaussian Splatting 代码层理解之Part1
2023 年初,来自蔚蓝海岸大学和 马克斯普朗克学会的作者发表了一篇题为“用于实时现场渲染的 3D 高斯泼溅”的论文。该论文提出了实时神经渲染的重大进步,超越了NeRF等以前方法的实用性。高斯泼溅不仅减少了延迟,而且达到或超过了 NeRF 的渲染质量,在神经渲染领域掀起了一场…...
Qt小知识-Q_GLOBAL_STATIC
你还在为创建全局静态对象烦恼嘛,它来了!它来了! qt5提供了两个宏定义Q_GLOBAL_STATIC和Q_GLOBAL_STATIC_WITH_ARGS来实现。可以创建一个全局静态对象,对象在第一次使用时初始化自身,这意味着它不会增加应用程序或库的…...
【SpringBoot】使用过滤器进行XSS防御
在Spring Boot中,我们可以使用注解的方式来进行XSS防御。注解是一种轻量级的防御手段,它可以在方法或字段级别对输入进行校验,从而防止XSS攻击。 而想对全局的请求都进行XSS防御可以使用servlet中的过滤器或者spring mvc中的拦截器ÿ…...
创建vue插件,发布npm
开发步骤:1.创建一个vue项目,2.开发一个组件。 3.注册成插件。 4.vite和package.json配置。5.发布到npm 1.创建一个vue项目 npm create vuelatest 生成了vue项目之后,得到了以下结构。 在src下创建个plugins目录。用于存放开发的…...
【Android Compose原创组件】可拖动滚动条的完美实现
项目背景 我在使用安卓Compose开发自己的【JK管理器】的过程中,很多地方都需要使用滚动条,在Github上也有实现的比较好,但是大多都是基于View(我要的是Compose啊)。 在研究Android 官方示例项目 nowinandroid 中&…...
【模块一】kubernetes容器编排进阶实战之资源管理核心概念
kubernetes 资源管理核心概念 k8s的设计理念—分层架构 CRI-container runtime interface-容器运行接口 CNI-container network interface-容器网络接口 CSI-container storage interface-容器存储接口 k8s的设计理念—API设计原则 https://www.kubernetes.org.cn/kubernete…...
用Python设置PowerPoint幻灯片背景
使用Python自动化处理Office文档,如PowerPoint演示文稿,是提高效率和创造力的重要手段。设置PowerPoint幻灯片背景不仅能够增强演示文稿的视觉吸引力,还能帮助传达特定的情感或信息,使观众更加投入。通过编程方式批量修改幻灯片背…...
Restful API接⼝简介及为什么要进⾏接⼝压测
一、RESTful API简介 在现代Web开发中,RESTful API已经成为一种标准的设计模式,用于构建和交互网络应用程序。本文将详细介绍RESTful API的基本概念、特点以及如何使用它来设计高效的API接口。 1. 基于协议 HTTP 或 HTTPS RESTful API通常使用HTTP&am…...
[pyspark] pyspark中如何修改列名字
使用 .withColumnRenamed 来重命名,直接看demo: from pyspark.sql import SparkSessionspark SparkSession.builder.appName("example").getOrCreate()data [("Alice", 1, 200),("Bob", 2, 300),("Charlie",…...
掌握 Spring Boot 的最佳方法 – 学习路线图
在企业界,人们说“Java 永垂不朽!”。但为什么呢?Java 仍然是开发企业应用程序的主要平台之一。大型公司使用企业应用程序来赚钱。这些应用程序具有高可靠性要求和庞大的代码库。根据Java开发人员生产力报告,62% 的受访开发人员使…...
element-ui】使用el_upload上传文件无法动态修改action
问题:最近在使用el_upload上传文件时,发现无法动态修改action的值,进行提交时,caseId2还是默认值null 原因:el-upload的先执行上传,后执行action里的响应,也就是赋值等操作。 解决方法&#x…...
如何查看电脑支持的最大内存
如何查看电脑支持的最大内存 要查看电脑支持的最大内存容量,可以通过以下几种方法: 一、使用Windows命令查询 打开命令提示符:按下“WinR”键,打开运行窗口,输入“cmd”,然后点击确定。输入查询命令&…...
24 年第十届数维杯国际数模竞赛赛题浅析
本次万众瞩目的数维杯国际大学生数学建模赛题已正式出炉,无论是赛题难度还是认可度,该比赛都是数模届的独一档,含金量极高,可以用于综测加分、保研、简历添彩等各方面。考虑到大家解题实属不易,为了帮助大家取得好成绩…...
Dubbo 3.x源码(25)—Dubbo服务引用源码(8)notify订阅服务通知更新
基于Dubbo 3.1,详细介绍了Dubbo服务的发布与引用的源码。 此前我们学习了接口级的服务引入订阅的refreshInterfaceInvoker方法,当时还有最为关键的notify服务通知更新的部分源码没有学习,本次我们来学习notify通知本地服务更新的源码。 Dubb…...
排序算法 -计数排序
文章目录 1. 计数排序(Counting Sort)1.1 简介1.2 计数排序的步骤1.3 计数排序C语言实现注释说明: 1.4 时间复杂度1.5 空间复杂度 1. 计数排序(Counting Sort) 1.1 简介 计数排序(Counting Sortÿ…...
Java学习,基本数据类型
变量就是申请内存来存储值,当创建变量的时候,需要在内存中申请空间。内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据。Java 提供了八种基本数据类型,这些类型可以分为四大类:整数类型…...
单片机GPIO中断+定时器 软件串口通信
单片机GPIO中断定时器 软件串口通信 解决思路代码示例 解决思路 串口波特率9600bps,每个bit约为1000000us/9600104.16us; 定时器第一次定时时间设为52us即半个bit的时间,其目的是偏移半个bit时间,之后的每104us采样并读取1bit数据。使得采样…...
elementui el-table中给表头 el-table-column 加一个鼠标移入提示说明
前言 在使用el-table 表格中有些表格的表头需要加入一些提示,鼠标移入则出现提示,非常实用,我是通过el-table中的el-tooltip实现的,以下的效果预览 代码实现 <el-table ref"multipleTable" :data"data"…...
NVR小程序接入平台/设备EasyNVR多个NVR同时管理设备接入:海康NVR 3.0提示不在线如何处理?
在视频监控领域,设备的兼容性和互操作性一直是用户关注的重点。海康NVR管理平台EasyNVR作为一款轻量级的视频监控平台,凭借其强大的兼容性、可扩展性和丰富的功能,成为了公共安全领域“云平台”解决方案的杰出代表。然而,在实际应…...
从“偏科生”GPT-3到“全能选手”:聊聊MMLU基准如何推动大模型进化
从“偏科生”到“全能选手”:MMLU基准如何重塑大模型进化路径 当GPT-3在2020年以1750亿参数震惊世界时,人们很快发现这个"天才"存在明显的知识盲区——它在某些专业领域的表现堪比专家,却在另一些基础学科上失误频频。这种"偏…...
Wan2.2-I2V-A14B GPU算力优化:显存碎片整理与缓存复用机制解析
Wan2.2-I2V-A14B GPU算力优化:显存碎片整理与缓存复用机制解析 1. 引言 在视频生成领域,Wan2.2-I2V-A14B模型凭借其出色的生成质量和稳定性,已成为众多企业和开发者的首选。然而,随着视频分辨率和时长的提升,显存资源…...
别再手动飞了!用Python脚本一键操控AirSim无人机,实现自动巡航与悬停
用Python脚本全自动操控AirSim无人机:从基础巡航到复杂航线规划 在无人机仿真测试和算法开发中,手动控制不仅效率低下,更难以保证飞行动作的精确性和可重复性。想象一下,当你需要测试一个新型避障算法,或者采集特定飞行…...
Qt6 QML自定义控件实战:手把手教你做一个Material Design风格的Switch开关
Qt6 QML实战:打造Material Design风格Switch开关的完整指南 在移动端和桌面端应用开发中,开关控件(Switch)是最常用的交互元素之一。一个精致的开关不仅能提升用户体验,还能体现应用的整体设计水准。本文将带你从零开始,用Qt6 QML…...
如何免费快速转换音频格式:fre:ac音频转换器完整指南
如何免费快速转换音频格式:fre:ac音频转换器完整指南 【免费下载链接】freac The fre:ac audio converter project 项目地址: https://gitcode.com/gh_mirrors/fr/freac 想要高效处理音频文件却不想花钱购买专业软件?fre:ac音频转换器是您的最佳选…...
提示工程架构师用Agentic AI,为智能城市提升品质生活
提示工程架构师:借助Agentic AI提升智慧城市品质生活 一、引言 (Introduction) 钩子 (The Hook) 想象一下,你生活在这样一个城市:每天清晨,你的智能设备会根据当天的天气、你的日程安排,精准推荐最适宜的衣物和出行方式…...
深入剖析Dynamic-Datasource:迭代器模式在数据源扩展中的完整实现指南
深入剖析Dynamic-Datasource:迭代器模式在数据源扩展中的完整实现指南 【免费下载链接】dynamic-datasource dynamic datasource for springboot 多数据源 动态数据源 主从分离 读写分离 分布式事务 项目地址: https://gitcode.com/gh_mirrors/dy/dynamic-dataso…...
嵌入式LED控制库:裸机/RTOS下的确定性状态管理
1. 项目概述"FonctionLED" 是一个面向嵌入式微控制器的轻量级 LED 控制函数库,其设计目标并非提供图形化界面或高级动画引擎,而是聚焦于底层硬件操作的可靠性、可预测性与最小资源占用。从项目标题(法语“LED功能”)和摘…...
技术小白AI入门避坑指南:避开4大雷区,高效进阶不走弯路
技术小白AI入门避坑指南:避开4大雷区,高效进阶不走弯路 前言:作为技术小白,入门AI的路上,最可怕的不是“基础薄弱”,而是“走偏方向”——明明付出了时间和精力,却因为踩中误区,要么…...
AMC1100隔离放大器实战:如何用DUB封装搞定三相电流电压测量?
AMC1100隔离放大器实战:DUB封装在三相测量中的高阶应用 工业电力监测领域对精度与安全性的双重苛求,催生了隔离放大器技术的持续迭代。当我在某变电站监测系统升级项目中首次接触AMC1100时,这款采用DUB封装的全差分隔离放大器以其独特的抗磁场…...
