Skip to main content

A command-line tool for managing QEMU virtual machines created through Syzkaller's create-image.sh.

Project description

syzqemuctl

A command-line tool for managing QEMU virtual machines created through Syzkaller's create-image.sh.

Features

  • Easy VM creation and management
  • Automated template image creation using syzkaller's create-image.sh
  • SSH and file transfer support
  • Command execution in VMs
  • Screen session management for VM console access

Installation

pip install syzqemuctl

Requirements

  • Python 3.8+
  • QEMU
  • screen
  • SSH client

Usage

  1. Initialize syzqemuctl:
syzqemuctl init --images-home /path/to/images
  1. Create a new VM:
syzqemuctl create my-vm
  1. Run the VM:
syzqemuctl run my-vm --kernel /path/to/kernel
  1. Check VM status:
syzqemuctl status my-vm
  1. Copy files to/from VM:
syzqemuctl cp local-file my-vm:/remote/path  # Copy to VM
syzqemuctl cp my-vm:/remote/file local-path  # Copy from VM
  1. Execute commands in VM:
syzqemuctl exec my-vm "uname -a"
  1. Stop the VM:
syzqemuctl stop my-vm
  1. List all VMs:
syzqemuctl list

Configuration

The configuration file is stored in ~/.config/syzqemuctl/config.json. It contains:

  • Images home directory path
  • Default VM settings

License

MIT License

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

syzqemuctl-0.1.0.tar.gz (10.3 kB view details)

Uploaded Source

File details

Details for the file syzqemuctl-0.1.0.tar.gz.

File metadata

  • Download URL: syzqemuctl-0.1.0.tar.gz
  • Upload date:
  • Size: 10.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.8.10

File hashes

Hashes for syzqemuctl-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2ce9a579f25ecaef9f2caab2d0dbdad2ae275b7c24ee45522d6594c23b74dd66
MD5 b36eb234521b84d0e5c28ed724ecc34b
BLAKE2b-256 5978b3c9750070b9513c397fdd098a4a16a46b1d49d36c98270c9b56c7e30f2f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page