Update README

This commit is contained in:
Łukasz Moskała 2024-07-07 18:57:06 +02:00
parent 799ea9a90a
commit c9875e24f3

View file

@ -1,7 +1,11 @@
# Libguestd # Libguestd
This is supposed to be a library that helps with operations on qemu-guest-agent. This is supposed to be a library that helps with operations on qemu-guest-agent.
You need to connect to libvirt daemon on your own. You need to connect to libvirt daemon on your own. Take a look at `cmd/libguestd-cli` for example.
Keep in mind that not all implementations of qemu-guest-agent support every option.
This library makes effort to check if required features are supported before trying to execute something.
Some features may be intentionally disabled (see security chapter) or may not be supported on target platform.
This library implements some(most?) functions described in [QEMU Guest Agent Protocol Reference](https://qemu-project.gitlab.io/qemu/interop/qemu-ga-ref.html). This library implements some(most?) functions described in [QEMU Guest Agent Protocol Reference](https://qemu-project.gitlab.io/qemu/interop/qemu-ga-ref.html).
@ -31,8 +35,7 @@ Not implemented but I want to implement it:
# CLI tools # CLI tools
Alongside this library, a few tools are provided. You can build them simply by executing `make` in cloned repo.
Alongside this library, a few tools are provided:
## cp2guest ## cp2guest
Allows copying files from/to guest using qemu guest agent. Allows copying files from/to guest using qemu guest agent.
@ -63,7 +66,7 @@ This tool implements most functions of this library.
Since usage should be self-explainatory, I will just leave a few example commands here: Since usage should be self-explainatory, I will just leave a few example commands here:
```shell ```shell
./bin/libguestd-cli -domain guesttools -username root -password 12345 ./bin/libguestd-cli -domain guesttools -username root -password 12345
./bin/libguestd-cli -domain guesttools -username root -sshkey-add 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAID8qp7UQUINxLXog/sFgRKDtddiJHzkypyB7/OlmUbK2 lmoskala'\ ./bin/libguestd-cli -domain guesttools -username root -sshkey-add 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAID8qp7UQUINxLXog/sFgRKDtddiJHzkypyB7/OlmUbK2 lmoskala'
./bin/libguestd-cli -domain guesttools -username root -sshkey-remove 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAID8qp7UQUINxLXog/sFgRKDtddiJHzkypyB7/OlmUbK2 lmoskala' ./bin/libguestd-cli -domain guesttools -username root -sshkey-remove 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAID8qp7UQUINxLXog/sFgRKDtddiJHzkypyB7/OlmUbK2 lmoskala'
./bin/libguestd-cli -domain guesttools -username root -listkeys ./bin/libguestd-cli -domain guesttools -username root -listkeys
./bin/libguestd-cli -domain guesttools -username root -fsinfo ./bin/libguestd-cli -domain guesttools -username root -fsinfo
@ -71,7 +74,6 @@ Since usage should be self-explainatory, I will just leave a few example command
# Security # Security
Some distributions (rocky linux for example) disables some functionalities of qemu-guest-agent by default. Some distributions (rocky linux for example) disables some functionalities of qemu-guest-agent by default.
Most notably, all operations involving files and commands. Most notably, all operations involving files and commands. Which actually seems like a good idea.
Also, selinux is known to cause problems when manipulating SSH keys: [bug report](https://bugzilla.redhat.com/show_bug.cgi?id=1917024) Also, selinux is known to cause problems when manipulating SSH keys: [bug report](https://bugzilla.redhat.com/show_bug.cgi?id=1917024)