Linux下就提供了非常简单且强大的dd命令,它可以拯救即将损坏磁盘的数据、远程备份或者进行完整的分区拷贝。 岩兔站整理了一下dd命令的简单用法,与大家分享一下。...注意:如果命令中包含dd,在执行之前一定要再次确认每一个字母,避免拼写出错。 基础语法 下面可以开始简单的试用一下dd命令。...使用dd命令时需要包含if=表示源磁盘,和of=表示目标磁盘。...# dd if=/dev/sda2 of=/home/partition2.img bs=4096 还原镜像 还原镜像也很简单,原理与创建镜像相同,只需颠倒if=和of=两个参数的内容即可,如: dd...有人说最妥善最简单的方法是用锤子抹盘。但这样做未免有点太浪费了,使用dd命令即可完全抹盘。
在众多磁盘性能测试工具中,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
一、测试写速度: 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 的问题。
作者 | zhuzhiqiang 来源 | v2ex.com/t/633650 昨天在v站上看到这个关于YYYY-MM-dd的使用而出现Bug的问题。
还记得去年分享过一篇日期格式化使用 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年呢?
这不,就有胖友聊到一个经典的“神坑”:错误使用 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 即可。 但是,仅仅这样就足够了吗?
磁盘操作(很危险请在虚拟机中学习操作) 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 # 卸载磁盘分区
/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问题)里提到过了,这里不再复述。
这种情况不建议直接做磁盘分区相关操作,建议重启后查看磁盘管理器再操作。 经验:在磁盘管理器界面,操作之前请刷新页面,这样可以降低误操作和出现异常的风险。...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=
另外格式化磁盘分区还有一个别的命令: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
除了中文翻译直接得到概念,别忘了,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
使用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方式访问物理机,来读取存放在移动硬盘上的备份文件 的。
在我们开始写脚本之前一定要事先理清楚要怎么去实现这个功能,包括用什么命令和命令的先后顺序。...最后发广播要用到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分区撑过
对新购的磁盘分区操作的时候没注意看序号、大小,误操作重置了老磁盘(弹窗的告警也忽视了) 上图服务器管理器那个界面的重置磁盘我验证了下,并不会清理底层数据,相当于执行了diskpart命令里的clean命令...v5.3.0.1066 x64英文版尝试找文件 使用软件的过程就不详述了,网上都有文档 同步最终结果:此种情况,用DiskGenius没找到文件,换R-Studio也没找到(可能是用的版本不合适,你如果遇到了类似误操作格式化的场景...,因此只能备份现场找数据恢复公司了 备份现场需要导出整盘底层块,即需要导出.raw文件,文件大小就是磁盘大小,一般有3种办法: 推荐第2种或第3种 ①用Windows dd命令导出块文件 http://...www.chrysocome.net/dd 不好的一点是,会出现“Error reading file: 1117 由于 I/O 设备错误,无法运行此项请求”,这个dd.exe命令十几年没更新过了 如果不想看到这句回显...,在命令结尾使用 2>nul 命令示例: cd "C:\Users\Administrator\Desktop\dd-0.6beta3" dd.exe if=\\.
视频上 我一般都是用浏览器看,很少下载app看,听音乐的话用的是QQ音乐,而且它有Linux版本,所以影音娱乐上完全满足我 工作上 WPS 有Linux版本,所以我的工作几乎可以满足,当然主要我的工作并不是专业性很强...下无法工作情况……比如某些厂家设备只能在Windows上使用、某些web插件必须在IE模式下…… 遇到必须在Windows上工作的时候,我会选择虚拟机……这样基本能满足我的短暂需求,而且现在的WPS for Linux...虽然只是简单的调试,但也得调不是,在windows上有 Photoshop ,在Linux中完全可以使用 GIMP 替代,基本上能满足我的需求(毕竟不专业嘛+哈哈) ---- 结语 很多人都会说,Linux
fdisk - 分析和操作磁盘分区表。 二、分区与挂载: fdisk - 创建、删除和调整分区。 mkfs - 创建文件系统。 mount - 挂载文件系统。 umount - 卸载文件系统。...dd - 复制文件和转换格式。 十、安全与加密: cryptsetup - 设置加密设备。 sfdisk - 磁盘分区备份与还原。
领取专属 10元无门槛券
手把手带您无忧上云