过来,我告诉你个秘密:送给程序员男友最好的礼物,快教你对象学习磁盘分区啦!小点声哈,别让其他人学会了!
[原文连接:来自给点知识](过来,我告诉你个秘密:送给程序员男友最好的礼物,快教你对象学习磁盘分区啦!小点声哈,别让其他人学会了!)
再唱不出那样的歌曲
听到都会红着脸躲避
虽然会经常忘了我依然爱着你
----------------正文章分割线(前面都是乱七八糟)-------------------
1 整体流程
流程就是这样,我们这里使用virtualbox来进行测试
2 详细介绍-先有个磁盘
使用虚拟机创建一个磁盘,这里使用Virtualbox进行演示,这里可以看到增加了一个磁盘
开机后,我们使用fdisk命令 查看下新的磁盘,可以看到磁盘/dev/sdb 也就是新的磁盘已经出现了。(下面图就是怕你不看字加的)
[root@model ~]# fdisk -l磁盘 /dev/sda:8589 MB, 8589934592 字节,16777216 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x000a64a6设备 Boot Start End Blocks Id System /dev/sda1 * 2048 2099199 1048576 83 Linux /dev/sda2 2099200 16777215 7339008 8e Linux LVM
# 这里是新的磁盘2G 磁盘 /dev/sdb:2147 MB, 2147483648 字节,4194304 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节# 这个是逻辑分区,包含操作系统和系统文件 磁盘 /dev/mapper/centos-root:6652 MB, 6652166144 字节,12992512 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节# 这个是虚拟内存交换分区,用于内存不足时的填空 磁盘 /dev/mapper/centos-swap:859 MB, 859832320 字节,1679360 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节
4.3 分区磁盘
分区磁盘的命令 fdisk
1. 我们对磁盘进行分区,执行fdisk /dev/sdb
[root@model ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。Device does not contain a recognized partition table
使用磁盘标识符 0x20eb83d3 创建新的 DOS 磁盘标签。2.让我们输入信息,我们输入n表示增加一个分区,会让我们选择什么类型的分区,我先选择主分区,再选择逻辑分区命令(输入 m 获取帮助):n
Partition type:p primary (0 primary, 0 extended, 4 free)e extended
Select (default p): p
分区号 (1-4,默认 1):
起始 扇区 (2048-4194303,默认为 2048):
将使用默认值 20483.表示主分区给它1G
Last 扇区, +扇区 or +size{K,M,G} (2048-4194303,默认为 4194303):+1G
分区 1 已设置为 Linux 类型,大小设为 1 GiB4.继续分区,选择扩展分区(无法直接使用),然后把扩展分区分为逻辑分区就可以挂载使用了命令(输入 m 获取帮助):n
Partition type:p primary (1 primary, 0 extended, 3 free)e extended
Select (default p): e
分区号 (2-4,默认 2):
起始 扇区 (2099200-4194303,默认为 2099200):
将使用默认值 2099200
Last 扇区, +扇区 or +size{K,M,G} (2099200-4194303,默认为 4194303):
将使用默认值 4194303
分区 2 已设置为 Extended 类型,大小设为 1023 MiB
5.接下来分区为逻辑分区一个500M 一个521M
命令(输入 m 获取帮助):n
Partition type:p primary (1 primary, 1 extended, 2 free)l logical (numbered from 5)
Select (default p): l
添加逻辑分区 5
起始 扇区 (2101248-4194303,默认为 2101248):
将使用默认值 2101248
Last 扇区, +扇区 or +size{K,M,G} (2101248-4194303,默认为 4194303):+500M
分区 5 已设置为 Linux 类型,大小设为 500 MiB命令(输入 m 获取帮助):n
Partition type:p primary (1 primary, 1 extended, 2 free)l logical (numbered from 5)
Select (default p): l
添加逻辑分区 6
起始 扇区 (3127296-4194303,默认为 3127296):
将使用默认值 3127296
Last 扇区, +扇区 or +size{K,M,G} (3127296-4194303,默认为 4194303):
将使用默认值 4194303
分区 6 已设置为 Linux 类型,大小设为 521 MiB
6.保存
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
这里出现了这个分区:sdb1、sdb2、sdb5、sdb6
[root@model ~]# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTsda 8:0 0 8G 0 disk├─sda1 8:1 0 1G 0 part /boot└─sda2 8:2 0 7G 0 part├─centos-root 253:0 0 6.2G 0 lvm /└─centos-swap 253:1 0 820M 0 lvm [SWAP]# 这里输出的是磁盘的四大分区,有主分区和逻辑分区sdb 8:16 0 2G 0 disk├─sdb1 8:17 0 1G 0 part├─sdb2 8:18 0 1K 0 part├─sdb5 8:21 0 500M 0 part└─sdb6 8:22 0 521M 0 partsr0 11:0 1 1024M 0 rom
4.3 格式化
执行格式化:使用mkfs.btrfs工具进行格式化成btrfs文件系统
1.可以看到这里挂载会出现提示
[root@model ~]# mount /dev/sdb6 /root/sdb6/mount: /dev/sdb6 写保护,将以只读方式挂载mount: 未知的文件系统类型“(null)”
2.格式化系统,这里我们使用btrfs
[root@model ~]# mkfs.btrfs /dev/sdb6btrfs-progs v4.9.1See http://btrfs.wiki.kernel.org for more information.Label: (null)UUID: a00209ef-70b7-41da-a691-5c04aea8c247Node size: 16384Sector size: 4096Filesystem size: 521.00MiBBlock group profiles:Data: single 8.00MiBMetadata: DUP 32.00MiBSystem: DUP 8.00MiBSSD detected: noIncompat features: extref, skinny-metadataNumber of devices: 1Devices:ID SIZE PATH1 521.00MiB /dev/sdb6
4.4 挂载与使用
1.挂载数据盘
[root@model ~]# mount /dev/sdb6 /root/sdb6/
2.可以看到这个文件的文件系统是btrfs,而且已经挂载到/root/sdb6上了
[root@model ~]# df -Th文件系统 类型 容量 已用 可用 已用% 挂载点devtmpfs devtmpfs 908M 0 908M 0% /dev/dev/sdb6 btrfs 521M 17M 440M 4% /root/sdb6
3.创建文件并使用,使用dd创建命令
[root@model sdb6]# dd if=/dev/zero bs=4M count=100 of=cfiledd: 写入<span data-raw-text-1692439234113="" "="" data-textnode-index-1692439234113="234" data-index-1692439234113="4331" data-index-len-1692439234113="4331" class="character" style="display: inline-block; text-indent: initial;">"cfile<span data-raw-text-1692439234113="" "="" data-textnode-index-1692439234113="234" data-index-1692439234113="4337" data-index-len-1692439234113="4337" class="character" style="display: inline-block; text-indent: initial;">" 出错: 设备上没有空间记录了11+0 的读入记录了10+0 的写出41943040字节(42 MB)已复制,0.408459 秒,103 MB/秒
4.查询创建的文件
[root@model sdb6]# ll总用量 450560-rw-r--r--. 1 root root 419430400 8月 18 22:33 afile-rw-r--r--. 1 root root 41943040 8月 18 22:33 cfile
5.可视化查看文件的大小,以M为单位展示
[root@model sdb6]# ls -alh总用量 441Mdrwxr-xr-x. 1 root root 20 8月 18 22:33 .dr-xr-x---. 9 root root 245 8月 18 22:26 ..-rw-r--r--. 1 root root 400M 8月 18 22:33 afile-rw-r--r--. 1 root root 40M 8月 18 22:33 cfile
6.查看分的大小
[root@model sdb6]# df -Th文件系统 类型 容量 已用 可用 已用% 挂载点devtmpfs devtmpfs 908M 0 908M 0% /devtmpfs tmpfs 919M 0 919M 0% /dev/shmtmpfs tmpfs 919M 17M 903M 2% /runtmpfs tmpfs 919M 0 919M 0% /sys/fs/cgroup/dev/mapper/centos-root xfs 6.2G 1.5G 4.7G 25% //dev/sda1 xfs 1014M 150M 865M 15% /boottmpfs tmpfs 184M 0 184M 0% /run/user/0/dev/sdb6 btrfs 521M 458M 0 100% /root/sdb6[root@model sdb6]# cp -rp cfile dcp: 写入<span data-raw-text-1692439234113="" "="" data-textnode-index-1692439234113="262" data-index-1692439234113="5406" data-index-len-1692439234113="5406" class="character" style="display: inline-block; text-indent: initial;">"d<span data-raw-text-1692439234113="" "="" data-textnode-index-1692439234113="262" data-index-1692439234113="5408" data-index-len-1692439234113="5408" class="character" style="display: inline-block; text-indent: initial;">" 出错: 设备上没有空间cp: 扩展<span data-raw-text-1692439234113="" "="" data-textnode-index-1692439234113="263" data-index-1692439234113="5427" data-index-len-1692439234113="5427" class="character" style="display: inline-block; text-indent: initial;">"d<span data-raw-text-1692439234113="" "="" data-textnode-index-1692439234113="263" data-index-1692439234113="5429" data-index-len-1692439234113="5429" class="character" style="display: inline-block; text-indent: initial;">" 失败: 设备上没有空间
5. 以上用到的命令
1. 查看磁盘信息以及分区fdisk -l2. 查看磁盘挂载情况以及磁盘的文件系统df -Th3. 格式化分区mkfs.btrfs /dev/sdb14. 创建一个400M大的cfile文件dd if=/dev/zero bs=4M count=100 of=cfile
6. 小知识点
-
为什么需要逻辑分区,不能多一点主分区么?
在传统的MBR(Master Boot Record)分区方案中,主分区的数量是有限的,最多只能有4个主分区。这是由于MBR分区表的限制,其中只有4个条目可用于主分区的定义。如果你只需要少量的分区,这可能足够了。
然而,当你需要更多的分区时,逻辑分区就变得非常有用。逻辑分区是在扩展分区内创建的,而扩展分区本身占用了一个主分区条目。扩展分区可以容纳多个逻辑分区,因此你可以在扩展分区内创建更多的逻辑分区,以满足你的分区需求。
逻辑分区的引入允许你在一个物理磁盘上创建更多的分区,这对于多系统安装、数据分区、多用户环境等情况非常有用。通过逻辑分区,你可以更好地组织和管理磁盘空间。
需要注意的是,如果你使用的是新一代的分区方案,如GPT(GUID Partition Table),则没有主分区和逻辑分区的概念限制,可以创建更多的分区(最多可达到128个)。因此,对于使用GPT分区方案的磁盘,你可以更自由地创建分区,而不受主分区和逻辑分区数量的限制。
总之,逻辑分区的存在是为了克服MBR分区表中主分区数量有限的限制,使你能够在一个物理磁盘上创建更多的分区。
逻辑分区的存在是为了解决主分区数量有限的问题。在传统的主引导记录(MBR)分区方案中,主分区的数量被限制为最多四个。这是由于MBR分区表的结构所决定的。因此,如果需要在一个磁盘上创建更多的分区,就需要使用扩展分区和逻辑分区的组合。
扩展分区是主分区中的一个特殊类型,它可以容纳多个逻辑分区。通过创建一个扩展分区,可以在其中划分多个逻辑分区,从而克服了主分区数量的限制。这样可以将磁盘划分为更多的逻辑部分,提供更多的灵活性和可扩展性。
使用逻辑分区和扩展分区的好处包括:
总而言之,逻辑分区和扩展分区的引入允许在主分区数量有限的情况下更好地管理磁盘空间,并提供更大的灵活性和可扩展性。
-
突破主分区数量限制:通过使用扩展分区,可以在一个磁盘上创建更多的分区,以满足不同的需求。
-
灵活的分区管理:逻辑分区可以根据需要创建、删除和调整大小,使得对磁盘空间进行灵活管理成为可能。
-
多系统安装:逻辑分区可以用于安装多个操作系统,每个操作系统都可以独立地位于一个逻辑分区中。
-
数据组织和隔离:通过将数据放置在不同的逻辑分区中,可以更好地组织和隔离数据,提高系统的可维护性和安全性。
-
-
处理fdisk 可以分区外还有哪些工具?
-
使用
parted -l
命令查看系统中存在的磁盘和分区。 -
选择要格式化的磁盘,例如
/dev/sdb
。 -
运行
parted /dev/sdb
命令来对磁盘进行分区操作。 -
使用
mklabel
命令创建新的分区表(例如,使用mklabel gpt
创建GPT分区表)。 -
使用
mkpart
命令创建新的分区。 -
使用
print
命令查看分区信息。 -
运行
mkfs
命令来格式化新分区,例如mkfs.ext4 /dev/sdb1
。
-
使用parted命令:
-
-
为什么要格式化呢?
-
创建文件系统:格式化是在磁盘或分区上创建文件系统的过程。文件系统是一种用于组织和管理数据的结构,它定义了数据的存储方式、元数据的管理以及访问权限等信息。通过格式化,可以为磁盘或分区创建适当的文件系统,以便操作系统和应用程序能够正确地读取和写入数据。
-
清除数据:格式化磁盘或分区会将其上的所有数据全部删除。这可以用作一种数据消除的方法,确保旧数据无法被恢复。当你要出售、捐赠或重新分配磁盘时,进行格式化可以保护你的隐私和数据安全。
-
解决文件系统问题:有时,文件系统可能会出现问题,例如文件系统损坏、文件访问错误或文件系统不一致等。通过格式化,可以清除现有的文件系统并重新构建一个新的文件系统,以解决这些问题。这可以修复文件系统的错误,提高稳定性和可靠性。
-
更改文件系统类型:有时,你可能需要更改磁盘或分区的文件系统类型,以满足特定的需求或兼容性要求。通过格式化,可以将磁盘或分区从一个文件系统类型转换为另一个文件系统类型。
-
-
Linux下有多种文件系统可供选择,以下是一些常见的文件系统及其对应的格式化命令:
请注意,在执行格式化操作之前,请确保你备份了重要的数据,因为格式化将删除磁盘上的所有数据。另外,确保选择适合你需求的文件系统,考虑到性能、兼容性和特定功能的需求。
-
格式化命令:
mkfs.ntfs
-
示例:
mkfs.ntfs /dev/sdb1
-
格式化命令:
mkfs.fat -F 32
-
示例:
mkfs.fat -F 32 /dev/sdb1
-
格式化命令:
mkfs.reiserfs
-
示例:
mkfs.reiserfs /dev/sdb1
-
格式化命令:
mkfs.jfs
-
示例:
mkfs.jfs /dev/sdb1
-
格式化命令:
mkfs.btrfs
-
示例:
mkfs.btrfs /dev/sdb1
-
格式化命令:
mkfs.xfs
-
示例:
mkfs.xfs /dev/sdb1
-
格式化命令:
mkfs.ext3
-
示例:
mkfs.ext3 /dev/sdb1
-
格式化命令:
mkfs.ext4
-
示例:
mkfs.ext4 /dev/sdb1
-
ext4文件系统:
-
ext3文件系统:
-
XFS文件系统:
-
Btrfs文件系统:
-
JFS文件系统:
-
ReiserFS文件系统:
-
FAT32文件系统:
-
NTFS文件系统:
-
相关文章:
过来,我告诉你个秘密:送给程序员男友最好的礼物,快教你对象学习磁盘分区啦!小点声哈,别让其他人学会了!
[原文连接:来自给点知识](过来,我告诉你个秘密:送给程序员男友最好的礼物,快教你对象学习磁盘分区啦!小点声哈,别让其他人学会了!) 再唱不出那样的歌曲 听到都会红着脸躲避 虽然会经常忘了我依然爱着你 …...
Cadence+硬件每日学习十个知识点(38)23.8.18 (Cadence的使用,界面介绍)
文章目录 1.Cadence有共享数据库的途径2.Cadence启动3.Cadence界面菜单简介(file、edit、view、place、options)4.Cadence界面的图标简介5.我的下载资源有三本书 1.Cadence有共享数据库的途径 答: AD缺少共享数据库的途径,目前我…...
React Native Expo项目,复制文本到剪切板
装包: npx expo install expo-clipboard import * as Clipboard from expo-clipboardconst handleCopy async (text) > {await Clipboard.setStringAsync(text)Toast.show(复制成功, {duration: 3000,position: Toast.positions.CENTER,})} 参考链接:…...
React源码解析18(5)------ 实现函数组件【修改beginWork和completeWork】
摘要 经过之前的几篇文章,我们实现了基本的jsx,在页面渲染的过程。但是如果是通过函数组件写出来的组件,还是不能渲染到页面上的。 所以这一篇,主要是对之前写得方法进行修改,从而能够显示函数组件,所以现…...
vscode ssh 远程 gdb 调试
一、点运行与调试,生成launch.json 文件 二、点添加配置,选择GDB 三、修改启动程序路径...
云原生 AI 工程化实践之 FasterTransformer 加速 LLM 推理
作者:颜廷帅(瀚廷) 01 背景 OpenAI 在 3 月 15 日发布了备受瞩目的 GPT4,它在司法考试和程序编程领域的惊人表现让大家对大语言模型的热情达到了顶点。人们纷纷议论我们是否已经跨入通用人工智能的时代。与此同时,基…...
PHP酒店点菜管理系统mysql数据库web结构apache计算机软件工程网页wamp
一、源码特点 PHP 酒店点菜管理系统是一套完善的web设计系统,对理解php编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。 代码下载 https://download.csdn.net/download/qq_41221322/88232051 论文 https://…...
【面试复盘】知乎暑期实习算法工程师二面
来源:投稿 作者:LSC 编辑:学姐 1. 自我介绍 2. 介绍自己的项目 3. 编程题 判断一个链表是不是会文链表class ListNode: def __init__(self, val, nextNone):self.val valself.next nextdef reverse(head):pre Nonep headwhile p ! No…...
内网穿透和服务器+IP 实现公网访问内网的区别
内网穿透和服务器IP 实现公网访问内网的区别在于实现方式和使用场景。 内网穿透(Port Forwarding):内网穿透是一种通过网络技术将公网用户的请求通过中转服务器传输到内网设备的方法。通过在路由器或防火墙上进行配置,将公网请求…...
JAVA权限管理 助力企业精细化运营
在企业的日常经营中,企业人数达到一定数量之后,就需要对企业的层级和部门进行细分,建立企业的树形组织架构。围绕着树形组织架构,企业能够将权限落实到个人,避免企业内部出现管理混乱等情况。权限管理是每个企业管理中…...
金融语言模型:FinGPT
项目简介 FinGPT是一个开源的金融语言模型(LLMs),由FinNLP项目提供。这个项目让对金融领域的自然语言处理(NLP)感兴趣的人们有了一个可以自由尝试的平台,并提供了一个与专有模型相比更容易获取的金融数据。…...
LeetCode--HOT100题(30)
目录 题目描述:24. 两两交换链表中的节点(中等)题目接口解题思路代码 PS: 题目描述:24. 两两交换链表中的节点(中等) 给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节…...
Springboot 实践(3)配置DataSource及创建数据库
前文讲述了利用MyEclipse2019开发工具,创建maven工程、加载springboot、swagger-ui功能。本文讲述创建数据库,为项目配置数据源,实现数据的增删改查服务,并通过swagger-ui界面举例调试服务控制器 创建数据库 项目使用MySQL 8.0.…...
【问题整理】Ubuntu 执行 apt-get install xxx 报错
Ubuntu 执行 apt-get install xxx 报错 一、问题描述: 执行apt-get install fcitx时,报如下错误 grub-pc E: Sub-process /usr/bin/dpkg returned an error code (1)二、解决方法: 尝试修复依赖问题: sudo apt-get -f install这个命令会尝试修复系统…...
Java课题笔记~ SpringBoot简介
1. 入门案例 问题导入 SpringMVC的HelloWord程序大家还记得吗? SpringBoot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程 原生开发SpringMVC程序过程 1.1 入门案例开发步骤 ①:创建新模块&#…...
一种基于springboot、redis的分布式任务引擎的实现(一)
总体思路是,主节点接收到任务请求,将根据任务情况拆分成多个任务块,将任务块标识的主键放入redis。发送redis消息,等待其他节点运行完毕,结束处理。接收到信息的节点注册本节点信息到redis、开启多线程、获取任务块、执…...
基于IDE Eval Resetter延长IntelliJ IDEA等软件试用期的方法(包含新版本软件的操作方法)
本文介绍基于IDE Eval Resetter插件,对集成开发环境IntelliJ IDEA等JetBrains公司下属的多个开发软件,加以试用期延长的方法。 我们这里就以IntelliJ IDEA为例,来介绍这一插件发挥作用的具体方式。不过,需要说明使用IDE Eval Rese…...
RocketMQ消费者可以手动消费但无法主动消费问题,或生成者发送超时
1.大多数是配置问题 修改rocketmq文件夹broker.conf 2.配置与集群IP或本地IPV4一样 重启 在RocketMQ独享实例中支持IPv4和IPv6双栈,主要是通过在网络层面上同时支持IPv4和IPv6协议栈来实现的。RocketMQ的Broker端、Namesrv端和客户端都需要支持IPv4和IPv6协议&…...
【数据库系统】--【2】DBMS架构
DBMS架构 01DBMS架构概述02 DBMS的物理架构03 DBMS的运行和数据架构DBMS的运行架构DBMS的数据架构PostgreSQL的体系结构RMDB的运行架构 04DBMS的逻辑和开发架构DBMS的层次结构DBMS的开发架构DBMS的代码架构 05小结 01DBMS架构概述 02 DBMS的物理架构 数据库系统的体系结构 数据…...
第三章 图论 No.13拓扑排序
文章目录 裸题:1191. 家谱树差分约束拓扑排序:1192. 奖金集合拓扑序:164. 可达性统计差分约束拓扑序:456. 车站分级 拓扑序和DAG有向无环图联系在一起,通常用于最短/长路的线性求解 裸题:1191. 家谱树 119…...
喜报 | 擎创再度入围IDC中国FinTech 50榜单
8月16日,2023年度“IDC中国FinTech 50”榜单正式揭晓,擎创科技继2022年入选该榜单后,再次以创新者姿态成功入选,并以技术赋能业务创新,成为中国金融科技领域创新与活力的重要贡献者。 “IDC中国FinTech 50”旨在评选出…...
【C++ 记忆站】引用
文章目录 一、引用概念二、引用特性1、引用在定义时必须初始化2、一个变量可以有多个引用3、引用一旦引用一个实体,再不能引用其他实体 三、常引用四、使用场景1、做参数1、输出型参数2、大对象传参 2、做返回值1、传值返回2、传引用返回 五、传值、传引用效率比较六…...
Hlang--用Python写个编程语言-变量的实现
文章目录 前言语法规则表示次幂实现变量实现优先级实现步骤解析关键字语法解析解释器总结前言 先前的话,我们终于是把我们整个架子搭起来了,这里重复一下我们的流程,那就是,首先,我们通过解析文本,然后呢遍历文本当中的我们定义的合法关键字,然后呢,把他们封装为一个T…...
多维时序 | MATLAB实现PSO-CNN-BiLSTM多变量时间序列预测
多维时序 | MATLAB实现PSO-CNN-BiLSTM多变量时间序列预测 目录 多维时序 | MATLAB实现PSO-CNN-BiLSTM多变量时间序列预测基本介绍模型特点程序设计参考资料 基本介绍 本次运行测试环境MATLAB2021b,MATLAB实现PSO-CNN-BiLSTM多变量时间序列预测。代码说明:…...
实现Java异步调用的高效方法
文章目录 为什么需要异步调用?Java中的异步编程方式1. 使用多线程2. 使用Java异步框架 异步调用的关键细节结论 🎉欢迎来到Java学习路线专栏~实现Java异步调用的高效方法 ☆* o(≧▽≦)o *☆嗨~我是IT陈寒🍹✨博客主页:IT陈寒的博…...
批量提取文件名到excel,详细的提取步骤
如何批量提取文件名到excel?我们的电脑中可能存储着数量非常多的电子文件,现在需要快速将这些文件的名称全部提取到Excel中。虽然少量数据可以通过复制粘贴的方式轻松完成,但是对于上万个数据而言,复制粘贴都是行不通的࿰…...
C#中的泛型约束可以用在以下几个地方?
1.泛型类型参数: 在定义泛型类型或泛型方法时,可以使用泛型约束来限制泛型类型参数的类型。这可以确保类型参数满足特定的条件,从而在编译时捕获错误并提供更安全和可靠的代码。 public class MyClass<T> where T : IComparable<T&…...
Linux Vm上部署Docker
创建ubutu虚拟机并远程连接, 参考 https://blog.csdn.net/m0_48468018/article/details/132267096 在终端中切换到root用户,并安装docker服务 2.1 切换到root用户 sudo su2.2 安装docker服务 , 参考 https://docs.docker.com/engine/install/ubuntu/ …...
ubuntu bind dns服务配置
sudo apt-get install bind9 内网搭建DNS服务器,大多数是解析纯内网地址使用。但是偶尔也需要解析外网的地址,所以我们可以配置DNS没有添加A记录的URL时,forward到外网DNS服务器或者内网的其他DNS服务器解析。 打开配置文件: sud…...
安卓的代码加固和其他安全问题
文章目录 安卓加固apk文件结构dex加固过程 其它安全问题 安卓加固 从App的加固技术来看:主流分为dex加密和so加密,目前来看保护dex文件更为重要,因为dex反编译后的java代码可读性更强。 android-ndk: Native Development Kit 官网解释:这套工具使您能在 Android 应…...
关于Linux Docker springboot jar 日志时间不正确 问题解决
使用Springboot项目的jar,制作了一个Docker镜像,启动该镜像后发现容器和容器中的Springboot 项目的日志时间不正确。 解决 查看容器时间命令为: docker exec 容器id date 1. 容器与宿主机同步时间 在启动镜像时候把操作系统的时间通过&q…...
提高批量爬虫工作效率
大家好!作为一名专业的爬虫程序员,我今天要和大家分享一些关于提高批量爬虫工作效率的实用技巧。无论你是要批量采集图片、文本还是视频数据,这些经验都能帮助你在大规模数据采集中事半功倍。废话不多说,让我们开始吧!…...
E96系列电阻阻值和代码、乘数对照表
1、为什么要用代码表示? 0805封装还可以简单易懂写下四位丝印,比如10K的1002,但0603的封装上面再想写下四位丝印就没空间了,就算写了也不容易看不清。 2、E96系列电阻阻值和代码、乘数对照表 下面是E96系列的对照表,…...
基于CentOS7.9安装部署docker(简洁版)
安装部署 1基于官方脚本安装(不推荐 不能自行选择版本) 官方文档:https://docs.docker.com/engine/install/centos/ 2 使用yum安装 阿里云文档:docker-ce镜像_docker-ce下载地址_docker-ce安装教程-阿里巴巴开源镜像站 # ste…...
MySQL常用练手题目
数据库表名和字段设计 1.学生表 Student(s_id,s_name,s_birth,s_sex) 学生编号,学生姓名, 出生年月,学生性别 2.课程表 Course(c_id,c_name,t_id) 课程编号, 课程名称, 教师编号 3.教师表 Teacher(t_id,t_name) 教师编号,教师姓名 4.成绩表 Score (s_id,c_id,s_score) 学生编号…...
Oracle字段长度不足位数补零
Oracle字段长度不足位数补零 有时候从数据库中取出的月份值是1,而不是01,该怎么办呢 SELECTLPAD( CODE_MONTH, 2, 0 ) FROMtb_cube_TY001 WHERECODE_BM_MEATYPE TY20 AND code_measure MYLX01 AND code_month <> ~ AND CODE_ENTITY 01A AND…...
<数据结构与算法>二叉树堆的实现
目录 前言 一、树的概念及结构 1 树的概念 2 树的相关概念 二、二叉树的概念及结构 1.二叉树的概念 2. 特殊的二叉树 3. 二叉树的性质 4.二叉树的存储结构 三、二叉树的顺序结构及实现 1.堆的性质 2.堆的插入 3.堆的实现 堆的结构体 HeapInit 初始化 HeapPush 插入 HeapPop 删…...
FPGA:RS编码仿真过程
FPGA:RS编码仿真过程 RS码是一种纠错性能很强的线性纠错码,能够纠正随机错误和突发错误。RS码是一种多进制BCH码,能够同时纠正多个码元错误。 之前已经记录了在MATLAB中进行rs编解码的过程,现在利用FPGA的IP核实现RS编码的过程&…...
RocketMQ 5.0 架构解析:如何基于云原生架构支撑多元化场景
作者:隆基 本文将从技术角度了解 RocketMQ 的云原生架构,了解 RocketMQ 如何基于一套统一的架构支撑多元化的场景。 文章主要包含三部分内容。首先介绍 RocketMQ 5.0 的核心概念和架构概览;然后从集群角度出发,从宏观视角学习 R…...
Android su
1. userdebug和user版本 2. 关闭selinux system/core diff --git a/init/selinux.cpp b/init/selinux.cpp index 5a0255acd..787917274 100644--- a/init/selinux.cpp b/init/selinux.cpp -104,6 104,8 EnforcingStatus StatusFromCmdline() { } bool IsEnforcing() { …...
微信小程序真机调试异常cmdId 1006, errCode-50011-已解决
cmdId 1006, errCode-50011 起因 小程序在模拟器上预览没问题,真机调试和体验版首页打不开,点展开显示cmdId 1006, errCode-50011 解决 查了下1006, 说是广告, 我没接广告,这个也不是错误码 1006广告组件被驳回你的广告正在被审核,无法展现广告后来找到几个类似的帖子…...
36.SpringMVC视图
SpringMVC视图 SpringMVC中的视图是View接口,视图的作用渲染数据,将模型Model中的数据展示给用户 SpringMVC视图的种类很多,默认有转发视图(InternalResourceView)和重定向视图(RedirectView) 配置视图: 当工程引入jstl的依赖&a…...
LeetCode 热题 100(四):48. 旋转图像、240. 搜索二维矩阵 II、234. 回文链表
一.48. 旋转图像 题目要求:就是一个顺时针的旋转过程。 思路:观察矩阵,得出翻转前第i行的第J个元素 等于 翻转后倒数第i列的第J个元素,举例说明,第1行第2个元素为“2”,翻转后到了 倒数第1列的第2个元素…...
Qt 编译使用Bit7z库接口调用7z.dll、7-Zip.dll解压压缩常用Zip、ISO9660、Wim、Esd、7z等格式文件(二)
修改qt5 7zip源码编译及使用(含展示进度)一文中的封装类ZlibHelper代码类,继承多线程,使解压,压缩时进度条不影响界面,同时添加压缩文件中的文件预览功能,建议直接看源码 导读 相关代码内容扩展预览内容时获取文件修改…...
224、仿真-基于51单片机音乐播放器流水灯控制Proteus仿真设计(程序+Proteus仿真+原理图+程序流程图+元器件清单+配套资料等)
毕设帮助、开题指导、技术解答(有偿)见文未 目录 一、硬件设计 二、设计功能 三、Proteus仿真图 四、原理图 五、程序源码 资料包括: 需要完整的资料可以点击下面的名片加下我,找我要资源压缩包的百度网盘下载地址及提取码。 方案选择 单片机的选…...
虹科展会 | 自动驾驶展品:上海汽车测试展精彩回顾
2023年8月9日-8月11日,上海国际汽车测试及质量监控博览会在上海圆满落幕。本次展会提供了一个了解最新汽车测试及质量监控技术、产品和趋势的机会,同时也是汽车测试及质量监控领域的专业人士和业内人士的重要交流平台。 雅名特是虹科旗下子公司ÿ…...
Unity自定义脚本的 初始模版
参考博主:Unity修改创建的脚本模板,Unity脚本模板路径_unity hub 怎么改脚本模板_先生沉默先的博客-CSDN博客 【100个 Unity实用技能】 ☀️ | Unity自定义脚本的初始模版_unity 模板脚本_呆呆敲代码的小Y的博客-CSDN博客 一,将脚本放到Ed…...
vue3中使用第三方插件mitt实现任意组件通讯
vue3中使用第三方插件mitt实现任意组件通讯 组件通讯是vue3组合式开发的核心之一,现在我在写代码时,一个组件的代码超过了200行,基本都会拆分组件。组件拆分后,组件之间的通讯就很重要,总结了一下,目前有这…...
(五)、深度学习框架源码编译
1、源码构建与预构建: 源码构建: 源码构建是通过获取软件的源代码,然后在本地编译生成可执行程序或库文件的过程。这种方法允许根据特定需求进行配置和优化,但可能需要较长的时间和较大的资源来编译源代码。 预构建: 预…...
迈向通用听觉人工智能!清华电子系、火山语音携手推出认知导向的听觉大语言模型SALMONN
日前,清华大学电子工程系与火山语音团队携手合作,推出认知导向的开源听觉大语言模型SALMONN (Speech Audio Language Music Open Neural Network)。 大语言模型 SALMONN LOGO 相较于仅仅支持语音输入或非语音音频输入的其他大模型,SALMONN对…...