• 修改rbd指定位置的数据


    标签(空格分隔): ceph,ceph实验



    我们通过查看index为0x01的小4M文件,得知了file2.txt这个文件内容在这个4M内保存的位置为0x9000,因为0x01前面还有一个4M文件即0x00,那么这个file2.txt在整个RBD内的偏移量为:4MB+0x9000B=0x400,000B+0x9000B=0x409000B=4231168
    也就是说保存在/dev/rbd0的偏移量为0x409000的位置,这时候用dd工具,直接向这个位置写入一个Ceph,再查看file2.txt的内容,果然,被修改了!

    [root@node3 ~]# cat foo/file2.txt 
    222222222222222222222222222222222222222222
    
    [root@node3 ~]# echo Ceph>ceph
    [root@node3 ~]# dd if=ceph  of=/dev/rbd0 seek=4231168 oflag=seek_bytes
    记录了0+1 的读入
    记录了0+1 的写出
    5字节(5 B)已复制,0.0422493 秒,0.1 kB/秒
    
    [root@node3 ~]# hexdump -Cv /dev/rbd0 -n 100 -s 0x409000
    00409000  43 65 70 68 0a 32 32 32  32 32 32 32 32 32 32 32  |Ceph.22222222222|
    00409010  32 32 32 32 32 32 32 32  32 32 32 32 32 32 32 32  |2222222222222222|
    00409020  32 32 32 32 32 32 32 32  32 32 0a 00 00 00 00 00  |2222222222......|
    00409030  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00409040  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00409050  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00409060  00 00 00 00                                       |....|
    00409064
    [root@node3 ~]# sync && echo 1 > /proc/sys/vm/drop_caches
    [root@node3 ~]# cat foo/file2.txt 
    Ceph
    2222222222222222222222222222222222222
    

    参考文献:

    大话Ceph--RBD那点事儿

  • 相关阅读:
    tf.tile()函数
    分类任务常用的一些tricks
    视频编码ffmpeg
    stylegan笔记(网络结构,基础模型等)progan
    torch.clamp()函数
    tf.identity op tensorflow计算图节点
    mmcv mmaction mmclassification
    Spring.Day10.事务控制
    Spring.Day07.拦截器 (Day06为综合练习)
    Spring.Day05.JdbcTemplate
  • 原文地址:https://www.cnblogs.com/sisimi/p/7766932.html
Copyright © 2020-2023  润新知