qemu

ceph rbd resize之后文件系统的调节

心不动则不痛 提交于 2020-02-29 02:43:05
###ceph的rbd是可以进行调节大小的,但是调节需要进行一些操作,否则你看不到调节之后的效果,等于没调节,因为rbd就相当一块硬盘,但是文件系统一经初始化,分派的总容量大小、块大小 inode数量就定了,再去调节,势必要对sb分区进行重新才可以。 ###当然调节的方法要看具体的文件系统才能判断使用相应的工具 ext4的 传送门 # rbd create --size 10000 test # rbd map test # mkfs.ext4 -q /dev/rbd1 # mount /dev/rbd1 /mnt # df -h /mnt Filesystem Size Used Avail Use% Mounted on /dev/rbd1 9.5G 22M 9.0G 1% /mnt # blockdev --getsize64 /dev/rbd1 10485760000 # rbd resize --size 20000 test Resizing image: 100% complete...done. # blockdev --getsize64 /dev/rbd1 20971520000 # resize2fs /dev/rbd1 resize2fs 1.42 (29-Nov-2011) Filesystem at /dev/rbd1 is mounted on

ubuntu虚拟机用KVM制作Openstack镜像

只谈情不闲聊 提交于 2020-02-27 01:20:43
1. 环境 Windows 10主机一台 安装VMware 15 安装ubuntu镜像18.04 在VMware虚拟机,处理器选项,勾选CPU虚拟化 2. unbutn安装 kvm sudo apt-get update sudo apt-get install qemu-kvm sudo apt-get install qemu sudo apt-get install virt-manager sudo apt-get install virt-viewer sudo apt-get install libvirt-bin sudo apt-get install bridge-utils 3. 验证kvm安装成功 验证下,终端键入‘kvm-ok’,出现下面的界面,就说明已经装好了 4. 安装虚拟机 终端键入“sudo virt-manager”,进入图形界面 5. 导出qcow2文件 虚拟机安装完成后,qcow2文件默认保存在/var/lib/libvirt/images下 由于安装选择磁盘原因,qcow2文件是选择磁盘的大小,所以需要进行压缩 由于kvm默认目录的权限问题,可以先把qcow2文件拷贝出来,然后再压缩 cp /var/lib/libvirt/images/centos7.0-docker-dns.qcow2 /opt/ sudo qemu-img

如何分析和解密已加密的路由器固件

邮差的信 提交于 2020-02-26 06:31:25
我们直奔主题!现在,查看你的路由器品牌及型号信息,然后去对应厂商的官方网站下载你路由器对应的固件。下载完成之后,把固件文件丢到binwalk里,这样我们就可以在QEMU中模拟路由固件了。此时,你将会看到如下图所示的画面: 发生了什么? 一般来说,每一个非binwalk友好的固件都要用不同的方法来进行分析,因此我们无法给大家提供一个针对所有类型加密固件的通用手把手教程。不过,我们将在这篇文章中给大家演示几种常见的固件分析场景,并提供一个处理这类加密固件的一般性指南。除此之外,沃恩还将提供一个解密D-Link DIR-882固件的示例。 加密固件的三种情形 解密固件最简单的方法就是在固件中寻找解密程序。那我们该怎么做呢?如果路由器可以解密新固件并进行更新,那么解密程序就肯定位于就固件镜像中的某个地方。如果你遇到的是加密固件,那你就可以访问厂商官网并寻找这个固件的旧版本,然后下载所有的旧版本固件并开始分析。 下面给出的是三种常见的固件发布场景。 场景1 设备固件在出场时未加密,也未包含任何解密程序。解密程序与较新版本(v1.1)中未加密版本的固件一起提供,以便将来进行加密固件更新。此后发布的固件为加密固件。 此时,我们可以从固件v1.1处获取解密程序,然后用它来解密最新版本的固件v1.2。 场景2 设备固件在原始版本中加密,厂商决定更改加密方案并发布一个未加密的转换版本v1.2

qemu trace使用

帅比萌擦擦* 提交于 2020-02-26 06:30:13
Qemu有自己的Trace框架并支持多个debug/trace后端包括:nop, dtrace, ftrace, log, simple, ust,可以帮助我们分析Qemu中的问题。关于这些backend的介绍,可以看这个链接: http://repo.or.cz/w/qemu/stefanha.git/blob_plain/refs/heads/tracing:/docs/tracing.txt,如果现有的trace point不能满足你的需求,里面还有介绍如何添加新的trace point。这篇文章主要介绍一下Qemu内嵌的一个backend:Simple trace的使用,它不需要安装任何其他软件就可以使用。 1)编译qemu时要enable trace backend ./configure --enable-trace-backends=simple 2)添加你想要trace的event $ cat /tmp/events virtio_blk_req_complete virtio_blk_handle_write 3)启动虚拟机 -trace events=/tmp/events,file=trace.bin 其中,在正常启动的的qemu程序中加入"-trace events=/tmp/events,file=trace.bin",其中/tmp

对kvm,qemu等的理解

时光怂恿深爱的人放手 提交于 2020-02-26 05:56:13
https://www.cnblogs.com/liuruolin/p/kvm.html 首先要理解什么是虚拟化 虚拟化技术 系统虚拟化是将底层物理设备与上层操作系统、软件分离的一种去耦合技术,在一台物理机器上逻辑的划分出多台机器。 • 虚拟化的目标是实现IT资源利用效率和灵活性的最大化 然后要了解Hypervisor hypervisor:一种运行在物理服务器和操作系统之间的中间层软件,可以允许多个操作系统和应用共享一套基础物理硬件。可以将hypervisor看做是虚拟环境中的“元”操作系统,可以协调访问服务器上的所有物理设备和虚拟机,所以又称为虚拟机监视器(virtual machine monitor)。hypervisor是所有虚拟化技术的核心,非中断的支持多工作负载迁移是hypervisor的基本功能。当服务器启动并执行hypervisor时,会给每一台虚拟机分配适量的内存,cpu,网络和磁盘资源,并且加载所有虚拟机的客户操作系统。 详细可见https://www.ibm.com/developerworks/cn/linux/l-hypervisor/,讲的很不错 开始说KVM kvm就是一种中间件,是一个linux的内核模块,将linux变成一个hypervisor,可以虚拟化cpu和内存,在系统需要虚拟化功能的时候,内核把kvm模块调入内存中运行

KVM虚拟化-qemu-kvm杂记

和自甴很熟 提交于 2020-02-26 05:30:59
一、安装KVM 1、VMware Workstation开启虚拟化功能 1.1 查看自己的物理CPU是否支持硬件辅助虚拟化 只要标记有vmx或svm,就说明支持硬件虚拟化 [root@node2 ~]# grep -E --color=auto "(vmx|svm)" /proc/cpuinfo flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni pclmulqdq vmx ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt xsave hypervisor lahf_lm arat epb pln pts dts tpr_shadow vnmi ept vpid fsgsbase smep flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat

基于 QEMU进行 STM32 仿真开发

给你一囗甜甜゛ 提交于 2020-02-22 15:51:57
背景 老师送给我的STM32的板子不小心给我坏了,现在疫情还没过去,为了复习巩固stm32有关的移植,只能先玩玩仿真了。 我们在这一讲主要以搭建环境为主。 host平台   :Ubuntu 16.04 QEMU 介绍 Qemu 是纯软件实现的虚拟化模拟器,几乎可以模拟任何硬件设备,我们最熟悉的就是能够模拟一台能够独立运行操作系统的虚拟机,虚拟机认为自己和硬件打交道,但其实是和 Qemu 模拟出来的硬件打交道,Qemu 将这些指令转译给真正的硬件。 正因为 Qemu 是纯软件实现的,所有的指令都要经 Qemu 过一手,性能非常低,所以,在生产环境中,大多数的做法都是配合 KVM 来完成虚拟化工作,因为 KVM 是硬件辅助的虚拟化技术,主要负责 比较繁琐的 CPU 和内存虚拟化,而 Qemu 则负责 I/O 虚拟化,两者合作各自发挥自身的优势,相得益彰。 QEMU 同时也是一个非常简单的虚拟机,给它一个硬盘镜像就可以启动一个虚拟机,如果想定制这个虚拟机的配置,比如用什么样的 CPU 啊、什么样的显卡啊、什么样的网络配置啊,指定相应的命令行参数就可以了。它支持许多格式的磁盘镜像,包括 VirtualBox 创建的磁盘镜像文件。它同时也提供一个创建和管理磁盘镜像的工具 qemu-img。QEMU 及其工具所使用的命令行参数,直接查看其文档即可。 QEMU 安装

redhat 7.6安装kvm

有些话、适合烂在心里 提交于 2020-02-20 18:08:46
安装 yum install qemu-kvm libvirt virt-install virt-manager openssh-askpass yum install qemu-kvm-tools 启动服务 systemctl start libvirtd 默认开机启动 systemctl enable libvirtd 安装完 virt-manager 启动kvm管理 新建虚拟机 选择本地镜像安装 准备iso系统包放在opt目录 手动写入路径和包名forward 开始安装 来源: https://www.cnblogs.com/MOMING95/p/12336444.html

Windows image 制作

半世苍凉 提交于 2020-02-15 06:48:21
本版本制作的windows 支持 feather: 1. Disk Bus=SCSI 2.Tunnel网络环境下自动配置MTU 3.动态修改密码 准备环境 1.windows iso : http://10.110.176.250:8080/os/iso/windows/cn_windows_server_2008_r2_standard_enterprise_datacenter_and_web_with_sp1_vl_build_x64_dvd_617396.iso 2.virtio driver for windows: https://fedoraproject.org/wiki/Windows_Virtio_Drivers 3.cloudbase-init for X64: https://www.cloudbase.it/downloads/CloudbaseInitSetup_Beta_x64.msi 4.qemu-guest-agent for windows: https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/latest-qemu-ga/ 5.cloudbase-init patch for set mtu: https://review.openstack.org/#/c

MIT-6.828-JOS-环境搭建

断了今生、忘了曾经 提交于 2020-02-15 04:03:30
MIT 6.828是操作系统中最经典的一门课程。完成所有的lab就相当于完成了一个迷你的操作系统。我跟的是2018年的课程,课程首页在 6.828课程官网 。当然所有资料都是英文的,所以难度也不低,这里推荐几本非常有用的参考书:《x86汇编语言-从实模式到保护模式》,《程序员的自我修养-链接、装载与库》,《深入理解计算机系统》,很多知识在这些书中都有提到,参考着看会有奇效。 概述 本文主要讲解实验前的环境搭建,主要分为两个部分,一个是x86模拟器QEMU的安装,另一个是编译工具链。参考资料: 官方文档 实验环境 我的机子装的win10的系统,现在win10支持 WSL ,在windows上也能享受到原生linux一样的体验。我一般用 Xshell 登陆本地WSL,体验很不错。 前期准备 首先从官网clone实验的框架代码到本地: git clone https://pdos.csail.mit.edu/6.828/2018/jos.git lab 编译工具链 编译工具链是一个工具集包括c编译器,汇编编译器,连接器。在命令行下执行 gcc -m32 -print-libgcc-file-name ,如果输出 /usr/lib/gcc/i486-linux-gnu/version/libgcc.a 或 /usr/lib/gcc/x86_64-linux-gnu/version/32