dd命令

《30天自制操作系统》Day01

穿精又带淫゛_ 提交于 2020-04-05 17:54:05
我宣布,从今天开始,本懒狗正式踏入自制操作系统的大坑之中,内容将使用较现代的新工具和新思路来编写,会不定期更新(谁让我懒呢...) 当然,这个系列不会涉及太多理论,主要以我自己的实践过程为主,看理论请看书。 可以在 GitHub 跟进我的学习实践进度... 1. 工具准备 作者使用的工具,并不是我熟悉的,也不一定是最好的解决方案。 对于 16进制编辑器 ,你可以选用 WinHex ,我将采用开源免费的 wxMEdit : 文本编辑器 我首选 Visual Studio Code ,你可以选择自己喜欢的文本编辑器。 虚拟机 的话,你可以使用 Virtual Box 或者 VMware 。我将使用VMware Workstation 14,因为它更加强大。 汇编 的话,还是老老实实采用作者的 nask.exe 吧,我们并不需要自己写一个汇编器。 我们还需要一个 Bash环境 ,你可以选择 Git 的Bash,我这里使用 Cmder 。 2. 以16进制方式编辑image映像文件 2.1. Bash环境,dd命令,生成全0的image文件 软盘规定大小必须为 1440 KB ,也就是 1474560 字节(1440 * 1024 Bytes , 1 KB = 1024 Bytes )。 我们要制作的img文件中,由于只显示 hello,world ,所以很多空间中的值都是 0 。

Linux dd命令制作U盘系统启动盘

我是研究僧i 提交于 2020-03-14 16:48:54
dd命令是用来拷贝文件的命令,它可以自动转换成对应的格式。有些人玩树莓派的时候,也是用dd命令烧写系统的,例: $ sudo dd bs=4M if=~/raspberrypi/2014-09-09-wheezy-raspbian.img of=/dev/sdb && sync dd命令简单用法就是这样,我们还可以用它烧写光盘和做其他系统的启动U盘。 玩树莓派时烧写的文件是img格式的系统镜像,而我们要制作Fedora等linux发行版通常是iso格式的文件,不要紧,formatting的问题就交给dd命令吧。 先从磁盘使用信息中找到挂载的U盘信息 插入U盘前: $ df -h 插入U盘后: $ df -h 最后一行就是U盘的挂载信息。 解挂载U盘 $ umount /dev/sdb1 使用dd命令烧写 $ sudo dd bs=4M if=~/kali-linux-2.0-amd64.iso of=/dev/sdb && sync 注意,dd命令中的目标是sdb,没有标号。 来源: oschina 链接: https://my.oschina.net/u/168814/blog/508154

Linux 文件系统挂载

廉价感情. 提交于 2020-03-03 20:12:41
文件系统挂载简介 磁盘分区和格式化完成后,磁盘分区要想能够使用,就需要挂载,在挂载某个分区前需要先建立一个挂载点 挂载:将新的文件系统关联至当前根文件系统 卸载:将某文件系统与当前根文件系统的关联关系移除;卸载时设备没有进程在使用 挂载点:作为要挂载文件系统的访问入口;挂载点事先必须存在;不会被进程使用到的目录;挂载点下原有文件将会被临时隐藏 文件系统挂载管理工具 mount  不跟任何参数显示当前系统已经挂载的设备及挂载点   cat /proc/mounts 显示内核中挂载的设备,mount命令就是去读取该文件显示出来   cat /etc/mtab mount命令去挂载和卸载的操作信息会记录到该文件,也可以显示系统挂载的设备 mount [options] -t FSTYPE -o [option] 设备名称 挂载点 [options] 命令选项   -n        挂载后不更新操作记录到/etc/mtab文件   --bind dir1 dir2 将dir1挂载到dir2上,使得dir2也能访问dir1的文件(绑定某个目录到另外一个目录)   -t FSTYPE     指定挂载的文件系统类型   -r        只读挂载   -w        读写挂载   -L LABLE     指定卷标名,用卷标名字挂载;也可以使用LABLE="lable"   -U

dd命令测试linux磁盘读写速度

别等时光非礼了梦想. 提交于 2020-02-05 06:48:45
dd 是 Linux/UNIX 下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。 dd 命令通用语法格式如下: dd if=path/to/input_file of=/path/to/output_file bs=block_size count=number_of_blocks 命令简介 主要选项(指定数字的地方若以下列字符结尾乘以相应的数字: b=512, c=1, k=1024, w=2, xm=number m): if=file                 输入文件名,缺省为标准输入。 of=file                 输出文件名,缺省为标准输出。 ibs=bytes                一次读入 bytes 个字节(即一个块大小为 bytes 个字节)。 obs=bytes                一次写 bytes 个字节(即一个块大小为 bytes 个字节)。 bs=bytes                 同时设置读写块的大小为 bytes ,可代替 ibs 和 obs 。 cbs=bytes                一次转换 bytes 个字节,即转换缓冲区大小。 skip=blocks               从输入文件开头跳过 blocks 个块后再开始复制。 seek

dd测试硬盘性能

北城以北 提交于 2020-02-05 06:47:23
下面直接介绍几种常见的DD命令,先看一下他的区别~ dd bs=64k count=4k if=/dev/zero of=test dd bs=64k count=4k if=/dev/zero of=test; sync dd bs=64k count=4k if=/dev/zero of=test conv=fdatasync dd bs=64k count=4k if=/dev/zero of=test oflag=dsync 这四条DD命令区别在于内存中写缓存的处理方式。 1. dd bs=64k count=4k if=/dev/zero of=test   没有加任何参数,dd默认的方式不包括“同步(sync)”命令。也就是说,dd命令完成前并没有让系统真正把文件写到磁盘上。所以以上命令只是单纯地把这128MB的数据读到内存缓冲当中(写缓存[write cache])。所以你得到的将是一个超级快的速度。因为其实dd给你的只是读取速度,直到dd完成后系统才开始真正往磁盘上写数据,但这个速度你是看不到了。所以如果这个速度很快,没有什么作用。 实际运行结果: 268435456 bytes (268 MB) copied, 1.3529 seconds, 198 MB/s 2. dd bs=64k count=4k if=/dev/zero of=test; sync  

dd测试硬盘性能

瘦欲@ 提交于 2020-02-05 06:47:09
下面直接介绍几种常见的DD命令,先看一下他的区别~ dd bs=64k count=4k if=/dev/zero of=test dd bs=64k count=4k if=/dev/zero of=test; sync dd bs=64k count=4k if=/dev/zero of=test conv=fdatasync dd bs=64k count=4k if=/dev/zero of=test oflag=dsync 这四条DD命令区别在于内存中写缓存的处理方式。 1. dd bs=64k count=4k if=/dev/zero of=test   没有加任何参数,dd默认的方式不包括“同步(sync)”命令。也就是说,dd命令完成前并没有让系统真正把文件写到磁盘上。所以以上命令只是单纯地把这128MB的数据读到内存缓冲当中(写缓存[write cache])。所以你得到的将是一个超级快的速度。因为其实dd给你的只是读取速度,直到dd完成后系统才开始真正往磁盘上写数据,但这个速度你是看不到了。所以如果这个速度很快,没有什么作用。 实际运行结果: 268435456 bytes (268 MB) copied, 1.3529 seconds, 198 MB/s 2. dd bs=64k count=4k if=/dev/zero of=test; sync  

Linux命令之7文件目录管理命令

♀尐吖头ヾ 提交于 2020-01-30 01:34:08
说在开头:文章是我通过查询资料后按照自己的理解总结出来的,所以如果有说法不对的地方,欢迎大佬指正~ 1.touch命令 touch命令用于创建空白文件或设置文件的时间,格式为: touch 【文件名】 //新建一个指定文件名的空白 文本文件 touch -a //仅修改“读取时间”(atime) touch -m //仅修改“修改时间”(mtime) touch -d //同时修改atime与mtime 这里说到的三个时间,其实和上一篇文章中stat命令中的那三个时间是一样的。 文件的读取时间(atime) 修改时间(mtime) 文件权限或属性的更改时间(ctime) 这个命令黑客经常使用,篡改完内容后再把时间改回去。 2.mkdir命令 mkdir命令用于创建空白的目录,格式为: mkdir 【目录名】 //创建空白目录 mkdir -p a/b/c //结合-p参数来递归创建出具有嵌套叠层关系的文件目录 3.cp命令 cp命令用于复制文件或目录,格式为: cp 【选项】 源文件 目标文件 cp命令的参数及其作用 参数 作用 -p 保留原始文件的属性 -d 若对象为“链接文件”,则保留该“链接文件”的属性 -r 递归持续复制(用于目录) -i 若目标文件存在则询问是否覆盖 -a 相当于-pdr(p、d、r为上述参数) 在Linux系统中,复制操作具体分为3种情况:

关于CTF中的一些图片隐写

感情迁移 提交于 2020-01-27 00:18:44
CTF中图片隐藏文件分离方法总结 前言 可以使用winhex之类的工具先行分析其是否为图片,可以看其头部信息,还有就是JPG图片有一个特性最后的应用数据块为FF E0 活着直接使用binwalk看看图片下有什么鬼玩意儿的。 binwalk分离 命令:binwalk -e 图片路径 foremost分离 foremost分离 命令:foremost 图片地址 #会在图片地址的目录下生成一个output的文件夹。输出到里面了。 dd分离 命令:dd if=要分离的图片名.jpg of=分离出来的图片名.jpg skip=偏移量 bs=1 图片隐藏flag怎么找 首先我们需要对图片进行分析,这里我们需要用到一个工具 binwalk ,想要了解这个工具可以参考这篇 Binwalk:后门(固件)分析利器 文章,以及 kali官方对binwalk的概述和使用介绍 。 这里我们就是最简单的利用,在binwalk后直接提供固件文件路径和文件名即可: binwalk carter.jpg 在得到隐藏信息之后我们下一步就是把另一张jpg分离出,以下讨论几种方法: (1)使用dd命令分离(linux/unix下) 我们可以使用dd命令分离出隐藏文件: dd if=carter.jpg of=carter-1.jpg skip=140147 bs=1 可以参考 dd命令详解 ,这里if是指定输入文件

Linux 命令 -- dd

倾然丶 夕夏残阳落幕 提交于 2019-12-16 16:35:01
linux dd 命令使用 转: 原文链接:https://blog.csdn.net/huangjingbin/article/details/24407061 sudo dd if=/dev/sd[x] of=/xxx.disk bs=512 conv=sync,notrunc 若要直接压缩: sudo dd if=/dev/sd[x] bs=512 conv=sync,notrunc | gzip > /mnt/xxx.disk.gz dd命令使用详解 1.命令简介 dd 的主要选项: 指定数字的地方若以下列字符结尾乘以相应的数字: b=512, c=1, k=1024, w=2, xm=number m if=file #输入文件名,缺省为标准输入。 of=file #输出文件名,缺省为标准输出。 ibs=bytes #一次读入 bytes 个字节(即一个块大小为 bytes 个字节)。 obs=bytes #一次写 bytes 个字节(即一个块大小为 bytes 个字节)。 bs=bytes #同时设置读写块的大小为 bytes ,可代替 ibs 和 obs 。 cbs=bytes #一次转换 bytes 个字节,即转换缓冲区大小。 skip=blocks #从输入文件开头跳过 blocks 个块后再开始复制。 seek=blocks #从输出文件开头跳过 blocks