在众多磁盘性能测试工具中,dd 命令因其简单易用和易于获得而深受广大运维工程师的喜爱。在这篇文章中,我们将探讨如何将它与 hdparm 命令一起使用,快速有效地评估磁盘性能。...01 — 为什么选择dd 不久前,一个客户的数据库突然变得很慢,让我去优化,我使用 dd 命令进行了检查: 发现磁盘的读取速度低至 25.8 kB/s,显然数据库并不是瓶颈,而是存储系统出了故障。...这是使用dd进行测试的一个实际例子,这种测试在英文里叫sanity check,直译成测试存储是否神智清醒。...虽然 fio、orion 和 lometer 等专业磁盘测试工具提供了更全面的分析,但 dd 具有以下优势: 简单易用 Linux/Unix自带,不用另外安装。 功能简单,但大部分场景下够用。...警告: 避免使用 dd 直接写入块设备(例如:/dev/sda),因为它可能会擦除数据。
测试写速度: time dd if=/dev/zero of=/tmp/test bs=8k count=1000000 测试读速度: time dd if=/tmp/test of=/dev/null...bs=8k 测试读写速度: time dd if=/tmp/test of=/var/test bs=64k 参数说明: ①、time有计时作用,dd用于复制,从if读出,写到of; ②、if=/dev
作者 | zhuzhiqiang 来源 | v2ex.com/t/633650 昨天在v站上看到这个关于YYYY-MM-dd的使用而出现Bug的问题。
一、测试写速度: time dd if=/dev/zero of=/tmp/test bs=8k count=1000000 测试结果:565 MB/s 二、测试读速度: time dd if=/tmp.../test of=/dev/null bs=8k 测试结果:4.7GB/s 三、测试读写速度: time dd if=/tmp/test of=/var/test bs=64k 测试结果:387MB/s...四、参数说明 ①、time 有计时作用,dd 用于复制,从 if 读出,写到 of; ②、if=/dev/zero 不产生 IO,因此可以用来测试纯写速度; ③、同理 of=/dev/null 不产生
来源:zhuzhiqiang v2ex.com/t/633650 BUG 的表现 BUG 的原因 相关资源 ---- 昨天在v站上看到这个关于YYYY-MM-dd的使用而出现Bug的问题。
来源:zhuzhiqiang v2ex.com/t/633650 昨天在 v 站上看到这个关于 YYYY-MM-dd 的使用而出现 Bug 的问题。
这不,就有胖友聊到一个经典的“神坑”:错误使用 YYYY-MM-dd 格式化时间,导致生产翻车。 ? 带有马赛克的群聊 2....("YYYY-MM-dd 输出:" + dfYYYY.format(calendar.getTime())); // 演示 yyyy-MM-dd 输出示例 SimpleDateFormat...dfyyyy = new SimpleDateFormat("yyyy-MM-dd"); System.out.println("yyyy-MM-dd 输出:" + dfyyyy.format...翻车原因 为什么使用 YYYY-MM-dd 格式化 "2020-12-31" 时间时,打印的结果是错误 的 "2021-12-31" 呢?...怎么避免 问题的解决,非常容易,只要将 YYYY-MM-dd 修改成 yyyy-MM-dd 即可。 但是,仅仅这样就足够了吗?
还记得去年分享过一篇日期格式化使用 YYYY-MM-dd 的潜在问题(链接如下:http://blog.didispace.com/something-about-YYYY-MM-dd/)的文章不?...测试逻辑: 1、创建两个日期格式化,一个是出问题的YYYY-MM-dd,另一个是正确用法yyyy-MM-dd 2、分别去格式化两个不同的日期:2020年12月26日(周六),2020年12月27日(周日... } } 跑一下测试,可以看到输出结果如下: YYYY-MM-dd = 2020-12-26 yyyy-MM-dd = 2020-12-26 ======================== ...YYYY-MM-dd = 2021-12-27 yyyy-MM-dd = 2020-12-27 2020年12月26日(周六),两种格式化都正确 2020年12月27日(周日),YYYY-MM-dd出了问题...,年份到了2021年 问题原因 为什么YYYY-MM-dd格式化2020年12月27日的时候,会到2021年呢?
/s 165K/s Linux+本地回环+ipv6+动态缓冲区(ptmalloc) 1 8-16384字节 95%/100% 5.6MB/28MB 484MB/s 82.6K/s Linux+本地回环+...280MB 96MB/s 12K/s Linux+跨机器转发+ipv4 2(仅一个连接压力测试) 4KB 13%/100% 280MB 92MB/s 23K/s Linux+跨机器转发+ipv4 2(...1.59GB/s 102K/s Linux+共享内存 3(仅一个连接压力测试) 8KB 36%/70% 280MB 1.27GB/s 163K/s Linux+共享内存 3(仅一个连接压力测试) 4KB...40%/73% 280MB 1.30MB/s 333K/s Linux+共享内存 3(仅一个连接压力测试) 2KB 43%/93% 280MB 1.08GB/s 556K/s Linux+共享内存 3...这个可以用TLS机制实现,方法上一篇文章(Android和IOS的TLS问题)里提到过了,这里不再复述。
磁盘操作(很危险请在虚拟机中学习操作) dd操作 dd也可以用在备份硬件的引导扇区、获取一定数量的随机数据或者空数据等任务中 dd程序也可以在复制时处理数据,例如转换字节序、或在 ASCII 与 EBCDIC...dd默认从标准输入中读取, 并写入到标准输出中, 但可以用选项if(input file,输入文件)和of(output file,输出文件)改变。...# 查看硬盘分区表信息 $ sudo fdisk -l # 进入磁盘分区模式 $ sudo fdisk virtual.img 5 使用 losetup 命令建立镜像与回环设备的关联 $ sudo losetup...mkfs.ext4 -q /dev/mapper/loop0p6 8在/media目录下新建四个空目录用于挂载虚拟磁盘: $ mkdir -p /media/virtualdisk_{1..3} # 挂载磁盘分区.../dev/mapper/loop0p5 /media/virtualdisk_2 $ sudo mount /dev/mapper/loop0p6 /media/virtualdisk_3 # 卸载磁盘分区
这种情况不建议直接做磁盘分区相关操作,建议重启后查看磁盘管理器再操作。 经验:在磁盘管理器界面,操作之前请刷新页面,这样可以降低误操作和出现异常的风险。...if=/dev/vdb1 of=/dev/vdb2 相当于用vdb1覆盖vdb2,建议先umount再执行dd blkid查看效果:vdb2的分区类型会从ext4变成ext3,并且里面的文件会从222...diskgenius可以找回磁盘分区、分区里数据完好无损。...用diskgenius重新找了一遍,D盘又回到HD2下面了,然后再重启机器观察分区还在、数据还在。 不论用哪种软件,系统自带的还是第三方的,我的经验是打开后先刷新读到磁盘最新的状态。...第三方磁盘分区软件操作不当或软件本身存在bug可能会导致丢失分区表,这时再来看这个问题:如果磁盘显示未初始化,难道磁盘里面就真的没有数据吗?不尽然。
SReclaimable 是 Slab 的一部分 Slab 包括两部分,其中的可回收部分,用 SReclaimable 记录;而不可回收部分,用 SUnreclaim 记录 灵魂拷问 Buffers 能不能缓存磁盘中读的数据...,bo 变成了 98384 当 dd 命令结束后,cache 不再持续性增长,但块设备写还会持续一段时间,并且多次 I/O 写的结果加起来(bo 蓝色框),就是 dd 要写的 500M 的数据 磁盘写场景...前提条件 需要你的系统配置多块磁盘,并且磁盘分区 /dev/sdb1 还要处于未使用状态 如果你只有一块磁盘,千万不要尝试,否则将会对你的磁盘分区造成损坏 第二个终端运行 dd echo 3 > /proc.../sys/vm/drop_caches # 然后运行 dd 命令向磁盘分区 /dev/sdb1 写入 2G 数据 dd if=/dev/urandom of=/dev/sdb1 bs=1M count...读取文件 echo 3 > /proc/sys/vm/drop_caches # 然后运行 dd 命令读取文件数据 dd if=/dev/sda1 of=/dev/null bs=1M count=
前言缘由用@JsonFormat(pattern = "yyyy-MM-dd")注解,出生日期竟然年轻了一天艺术源于生活,bug源于开发。起因是艰苦奋战一个月,测试及验收都顺利通过,上线也稳稳的成功。...开始以为前端显示转化错误,但是发现是后台接口给到前端就已经错了;又怀疑数据库存储有问题,但又惨遭打脸,数据库对得很;又排查接口逻辑均没问题,挠头的同时发现了@JsonFormat(pattern = "yyyy-MM-dd...注解@JsonFormat(pattern = “yyyy-MM-dd“)@JsonFormat用来表示json序列化的一种格式或者类型@JsonFormat( pattern = "yyyy-MM-dd...@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8" )GMT(Greenwich Mean Time):格林尼治标准时间。...@JsonFormat(pattern = "yyyy-MM-dd", locale = "zh", timezone = "Asia/Shanghai")/** * 出生日期.
除了中文翻译直接得到概念,别忘了,Buffer 和 Cache 还是我们用 free 获得的指标。 用 man 命令查询 free 的文档,就可以找到对应指标的详细说明。...Slab 包括两部分,其中的可回收部分,用 SReclaimable 记录;而不可回收部分,用 SUnreclaim 记录。 好了,我们终于找到了这三个指标的详细定义。...如果你只有一块磁盘,千万不要尝试,否则将会对你的磁盘分区造成损坏。 如果你的系统符合标准,就可以继续在第二个终端中,运行下面的命令。...清理缓存后,向磁盘分区 /dev/sdb1 写入 2GB 的随机数据: 首先清理缓存 1$ echo 3 > /proc/sys/vm/drop_caches 然后运行dd命令向磁盘分区/dev/sdb1...清理缓存后,从磁盘分区 /dev/sda1 中读取数据,写入空设备: 首先清理缓存 1$ echo 3 > /proc/sys/vm/drop_caches 运行dd命令读取文件 1$ dd if=/dev
另外格式化磁盘分区还有一个别的命令:mkfs.ext4 /dev/sdb1 ,此命令和mke2fs -t ext4 /dev/sdb1 是一样的,同样的是将/dev/sdb1 磁盘分区格式化成ext4格式的文件系统...2.mke2fs -b 此选项可以指定块的大小,这个块就是格式化磁盘时分隔的一个一个的小块,例如我用ls -lh查看某个文件的大小显示的结果是1.3kb,但是用du -sh查看却是4kb,这就说明这个磁盘的块大小是...4.6 磁盘格式化(下) 3.mke2fs -m此选项可以指定某个磁盘分区的预留容量的大小。...blkid命令可以查看已格式化但未挂载的磁盘分区: 例如:blkid /dev/sdb1 注释:查看/dev/sdb1磁盘分区信息 ? ...dd命令是用来操作磁盘的 if是指定从哪里去读取 /dev/zero是Linux内核的造0器,可以产生源源不断的0 of是指定将0写入到哪个文件里 bs是指定每个块的大小 count是指定newdisk
这种识别码的独特性确保了每个磁盘分区或存储设备都有一个独一无二的标识,这对于在具有数百个驱动器的服务器管理中尤为重要。在Linux系统中,UUID常用于识别磁盘分区,帮助系统正确挂载和访问这些分区。...@starcto ~]# blkid/dev/vda1: UUID="f646340c-9b31-4fd5-8e5d-0b40734d8612" TYPE="xfs" /dev/vdb: UUID="dd6a9a3b...-5dd4-45d1-be1d-be7224635709" TYPE="xfs"# 查看Linux主机盘符[root@starcto ~]# lsblkNAME MAJ:MIN RM SIZE RO... for more info#UUID="f646340c-9b31-4fd5-8e5d-0b40734d8612" / xfs defaults 0 1UUID="dd6a9a3b...-5dd4-45d1-be1d-be7224635709"/monitor xfsdefaults02注:无论盘符如何变化,UUID都能保证系统内全局唯一,可以彻底规避主机在特定场景下重启,出现盘符不一致导致磁盘挂载失败的问题
在我们开始写脚本之前一定要事先理清楚要怎么去实现这个功能,包括用什么命令和命令的先后顺序。...最后发广播要用到wall命令 因为磁盘分区并不是只有一个,或许还会用到if条件判断以及循环。...这个时候我们的思路可以是这样: 1.先用grep等文本处理命令取出df中的百分比值 2.用中括号判断这些值这些值是否大于80 3.将大于百分之80的值对应的分区用wall进行广播 第二步,思考每一步会出现的问题和情况然后应对...,而考虑到还有inode则可以用if elif来判断。...[root@centos7 ~]# dd if=/dev/zero of=/boot/file bs=1M count=800 #这里我们可以用dd命令在/boot目录下写入一个文件把/boot分区撑过
视频上 我一般都是用浏览器看,很少下载app看,听音乐的话用的是QQ音乐,而且它有Linux版本,所以影音娱乐上完全满足我 工作上 WPS 有Linux版本,所以我的工作几乎可以满足,当然主要我的工作并不是专业性很强...下无法工作情况……比如某些厂家设备只能在Windows上使用、某些web插件必须在IE模式下…… 遇到必须在Windows上工作的时候,我会选择虚拟机……这样基本能满足我的短暂需求,而且现在的WPS for Linux...虽然只是简单的调试,但也得调不是,在windows上有 Photoshop ,在Linux中完全可以使用 GIMP 替代,基本上能满足我的需求(毕竟不专业嘛+哈哈) ---- 结语 很多人都会说,Linux
使用dd转换整个物理磁盘 dd转换磁盘 如图Figure-1所示,用dd命令将整个物理磁盘sda转换成raw格式的镜像文件 system.img,物理磁盘为500G,导出的文件大小约470G,大约花了4...Figure-2 启动虚拟机,查看磁盘 虚拟机系统后,使用VNC客户端访问虚拟机,fdisk -l 查看虚拟磁盘分区,如 Figure-3所示,与原来的物理磁盘一致。...Figure-3 使用clonezilla备份整个物理磁盘到文件 Clonezilla是一款克隆备份/还原的工具,由于不仅可以对整个磁盘或者某个分区进行备份, 更在于其能够读取原磁盘分区信息,以及只备份有效的数据...整个备份过程大约持续25分钟左右,生成的备份文件夹大小在50M(不压缩)左右,相比dd来说,效率提高了很多。Figure-20是备份完成后目标文件夹下的文件列表。...在虚拟机环境是用网络ssh方式访问物理机,来读取存放在移动硬盘上的备份文件 的。
查看系统信息 查看CPU信息: lscpu 查看内存信息: free -h 查看磁盘使用情况: df -h 查看磁盘分区信息: lsblk 查看所有已安装的软件包(可以结合 grep 查找特定包): dpkg...日志查看 查看系统日志: journalctl 查看指定日期的日志: journalctl --since "YYYY-MM-DD" --until "YYYY-MM-DD" 查看 syslog 文件:...时间和日期管理 查看当前时间和日期: date 修改系统时间: sudo date --set="YYYY-MM-DD HH:MM:SS" 查看时区: timedatectl 设置时区: sudo timedatectl...磁盘管理 查看磁盘分区: sudo fdisk -l 挂载磁盘: sudo mount /dev/sdX1 /mnt 卸载磁盘: sudo umount /mnt 14.
领取专属 10元无门槛券
手把手带您无忧上云